在 Azure 虛擬網路中使用 Azure Machine Learning 工作室

提示

Microsoft 建議使用 Azure 機器學習 受控虛擬網路,而不是本文中的步驟。 透過受控虛擬網路,Azure Machine Learning 可以處理工作區和受控計算的網路隔離作業。 您也可以為工作區所需的資源 (例如 Azure 儲存體帳戶) 新增私人端點。 如需詳細資訊,請參閱工作區受管理的網路隔離

本文說明如何在虛擬網路中使用 Azure Machine Learning 工作室。 工作室內含 AutoML、設計工具和資料標記等功能。

依預設,虛擬網路中會停用工作室的某些功能。 若要重新啟用這些功能,您必須為想要在 Studio 中使用的記憶體帳戶啟用受控識別。

依預設,虛擬網路中會停用下列作業:

  • 在工作室中預覽資料。
  • 在設計工具中將資料視覺化。
  • 在設計工具中部署模型。
  • 提交 AutoML 實驗。
  • 啟動標記專案。

工作室支援從虛擬網路中的下列資料存放區類型讀取資料:

  • Azure 儲存體帳戶 (Blob & 檔案)
  • Azure Data Lake Storage Gen1
  • Azure Data Lake Storage Gen2
  • Azure SQL Database

在本文中,您將學會如何:

  • 讓工作室能夠存取儲存在虛擬網路內的資料。
  • 從虛擬網路內的資源存取工作室。
  • 了解工作室如何影響儲存體安全性。

必要條件

  • 閱讀網路安全性概觀,以了解常見的虛擬網路案例和架構。

  • 已存在要使用的虛擬網路和子網路。

限制

Azure 儲存體帳戶

  • 當儲存體帳戶位於虛擬網路時,要符合額外的驗證需求才能使用工作室:

    • 如果儲存體帳戶使用服務端點,工作區私人端點和儲存體服務端點必須位於與虛擬網路相同的子網路中。
    • 如果儲存體帳戶使用私人端點,則工作區私人端點和儲存體私人端點必須位於相同的虛擬網路中。 在此情況下,兩者可以位於不同的子網路。

設計工具範例管線

有一個已知問題導致使用者無法在設計工具的首頁執行範例管線。 發生此問題的原因是範例管線中使用的範例資料集是 Azure 全域資料集。 無法從虛擬網路環境存取。

若要解決此問題,請使用公用工作區來執行範例管線。 或者,將範例資料集取代為虛擬網路內工作區中的您自己的資料集。

資料存放區:Azure 儲存體帳戶

您可以使用下列步驟來存取儲存在 Azure Blob 和檔案儲存體中的資料:

提示

工作區的預設記憶體帳戶不需要第一個步驟。 位於 VNet 後方且由工作區使用的任何儲存體帳戶則需要進行所有其他步驟,預設儲存體帳戶也包括在內。

  1. 如果儲存體帳戶是您工作區的預設儲存體,請略過此步驟。 如果不是預設儲存體,請將 Azure 儲存體帳戶的「儲存體 Blob 資料讀者」角色授與工作區受控識別,使其可以從 Blob 儲存體讀取資料。

    如需詳細資訊,請參閱 Blob 資料讀者內建角色。

  2. 為 Azure 使用者身分識別授與 Azure 記憶體帳戶 儲存體 Blob 數據讀取者角色。 Studio 會使用您的身分識別來存取 Blob 記憶體的數據,即使工作區受控識別具有讀取者角色也一樣。

    如需詳細資訊,請參閱 Blob 資料讀者內建角色。

  3. 將儲存體私人端點的「讀者」角色授與工作區受控識別。 如果您的儲存體服務使用私人端點,請將私人端點的讀者存取權授與該工作區的受控識別。 工作區在 Microsoft Entra ID 中的受控識別與您的 Azure Machine Learning 工作區具有相同名稱。 Blob 和檔案儲存體類型都需要私人端點。

    提示

    您的儲存體帳戶可能有多個私人端點。 例如,一個儲存體帳戶可能會針對 Blob、檔案和 dfs (Azure Data Lake Storage Gen2) 備有不同的私人端點。 請將受控識別新增至所有這些端點。

    如需詳細資訊,請參閱讀者內建角色。

  4. 針對預設儲存體帳戶啟用受控識別驗證。 每個 Azure Machine Learning 工作區都有兩個預設的儲存體帳戶 (分別是預設的 Blob 儲存體帳戶和預設的檔案存放區帳戶)。 當您建立工作區時,會定義這兩者。 您也可以在資料存放區管理頁面中設定新的預設值。

    顯示可以找到預設數據存放區的螢幕快照。

    下表說明為何工作區的預設儲存體帳戶會使用受控識別驗證。

    儲存體帳戶 備註
    工作區的預設 Blob 儲存體 從設計工具儲存模型資產。 在此儲存體帳戶上啟用受控識別驗證,即可在設計工具中部署模型。 如果停用受控識別驗證,則會使用使用者的身分識別來存取儲存在 Blob 中的資料。

    如果設計工具管線使用的非預設資料存放區已設定為使用受控識別,您便可以將該管線視覺化並執行管線。 但是,如果您嘗試部署的已定型模型未在預設資料存放區上啟用受控識別,則不論使用其他哪個資料存放區,部署都會失敗。
    工作區的預設檔案存放區 儲存 AutoML 實驗資產。 在此儲存體帳戶上啟用受控識別驗證,即可提交 AutoML 實驗。
  5. 將資料存放區設定為使用受控識別驗證。 當您將 Azure 儲存體帳戶新增至具有服務端點私人端點的虛擬網路之後,您必須將資料存放區設定為使用受控識別驗證。 這麼做可讓工作室存取儲存體帳戶中的資料。

    Azure Machine Learning 會使用資料存放區連線至儲存體帳戶。 在建立新的資料存放區時,請使用下列步驟將資料存放區設定為使用受控識別驗證:

    1. 在工作室中,選取 [資料存放區]

    2. 若要建立新的資料存放區,請選取 [+ 建立]

    3. 在 [資料存放區設定] 中,開啟 [在 Azure Machine Learning 工作室中使用工作區受控識別來預覽及分析資料]

      顯示如何啟用受控工作區身分識別的螢幕快照。

    4. 在 [Azure 儲存體帳戶] 的 [網路] 設定中,新增 Microsoft.MachineLearningService/workspaces資源類型,並將 [執行個體名稱] 設定為工作區。

    這些步驟會將工作區的受控識別新增為使用 Azure 角色型存取控制 (RBAC) 的新記憶體服務讀取者。 讀者存取權可讓工作區檢視資源,但不能變更資源。

資料存放區:Azure Data Lake Storage Gen1

使用 Azure Data Lake Storage Gen1 作為資料存放區時,您只能使用 POSIX 樣式的存取控制清單。 您可以向工作區的受控識別指派資源存取權,就像其他任何安全性主體一樣。 如需詳細資訊,請參閱 Azure Data Lake Storage Gen1 中的存取控制

資料存放區:Azure Data Lake Storage Gen2

使用 Azure Data Lake Storage Gen2 作為資料存放區時,您可以使用 Azure RBAC 和 POSIX 樣式的存取控制清單 (ACL) 來控制虛擬網路內的資料存取。

若要使用 Azure RBAC,請遵循本文的資料存放區: Azure 儲存體帳戶一節中的步驟。 Data Lake Storage Gen2 以 Azure 儲存體為基礎,因此適用相同的 Azure RBAC 使用步驟。

若要使用 ACL,可將存取權指派給工作區的受控識別,就像其他任何安全性主體一樣。 如需詳細資訊,請參閱檔案和目錄的存取控制清單

資料存放區:Azure SQL Database

若要使用受控識別來存取儲存在 Azure SQL Database 中的資料,您必須建立對應至受控識別的 SQL 自主使用者。 如需有關透過外部提供者來建立使用者的詳細資訊,請參閱建立對應至 Microsoft Entra 身分識別的自主使用者

建立 SQL 自主使用者之後,請使用 GRANT T-SQL 命令將權限授與該使用者。

中繼元件輸出

使用 Azure Machine Learning 設計工具的中繼元件輸出時,您可以在設計工具中指定任何元件的輸出位置。 您可以使用此輸出將中繼資料集儲存在不同的位置,以供安全性、記錄或稽核之用。 若要指定輸出,請使用下列步驟:

  1. 選取要指定輸出的元件。
  2. 在 [元件設定] 窗格,選取 [輸出設定]
  3. 指定要用於每個元件輸出的資料存放區。

請確定您可以存取虛擬網路中的中繼儲存體帳戶。 否則,管線會失敗。

針對中繼儲存體帳戶啟用受控識別驗證可將輸出資料視覺化。

從 VNet 內的資源存取工作室

如果您從虛擬網路內的資源存取 Studio(例如計算實例或虛擬機器),您必須允許從虛擬網路到 Studio 的輸出流量。

例如,如果您使用網路安全組 (NSG) 來限制輸出流量,請將規則新增至 的服務標籤 目的地 AzureFrontDoor.Frontend

防火牆設定

某些儲存體服務 (例如 Azure 儲存體帳戶) 具有適用於該特定服務執行個體公用端點的防火牆設定。 這種設定通常可讓您允許/不允許從公用網際網路透過特定 IP 位址進行存取。 使用 Azure Machine Learning 工作室時,不支援此功能。 使用 Azure Machine Learning SDK 或 CLI 時,則支援此功能。

提示

使用 Azure 防火牆服務時,支援 Azure Machine Learning 工作室。 如需詳細資訊,請參閱設定輸入和輸出網路流量

本文是關於保護 Azure Machine Learning 工作流程系列文章的一部分。 請參閱本系列的其他文章: