共用方式為


設定網路隔離

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

您可以將網路隔離新增至現有的 Direct Line App Service 擴充功能 Bot。 私人端點可讓您的網路隔離 Bot 與必要的 Bot Framework 服務通訊,讓 Bot 可以在受限於虛擬網路時正確執行。

若要將網路隔離新增至 Bot:

  1. 使用虛擬網路並設定網路來防止輸出流量。 此時,您的 Bot 將會失去與其他 Bot Framework 服務通訊的能力。
  2. 設定私人端點以還原連線。
  3. 重新開機您的應用程式服務,並在隔離的網路內測試 Bot。
  4. 停用 Bot 的公用網路存取。

必要條件

  • Azure 帳戶。 如果您還沒有帳戶,請在開始之前建立 免費帳戶
    • 具有建立 Azure 虛擬網絡 和網路安全性群組資源的訂用帳戶。
  • 運作中的 Direct Line App Service 擴充功能 Bot。
    • 您的 Bot 會使用適用于 C# 或 JavaScript 的 Bot Framework SDK 4.16 版或更新版本。
    • 您的 Bot 已啟用具名管道。
    • Bot 的 App Service 已啟用 Direct Line App Service 延伸模組。
  • 連線至 Bot Direct Line 用戶端的網路聊天控制項。

若要確認您現有的 Bot 已正確設定:

  1. 在瀏覽器中,開啟 Bot 的 Direct Line 用戶端端點。 例如: https://<your-app_service>.azurewebsites.net/.bot

  2. 確認頁面會顯示下列內容:

    {"v":"123","k":true,"ib":true,"ob":true,"initialized":true}
    
    • v 顯示 Direct Line App Service 延伸模組的組建版本。
    • k 表示延伸模組是否能夠從其組態讀取延伸模組金鑰。
    • 初始化 表示延伸模組是否能夠從 Azure AI Bot Service 下載 Bot 中繼資料。
    • ib 指出延伸模組是否能夠建立 Bot 的輸入連線。
    • ob 指出延伸模組是否能夠從 Bot 建立輸出連線。

建立虛擬網路

  1. 前往 Azure 入口網站
  2. 在與 Bot 相同的區域中建立 Azure 虛擬網絡 資源。
    • 這會同時建立虛擬網路和子網。
    • 請勿建立任何虛擬機器。
    • 如需一般指示,請參閱 使用 Azure 入口網站 建立虛擬網路。
  3. 開啟 Bot 的 App Service 資源,並啟用虛擬網路整合。
    • 使用上一個步驟中的虛擬網路和子網。
    • 如需一般指示,請參閱 在 Azure App 服務 中啟用虛擬網路整合。
  4. 建立第二個子網。 您稍後會使用第二個子網來新增私人端點。

拒絕來自您網路的輸出流量

  1. 開啟與您的第一個子網相關聯的網路安全性群組。
  2. 在 [設定] 下,選取 [輸出安全性規則]
    1. 在輸出安全性規則清單中,啟用 DenyAllInternetOutbound
  3. 移至 Bot 的 App Service 資源。
  4. 重新開機您的應用程式服務。

確認連線中斷

  1. 在不同的瀏覽器索引標籤中,開啟 Bot 的 Direct Line 用戶端端點。 例如: https://<your-app_service>.azurewebsites.net/.bot

  2. 確認頁面會顯示下列內容:

    {"v":"123","k":true,"ib":true,"ob":true,"initialized":false}
    

    的值 initialized 應該是 false ,因為您的應用程式服務和 App Service 擴充功能無法連線到其他 Bot Framework 服務來初始化本身。 您的 Bot 現在會在虛擬網路中隔離以進行輸出連線。

建立私人端點

  1. 前往 Azure 入口網站
  2. 開啟 Bot 的 Azure Bot 資源。
  3. 在 [設定 ] 下 ,選取 [ 網路 ]。
    1. 在 [ 私人存取] 索引標籤上,選取 [ 建立私人端點 ]。
      1. 在 [ 資源] 索引標籤上,針對 [目標子資源 ],從清單中選取 [Bot ]。
      2. 在 [ 虛擬網絡] 索引標籤上,選取您的虛擬網路和您建立的第二個子網。
      3. 儲存您的私人端點。

將私人端點新增至 Bot 的應用程式服務

  1. 開啟 Bot 的Azure App 服務資源。
  2. 在 [設定] 底下,選取 [設定]
    1. 在 [ 應用程式設定] 索引標籤上,選取 [ 新增應用程式設定 ]。
      1. 將 [名稱] 設定為 DirectLineExtensionABSEndpoint
      2. 將 [值] 設定 為私人端點 URL,例如 https://<your_azure_bot>.privatelink.directline.botframework.com/v3/extension
      3. 儲存新的設定。

重新開機您的應用程式服務,並確認已還原連線

  1. 重新開機 Bot 的應用程式服務。

  2. 在不同的瀏覽器索引標籤中,開啟 Bot 的 Direct Line 用戶端端點。 例如: https://<your-app_service>.azurewebsites.net/.bot

  3. 確認頁面會顯示下列內容:

    {"v":"123","k":true,"ib":true,"ob":true,"initialized":true}
    

    的值 initialized 應該是 true

  4. 使用連線至 Bot Direct Line 用戶端的網路聊天控制項,與私人網路內的 Bot 互動。

如果您的私人端點無法正常運作,您可以新增規則以允許輸出流量特別傳送至 Azure AI Bot Service。

注意

這可讓您的虛擬網路稍微隔離一點。

  1. 開啟與您的第一個子網相關聯的網路安全性群組。
  2. 在 [設定] 下,選取 [輸出安全性規則]
    1. 在輸出安全性規則清單中,啟用 AllowAzureBotService
  3. 移至 Bot 的 App Service 資源。
  4. 重新開機您的應用程式服務。

停用 Bot 的公用網路存取

您可以封鎖對 Azure AI Bot 服務的公用存取,並只允許透過私人端點進行存取。 您可以在 Azure 入口網站 中停用 Azure AI Bot Service 的網路存取。

提示

這會取消設定 Teams 頻道。 在 Azure 入口網站 中,沒有其他通道(除了 Direct Line) 可以混為一體或更新。

  1. 前往 Azure 入口網站
  2. 開啟 Bot 的 App Service。
  3. 停用公用網路存取。

其他資訊

虛擬網路設定

您有幾個選項可設定虛擬網路的 Bot。

  • 建立虛擬網路,然後在網路中啟用Azure App 服務。 這是本文中使用的選項。
  • 建立 App Service 環境,然後在環境中新增 App Service 方案。
  1. 建立虛擬網路。
  2. 啟用虛擬網路內的Azure App 服務整合。

這些是本文中使用的步驟,如建立虛擬網路 一節中所述

如需詳細資訊,請參閱 在 Azure App 服務 中使用Azure 入口網站 和 啟用虛擬網路整合來建立虛擬網路。