共用方式為


如何設定 Azure AI Foundry 的私人連結

使用 Foundry 專案時,您可以使用私人連結來保護與項目的通訊。 本文說明如何使用私人連結建立與專案的私人連線。

使用中樞型專案時,需要考慮兩個網路隔離層面:

  • 存取 Azure AI Foundry 中樞的網路隔離:本文章的重點。 它描述如何使用私人連結,建立與中樞及其默認資源的私人連線。
  • 中樞和專案中計算資源的網路隔離:這包括計算實例、無伺服器和受控在線端點。 如需詳細資訊,請參閱 設定 Azure AI Foundry 中樞的受控網路 一文。

Azure AI Foundry 中樞網路隔離的圖表。

您會在資源群組中取得數個中樞預設資源。 您必須設定下列網路隔離設定:

  • 停用中樞預設資源 (例如 Azure 儲存體、Azure Key Vault 和 Azure Container Registry) 的公用網路存取。
  • 建立中樞預設資源的私人端點連線。 您需要有預設儲存體帳戶的 blob 和檔案私人端點。
  • 如果您的記憶體帳戶是私人帳戶, 請指派角色 以允許存取。

先決條件

  • 您必須擁有現有的 Azure 虛擬網路,才能在其中建立私人端點。

    這很重要

    不建議針對 VNet 使用 172.17.0.0/16 IP 位址範圍。 這是 Docker 網橋網路內部部署所使用的預設子網範圍。

  • 在新增私人端點之前,請先停用私人端點的網路原則。

建立使用私人端點的 Foundry 專案

建立新專案時,請使用下列步驟來建立專案。

  1. Azure 入口網站搜尋 Azure AI Foundry ,然後選取 [ 建立資源]。

  2. 設定 [基本] 標籤 之後,請選取 [網絡] 標籤,然後選取 [已停用] 選項。

  3. [私人端點] 區段,選取 [+ 新增私人端點]。

  4. 完成表單以建立私人端點時,請務必:

    • [基本] 中,選取與虛擬網路相同的 區域
    • 從 [虛擬網絡] 窗體中,選取您想要連線的虛擬網路和子網。
  5. 繼續完成表單以建立專案。 當您到達 [ 檢閱 + 建立] 索引標籤時,請檢閱您的設定,然後選取 [ 建立 ] 以建立專案。

建立使用私人端點的中樞

如果您要建立新的中樞,請使用下列方法來建立中樞(Azure 入口網站或 Azure CLI)。 這兩種方法都需要現有的虛擬網路

備註

本文件中的資訊只是關於設定私人連結。 如需在入口網站中建立安全中樞的逐步解說,請參閱在 Azure 入口網站 中建立安全中樞。

  1. 從 Azure 入口網站搜尋 Azure AI Foundry。 從左側功能表中,選取 [AI 中樞],然後選取 [ + 建立 ] 和 [ 中樞]。

    Azure AI Foundry 入口網站的螢幕快照。

  2. 設定基本儲存頁籤之後,選取輸入存取頁籤,然後選取+ 新增。 出現提示時,輸入私人端點的 Azure 虛擬網路和子網數據。 選取 [區域] 時,請選取與您的虛擬網路相同的區域。

    已停用公用網路存取的輸入存取索引標籤螢幕快照。

  3. 選取 [ 輸出存取] 索引標籤,然後挑選最符合您需求的 [網络隔離 ] 選項。

    [建立中樞] 的螢幕快照,其中包含設定網路隔離信息的選項。

將私人端點新增至專案

  1. Azure 入口網站中,選取您的專案。

  2. 從頁面左側,選取 [ 資源管理]、[ 網络],然後選取 [ 私人端點連線 ] 索引標籤。選取 [+ 私人端點]。

  3. 完成表單以建立私人端點時,請務必:

    • [基本] 中,選取與虛擬網路相同的 區域
    • 從 [虛擬網絡] 窗體中,選取您想要連線的虛擬網路和子網。
  4. 將窗體填入您需要的任何其他網路組態之後,請使用 [檢閱 + 建立 ] 索引卷標來檢閱您的設定,然後選取 [ 建立 ] 以建立私人端點。

將私人端點新增至中樞

使用下列其中一個方法,將私人端點新增至現有的中樞:

  1. Azure 入口網站選取您的中樞。

  2. 從頁面左側,選取 [設定]、 [網络],然後選取 [ 私人端點連線 ] 索引標籤。選取 [+ 私人端點]。

    私人端點連線索引標籤的螢幕快照

  3. 完成表單以建立私人端點時,請務必:

    • [基本] 中,選取與虛擬網路相同的 區域
    • [資源] 中,選取 amlworkspace 作為 目標子資源
    • 從 [虛擬網絡] 窗體中,選取您想要連線的虛擬網路和子網。
  4. 將表單填寫您需要的其他網路配置之後,請使用 [檢閱 + 建立] 索引標籤來檢閱您的設定,然後選取 [建立] 以建立私有端點。

從項目移除私人端點

您可以移除專案的一或所有私人端點。 拿掉私人端點會從與端點相關聯的 Azure 虛擬網路中移除專案。 拿掉私人端點可能會防止專案存取該虛擬網路中的資源,或虛擬網路中的資源無法存取工作區。 例如,如果虛擬網路不允許存取公用網際網路或從公用網際網路存取。

警告

移除專案的私人端點 不會讓其可公開存取。 若要公開存取專案,請使用 啟用公用存取 一節中的步驟。

若要移除私人端點,請使用下列資訊:

  1. Azure 入口網站中,選取您的專案。
  2. 從頁面左側,選取 [ 資源管理]、[ 網络],然後選取 [ 私人端點連線 ] 索引標籤。
  3. 選取要移除的端點,然後選取 [移除]

移除私人端點

您可以移除中樞的一個或所有私人端點。 移除私人端點會將該端點所屬的中樞從 Azure 虛擬網路中移除。 移除私人端點可能會讓中樞無法存取該虛擬網路中的資源,或虛擬網路中的資源無法存取工作區。 例如,如果虛擬網路不允許存取公用網際網路或從公用網際網路存取。

警告

移除工作區的私人中樞並不會讓它可公開存取。 若要讓中樞可供公開存取,請使用 [啟用公用存取] 區段中的步驟。

若要移除私人端點,請使用下列資訊:

  1. Azure 入口網站選取您的中樞。

  2. 從頁面左側,選取 [設定]、[網络],然後選取 [私人端點連線] 索引標籤。

  3. 選取要移除的端點,然後選取 [移除]

    已選取私人端點的螢幕快照,其中已醒目提示 [移除] 選項。

啟用公用存取

在某些情況下,您可能想要允許某人透過公用端點連線到受保護的專案,而不是透過虛擬網路。 或者,您可能想要從虛擬網路移除專案,並重新啟用公用存取。

這很重要

啟用公用存取並不會移除任何存在的私人端點。 私人端點連接到的虛擬網路背後元件之間的所有通訊,仍會受到保護。 除了透過任何私人端點的私人存取之外,它只允許公用存取專案。

  1. Azure 入口網站中,選取您的專案。

  2. 從頁面左側,選取 [資源管理]、[ 網络],然後選取 [ 防火牆和虛擬網络] 索引標籤

  3. 選取 [所有網络],然後選取 [ 儲存]。

    防火牆和虛擬網路索引卷標的螢幕快照,其中已選取 [所有網络] 選項。

啟用公用存取

在某些情況下,您可能想要允許某人透過公用端點 (而不是透過虛擬網路) 連接到您的安全中樞。 或者,您可能想要從虛擬網路中移除工作區,然後重新啟用公用存取。

這很重要

啟用公用存取並不會移除任何存在的私人端點。 私人端點連接到的虛擬網路背後元件之間的所有通訊,仍會受到保護。 除了透過任何私人端點的私人存取之外,它也可讓您僅啟用對中樞的公用存取。

若要啟用公用存取,請使用下列步驟:

  1. Azure 入口網站選取您的中樞。
  2. 從頁面左側選取 [網路功能],然後選取 [公用存取] 索引標籤。
  3. 選取 [從所有網路上啟用],然後選取 [儲存]

只從網際網路 IP 範圍啟用公用存取 (預覽)

您可以使用IP網路規則,藉由建立IP網路規則,允許從特定公用因特網IP位址範圍存取受保護的中樞。 每個 Azure AI Foundry 中樞最多可支援 200 個規則。 這些規則可將存取權授與特定的網際網路型服務和內部部署網路,並且封鎖一般網際網路流量。 此功能目前為預覽狀態。

警告

  • 如果您想要允許從特定公用因特網IP位址範圍存取端點,請啟用端點的公用網路存取旗標。
  • 您只能使用 IPv4 位址。
  • 如果工作區的 IP 設定從選定的 IP 位址變更為已停用已啟用,則會重設 IP 範圍。
  1. Azure 入口網站中,選取您的 Azure Machine AI Foundry 中樞。
  2. 從頁面左側選取 [網路功能],然後選取 [公用存取] 索引標籤。
  3. 選取 [從選取的 IP 位址啟用],輸入位址範圍,然後選取 [儲存]

您也可以使用來自 Azure 機器學習 Python SDK 的 Workspace 類別來定義允許輸入存取的 IP 位址:

class Workspace(Resource):
    """Azure ML workspace.
    :param public_network_access: Whether to allow public endpoint connectivity
        when a workspace is private link enabled.
    :type public_network_access: str
    :param network_acls: The network access control list (ACL) settings of the workspace.
    :type network_acls: ~azure.ai.ml.entities.NetworkAcls

    def __init__(
        self,
        *,
        public_network_access: Optional[str] = None,
        network_acls: Optional[NetworkAcls] = None,

IP 網路規則的限制

下列限制適用於 IP 位址範圍:

  • 只有 公用因特網 IP位址才允許IP網路規則。

    IP 規則中不允許保留的 IP 位址範圍,例如以 10、172.16 到 172.31 和 192.168 開頭的私人位址。

  • 您必須使用 16.17.18.0/24 格式的 CIDR 表示法 ,或以 16.17.18.19 等個別 IP 位址形式提供允許的因特網地址範圍。

  • 設定儲存體防火牆規則時僅支援 IPv4 位址。

  • 啟用此功能時,您可以使用任何用戶端工具 (例如 Curl) 來測試公用端點,但不支援入口網站中的端點測試工具。

  • 建立中樞之後,您只能設定 AI Foundry 中樞的 IP 位址。

私人記憶體組態

如果您的記憶體帳戶是私人的(使用私人端點與您的項目通訊),請執行下列步驟:

  1. 我們的服務需要使用 [允許信任服務清單上的 Azure 服務存取此儲存體帳戶],並使用下列受控識別設定來讀取/寫入私人儲存體帳戶中的資料。 啟用 Azure AI 服務和 Azure AI 搜尋服務的系統指派受控識別,接著為每個受控識別設定角色型存取控制。

    角色 管理式識別 資源 目標 參考文獻
    Reader Azure AI Foundry 專案 記憶體帳戶的私人端點 從私人記憶體帳戶讀取數據。
    Storage File Data Privileged Contributor Azure AI Foundry 專案 記憶體帳戶 讀取/寫入提示流程資料。 提示流程文件
    Storage Blob Data Contributor Azure AI 服務 記憶體帳戶 從輸入容器讀取,將前置處理結果寫入至輸出容器。 Azure OpenAI 文件
    Storage Blob Data Contributor Azure AI 搜尋服務 記憶體帳戶 讀取 Blob 和寫入知識存放區 搜尋文件

    小提示

    您的儲存體帳戶可能有多個私人端點。 您必須將 Reader 角色指派給 Azure AI Foundry 專案受控識別的每個私人端點。

  2. Storage Blob Data reader 角色指派給您的開發人員。 此角色可讓他們從記憶體帳戶讀取數據。

  3. 確認專案與記憶體帳戶的連線使用 Microsoft Entra ID 進行驗證。 若要檢視連線資訊,請移至 管理中心,選取 [ 已連線的資源],然後選取記憶體帳戶連線。 如果認證類型不是 Entra ID,請選取鉛筆圖示以更新連線,並將 Authentication 方法設定Microsoft Entra ID

如需保護遊樂場聊天的資訊,請參閱 安全地使用遊樂場聊天

代理程式服務的端對端安全網路

建立 Foundry 資源和 Foundry 專案以建置代理程式時,我們建議使用下列網路架構,以取得最安全的端對端組態:

AI Foundry 專案和代理程式的建議網路隔離圖表。

  1. 將每個資源的公用網路存取 (PNA) 旗標設定為 Disabled。 停用公用網路存取將限制從公用網際網路到資源的外部存取。

  2. 為標準代理程式所需的每個 Azure 資源建立私人端點:

    • Azure 儲存體帳戶
    • Azure AI 搜尋服務資源
    • Cosmos DB 資源
    • Azure AI Foundry 資源
  3. 若要存取您的資源,建議您使用 Bastion VM、ExpressRoute 或 VPN 連線至 Azure 虛擬網路。 這些選項可讓您連線到隔離的網路環境。

Agent Service 的網路注入

網路安全的標準代理程式透過代理程式用戶端的網路注入技術,支援完整的網路隔離和數據外洩保護。 若要這樣做,代理程式用戶端會插入 Azure 虛擬網路,以嚴格控制數據移動,並防止數據外流,方法是將流量保留在您定義的網路界限內。 只有標準代理程式部署才支持網路插入,不支援輕代理程式部署。

網路保護的標準代理程式僅支持透過 BICEP 範本進行部署,不支援透過 UX、CLI 或 SDK。 透過範本部署 Foundry 資源和 Agent 之後,您無法更新 Agent 服務的委派子網。 這會顯示在 [Foundry 資源網路] 索引標籤中,您可以在其中檢視和複製子網,但無法更新或移除子網委派。 若要更新委派的子網,您必須重新部署網路保護的標準代理程序範本。

Azure AI Foundry 專案和代理程式的網路插入圖。

如需代理程式服務安全網路的詳細資訊,請參閱 如何搭配 Azure AI 代理程式服務使用虛擬網路 一文。

DNS 組態

使用私人端點之虛擬網路上的用戶端會針對 Azure AI Foundry 資源和專案使用與連線至公用端點的用戶端相同的連接字串。 DNS 解析會自動將虛擬網路中的連線透過私人連結路由到 Azure AI Foundry 資源及其專案。

將 DNS 變更套用至私人端點

當您建立私人端點時,Azure AI Foundry 資源的 DNS CNAME 資源記錄會更新為具有前置詞 privatelink的子域中的別名。 根據預設,Azure 也會建立對應至 privatelink 子域的私人 DNS 區域,以及私人端點的 DNS A 資源記錄。 如需詳細資訊,請參閱 什麼是 Azure 私人 DNS

在您從虛擬網路外部使用私密端點解析端點 URL 時,它將解析至 Azure AI Foundry 資源的公用端點。 從裝載私人端點的虛擬網路解析時,它會解析為私人端點的私人IP位址。

此方法可讓在裝載私人端點的虛擬網路中,以及虛擬網路外部用戶端使用相同的連接字串來存取 Azure AI Foundry 資源。

如果您在網路上使用自定義 DNS 伺服器,客戶端必須能夠將 Azure AI 服務資源端點的完整功能變數名稱 (FQDN) 解析為私人端點 IP 位址。 將您的 DNS 伺服器設定為將私人連結子域委派給虛擬網路的私人 DNS 區域。

小提示

當您使用自定義或內部部署 DNS 伺服器時,應該設定 DNS 伺服器,將子域中的 privatelink Azure AI 服務資源名稱解析為私人端點 IP 位址。 將 privatelink 子域委派給虛擬網路的私人 DNS 區域。 或者,設定 DNS 伺服器的 DNS 區域,並新增 DNS A 記錄。

如需設定您自己的 DNS 伺服器以支援私人端點的詳細資訊,請使用下列文章:

授與受信任 Azure 服務的存取權

您可以授予受信任的 Azure 服務對 Azure OpenAI 的存取權,同時為其他應用程式維護網路規則。 這些受信任的服務接著會使用受控識別來驗證您的 Azure OpenAI 資源。 下表列出如果這些服務的受控識別具有適當的角色指派,則可以存取 Azure OpenAI 的服務:

服務 資源提供者名稱
Azure AI 搜尋服務 Microsoft.Search

您可以使用 REST API 或 Azure 入口網站來建立網路規則例外狀況,以授與對受信任 Azure 服務的網路存取權。

如需 DNS 轉送設定,請參閱 Azure Machine Learning 自訂 DNS 一文。

如果您需要設定自訂 DNS 伺服器而不進行 DNS 轉送,請針對所需的 A 記錄使用下列模式。

  • <AI-HUB-GUID>.workspace.<region>.cert.api.azureml.ms

  • <AI-HUB-GUID>.workspace.<region>.api.azureml.ms

  • ml-<workspace-name, truncated>-<region>-<AI-HUB-GUID>.<region>.notebooks.azure.net

    備註

    此 FQDN 的工作區名稱可能會被截短。 已完成截斷以保留 ml-<workspace-name, truncated>-<region>-<workspace-guid> 63 個字元或更少。

  • <instance-name>.<region>.instances.azureml.ms

    備註

    • 計算執行個體只能從虛擬網路內訪問。
    • 此 FQDN 的 IP 位址是計算執行個體的 IP 位址。 相反地,請使用工作區私人端點的私人 IP 位址 (*.api.azureml.ms 項目的 IP)。
  • <instance-name>-22.<region>.instances.azureml.ms - 僅由 az ml compute connect-ssh 命令用來連線到受控虛擬網路中的電腦。 如果您未使用受控網路或 SSH 連線,則不需要。

  • <managed online endpoint name>.<region>.inference.ml.azure.com - 更新受控線上端點

  • models.ai.azure.com - 用於標準部署

若要尋找 A 記錄的私人 IP 位址,請參閱 Azure Machine Learning 自訂 DNS 一文。

備註

專案工作區會重複使用相關聯中樞工作區的 FQDN。 沒有理由為專案工作區 GUID 設定個別的項目。

局限性

  • 如果您使用 Mozilla Firefox,在嘗試存取中樞的私人端點時可能會遇到問題。 此問題可能與 Mozilla Firefox 中透過 HTTPS 的 DNS 有關。 建議您使用 Microsoft Edge 或 Google Chrome。
  • 只有 Bicep 範本部署才支援受網路保護的代理程式(自備虛擬網路)。 如需網路安全代理程式部署的詳細資訊,請參閱 如何搭配 Azure AI 代理程式服務使用虛擬網路
  • 要部署的網路安全代理程式只是標準代理程式,而不是 Light Agent。
  • Agent Service 或 Foundry 項目沒有受控虛擬網路支援。

後續步驟