Izolacja sieci w usłudze Azure AI Bot Service
Od 1 września 2023 r. zdecydowanie zaleca się zastosowanie metody tagu usługi Platformy Azure na potrzeby izolacji sieci. Wykorzystanie biblioteki DL-ASE powinno być ograniczone do wysoce specyficznych scenariuszy. Przed wdrożeniem tego rozwiązania w środowisku produkcyjnym zalecamy skonsultowanie się z zespołem pomocy technicznej w celu uzyskania wskazówek.
W tym artykule opisano pojęcia związane z izolacją sieciową bota platformy Azure i jej usługami zależnymi.
Możesz ograniczyć dostęp do bota do sieci prywatnej. Jedynym sposobem, aby to zrobić w usłudze Azure AI Bot Service, jest użycie rozszerzenia usługi App Service direct line. Na przykład można użyć rozszerzenia usługi App Service do hostowania bota wewnętrznego firmy i wymagać od użytkowników dostępu do bota z sieci firmowej.
Aby uzyskać szczegółowe instrukcje dotyczące konfigurowania bota w sieci prywatnej, zobacz jak używać izolowanej sieci.
Aby uzyskać więcej informacji na temat funkcji obsługujących izolację sieci, zobacz:
Funkcja | Artykuł |
---|---|
Rozszerzenie usługi App Service direct line | Rozszerzenie usługi App Service direct line |
Azure Virtual Network | Co to jest usługa Azure Virtual Network? |
Sieciowe grupy zabezpieczeń platformy Azure | Sieciowe grupy zabezpieczeń |
Usługa Azure Private Link i prywatne punkty końcowe | Co to jest prywatny punkt końcowy? |
Usługa DNS platformy Azure | Tworzenie strefy i rekordu usługi Azure DNS przy użyciu witryny Azure Portal |
Korzystanie z prywatnych punktów końcowych
Jeśli punkt końcowy bota znajduje się w sieci wirtualnej i z odpowiednimi regułami ustawionymi w sieciowej grupie zabezpieczeń, możesz ograniczyć dostęp zarówno do żądań przychodzących, jak i wychodzących dla usługi app service bota przy użyciu prywatnego punktu końcowego.
Prywatne punkty końcowe są dostępne w usłudze Bot Service za pośrednictwem rozszerzenia usługi App Service direct line. Zapoznaj się z wymaganiami dotyczącymi używania prywatnych punktów końcowych poniżej:
Działania muszą być wysyłane do i z punktu końcowego usługi App Service.
Rozszerzenie usługi App Service znajduje się we współpracy z usługą aplikacji punktu końcowego bota. Wszystkie komunikaty do i z punktu końcowego są lokalne do sieci wirtualnej i docierają bezpośrednio do klienta bez wysyłania do usług Bot Framework.
Aby uwierzytelnianie użytkowników działało, klient bota musi komunikować się z dostawcą usług, takim jak Microsoft Entra ID lub GitHub, oraz punkt końcowy tokenu.
Jeśli klient bota znajduje się w sieci wirtualnej, musisz zezwolić na listę obu punktów końcowych z sieci wirtualnej. Zrób to dla punktu końcowego tokenu za pośrednictwem tagów usługi. Sam punkt końcowy bota wymaga również dostępu do punktu końcowego tokenu, jak opisano poniżej.
Dzięki rozszerzeniu usługi App Service punkt końcowy bota i rozszerzenie usługi App Service muszą wysyłać wychodzące żądania HTTPS do usług Bot Framework.
Te żądania dotyczą różnych operacji meta, takich jak pobieranie konfiguracji bota lub pobieranie tokenów z punktu końcowego tokenu. Aby ułatwić te żądania, należy skonfigurować i skonfigurować prywatny punkt końcowy.
Jak usługa Bot Service implementuje prywatne punkty końcowe
Istnieją dwa główne scenariusze, w których są używane prywatne punkty końcowe:
- Aby bot uzyskiwał dostęp do punktu końcowego tokenu.
- Rozszerzenie kanału Direct Line w celu uzyskania dostępu do usługi Bot Service.
Prywatne projekty punktów końcowych wymagały usług w sieci wirtualnej, dzięki czemu są one dostępne bezpośrednio w sieci bez uwidaczniania sieci wirtualnej w Internecie lub wyświetlania listy dozwolonych adresów IP. Cały ruch przez prywatny punkt końcowy przechodzi przez wewnętrzne serwery platformy Azure, aby upewnić się, że ruch nie wycieka do Internetu.
Usługa używa dwóch zasobów Bot
podrzędnych i Token
, aby usługa projektów do sieci. Po dodaniu prywatnego punktu końcowego platforma Azure generuje rekord DNS specyficzny dla bota dla każdego zasobu podrzędnego i konfiguruje punkt końcowy w grupie stref DNS. Dzięki temu punkty końcowe z różnych botów, które są przeznaczone dla tego samego zasobu podrzędnego, można odróżnić od siebie, ponownie wykorzystując ten sam zasób grupy stref DNS.
Przykładowy scenariusz
Załóżmy, że masz bota o nazwie SampleBot i odpowiadającą mu usługę app Service, SampleBot.azurewebsites.net
która służy jako punkt końcowy obsługi komunikatów dla tego bota.
Prywatny punkt końcowy dla usługi SampleBot jest konfigurowany przy użyciu typu Bot
zasobu podrzędnego w witrynie Azure Portal dla chmury publicznej, który tworzy grupę stref DNS z rekordem odpowiadającym A
SampleBot.botplinks.botframework.com
. Ten rekord DNS jest mapowy na lokalny adres IP w sieci wirtualnej. Podobnie użycie typu Token
zasobu podrzędnego generuje punkt końcowy . SampleBot.bottoken.botframework.com
Rekord A
w utworzonej strefie DNS jest mapowany na adres IP w sieci wirtualnej. Dlatego żądania wysyłane do tego punktu końcowego są lokalne w sieci i nie naruszają reguł w sieciowej grupie zabezpieczeń lub zaporze platformy Azure, które ograniczają ruch wychodzący z sieci. Warstwa sieciowa platformy Azure i usługi Bot Framework zapewniają, że żądania nie wyciekają do publicznego Internetu, a izolacja jest utrzymywana dla twojej sieci.