Share via


Azure AI Bot Service 中的網路隔離

從 2023 年 9 月 1 日起,強烈建議採用 Azure 服務標籤 方法來隔離網路。 DL-ASE 的使用率應僅限於高度特定的案例。 在生產環境中實作此解決方案之前,建議您諮詢您的支援小組以取得指引。

本文涵蓋 Azure Bot 及其相依服務的網路隔離概念。

您可能想要限制對私人網路的 Bot 存取。 在 Azure AI Bot Service 中執行這項操作的唯一方法是使用 Direct Line App Service 擴充功能。 例如,您可以使用 App Service 擴充功能來裝載公司內部 Bot,並要求使用者從公司網路存取 Bot。

如需如何在私人網路中設定 Bot 的詳細指示,請參閱如何使用 隔離的網路

如需支援網路隔離之功能的詳細資訊,請參閱:

功能 文章
Direct Line App Service 擴充功能 Direct Line App Service 擴充功能
Azure 虛擬網路 什麼是 Azure 虛擬網路?
Azure 網路安全性群組 網路安全性群組
Azure Private Link 和私人端點 什麼是私人端點?
Azure DNS 使用Azure 入口網站建立 Azure DNS 區域和記錄

使用私人端點

當您的 Bot 端點位於虛擬網路內,並在網路安全性群組中設定適當的規則時,您可以使用私人端點來限制對 Bot 應用程式服務的輸入和輸出要求存取。

私人端點可透過 Direct Line App Service 擴充功能在 Bot Service 中取得。 請參閱下列使用私人端點的需求:

  1. 活動必須從 App Service 端點來回傳送。

    App Service 延伸模組會與您的 Bot 端點 App Service 共置。 所有來自端點的訊息都是您虛擬網路的本機,且不會傳送至 Bot Framework 服務,直接連線到您的用戶端。

  2. 若要 讓使用者驗證 能夠運作,您的 Bot 用戶端必須與服務提供者通訊,例如 Microsoft Entra ID 或 GitHub,以及權杖端點。

    如果您的 Bot 用戶端位於虛擬網路中,您必須允許從虛擬網路內列出這兩個端點。 請透過 服務標籤 針對權杖端點執行此動作。 Bot 端點本身也需要存取權杖端點,如下所述。

  3. 使用 App Service 擴充功能時,您的 Bot 端點和 App Service 擴充功能必須將輸出 HTTPS 要求傳送至 Bot Framework 服務。

    這些要求適用于各種中繼作業,例如擷取 Bot 組態或從權杖端點擷取權杖。 若要加速這些要求,您必須設定及設定私人端點。

Bot Service 如何實作私人端點

有兩個主要案例會使用私人端點:

  • 讓您的 Bot 存取權杖端點。
  • 若要讓 Direct Line 通道延伸模組存取 Bot 服務。

私人端點 會將所需的服務投影 到您的虛擬網路中,使其可直接在您的網路內使用,而不需向網際網路公開您的虛擬網路,或允許列出任何 IP 位址。 透過私人端點的所有流量都會通過 Azure 內部伺服器,以確保您的流量不會外泄至網際網路。

服務會使用兩個子資源 BotToken ,將 專案服務到您的網路。 當您新增私人端點時,Azure 會為每個子資源產生 Bot 特定的 DNS 記錄,並在 DNS 區域群組中設定端點。 這可確保以相同子資源為目標之不同 Bot 的端點可以彼此區別,同時重複使用相同的 DNS 區域群組資源。

範例案例

假設您有一 個名為 SampleBot 的 Bot,以及對應的應用程式服務, SampleBot.azurewebsites.net 可作為此 Bot 的傳訊端點。 您可以在公用雲端的 Azure 入口網站 中,為 SampleBot 設定具有子資源類型的 Bot 私人端點 ,這會建立 DNS 區域群組,其中包含 A 對應至 SampleBot.botplinks.botframework.com 的記錄。 此 DNS 記錄會對應至虛擬網路中的本機 IP。 同樣地,使用子資源類型 Token 會產生端點 SampleBot.bottoken.botframework.com

A您所建立 DNS 區域中的記錄會對應至虛擬網路內的 IP 位址。 因此,傳送至此端點的要求是本機網路,而且不會違反網路安全性群組或 Azure 防火牆中限制來自您網路的輸出流量的規則。 Azure 網路層和 Bot Framework 服務可確保您的要求不會外泄至公用網際網路,並為您的網路維護隔離。