Azure Machine Learning 的 Enterprise 安全性與治理
在此文章中,您將了解 Azure Machine Learning 可用的安全性和控管功能。 系統管理員、DevOps 工程師和 MLOps 工程師如果想建立與公司原則相容的安全設定,便可以使用這些功能。
透過 Azure Machine Learning 和 Azure 平台,您可以:
- 依使用者帳戶或群組限制資源和作業的存取權。
- 限制連入和連出的網路通訊。
- 加密傳輸和待用的資料。
- 掃描弱點。
- 套用和稽核設定原則。
限制資源和作業的存取權
Microsoft Entra ID 是適用於 Azure Machine Learning 的身分識別服務提供者。 您可以將其用來建立及管理用以驗證 Azure 資源的安全性物件 (使用者、群組、服務主體和受控識別)。 如果 Microsoft Entra ID 設定為使用它,則支援多重要素驗證 (MFA)。
以下是 Azure Machine Learning 在 Microsoft Entra ID 中透過 MFA 進行的驗證程序:
- 用戶端登入到 Microsoft Entra ID,並取得 Azure Resource Manager 權杖。
- 用戶端會將權杖提供給 Azure Resource Manager 和 Azure Machine Learning。
- Azure Machine Learning 會為使用者計算目標 (例如,Machine Learning 計算叢集或無伺服器計算) 提供 Machine Learning 服務權杖。 在作業完成之後,使用者計算目標會使用此權杖來回呼 Machine Learning 服務。 適用範圍僅限於工作區。
每個工作區都有相關聯的系統指派受控識別,其名稱與工作區相同。 此受控識別是用於安全地存取工作區所使用的資源。 該識別針對相關聯的資源具有下列 Azure 角色型存取控制 (RBAC) 權限:
資源 | 權限 |
---|---|
工作區 | 參與者 |
儲存體帳戶 | 儲存體 Blob 資料參與者 |
金鑰保存庫 | 所有金鑰、祕密、憑證的存取權 |
Container Registry: | 參與者 |
包含工作區的資源群組 | 參與者 |
系統指派的受控識別會用於 Azure Machine Learning 與其他 Azure 資源之間的內部服務對服務驗證。 使用者無法存取身分識別權杖,且無法將其用來取得這些資源的存取權。 使用者只能透過 Azure Machine Learning 控制及資料平面 API 來存取資源 (如果具有符合的 RBAC 權限)。
我們不建議管理員撤銷上表所述資源的受控識別存取權。 您可以使用重新同步金鑰作業來還原存取權。
注意
如果您 Azure Machine Learning 工作區的計算目標 (例如計算叢集、計算執行個體或 Azure Kubernetes Service [AKS] 執行個體) 是在 2021 年 5 月 14 日之前所建立,則您可能也會有額外的 Microsoft Entra 帳戶。 帳戶名稱會以 Microsoft-AzureML-Support-App-
開頭,並且具有每個工作區區域訂用帳戶的參與者層級存取權。
如果您的工作區沒有連結 AKS 執行個體,您可以安全地刪除此 Microsoft Entra 帳戶。
如果您的工作區已連結 AKS 叢集,且這些叢集建立於 2021 年 5 月 14 日之前,請勿刪除此 Microsoft Entra 帳戶。 在這個情況下,您必須刪除再重新建立 AKS 叢集,才能刪除 Microsoft Entra 帳戶。
您可以佈建工作區以使用使用者指派的受控識別,然後為受控識別授與其他角色。 例如,您可以授與角色來存取基底 Docker 映像的 Azure Container Registry 執行個體。
您也可以設定受控識別,以搭配 Azure Machine Learning 計算叢集使用。 此受控識別與工作區受控識別無關。 透過計算叢集,受控識別會用來存取執行定型作業的使用者可能無法存取的資源,例如安全的資料存放區。 如需詳細資訊,請參閱使用受控識別。
提示
在 Azure Machine Learning 中使用 Microsoft Entra ID 和 Azure RBAC 時會發生例外狀況:
- 您可以選擇性地啟用計算資源 (例如 Azure Machine Learning 計算執行個體和計算叢集) 的安全殼層 (SSH) 存取。 SSH 存取是以公開/私密金鑰組為基礎,而不是 Microsoft Entra ID。 Azure RBAC 不會控管 SSH 存取。
- 您可以使用金鑰或權杖型驗證,藉此驗證模型以部署為線上端點。 索引鍵是靜態字串,而權杖則會透過 Microsoft Entra 安全性物件擷取。 如需詳細資訊,請參閱驗證線上端點的用戶端。
如需詳細資訊,請參閱下列文章:
- 設定 Azure Machine Learning 資源和工作流程的驗證
- 管理對 Azure Machine Learning 工作區的存取
- 使用資料存放區
- 在 Azure Machine Learning 作業中使用驗證認證祕密
- 設定 Azure Machine Learning 與其他服務之間的驗證
提供網路安全性與隔離
若要限制 Azure Machine Learning 資源的網路存取,您可以使用 Azure Machine Learning 虛擬網路或 Azure 虛擬網路執行個體。 使用虛擬網路可減少您解決方案的受攻擊面,並降低資料外流的機會。
您不需要選擇其中一個。 例如,您可以使用 Azure Machine Learning 受控虛擬網路來協助保護受控計算資源和非受控資源的 Azure 虛擬網路執行個體,或協助保護工作區的用戶端存取。
Azure Machine Learning 受控虛擬網路:提供完全受控的解決方案,為您的工作區和受控計算資源啟用網路隔離。 您可以使用私人端點來協助保護與其他 Azure 服務的通訊,且您可以限制輸出通訊。 使用受控虛擬網路來協助保護下列受控計算資源:
- 無伺服器計算 (包括 Spark 無伺服器)
- 計算叢集
- 計算執行個體
- 受控線上端點
- 批次線上端點
如需詳細資訊,請參閱工作區受控虛擬網路隔離。
Azure 虛擬網路執行個體:提供可自訂程度更高的虛擬網路供應項目。 不過,您必須負責設定及管理。 您可能需要使用網路安全性群組、使用者定義的路由或防火牆來限制輸出通訊。
如需詳細資訊,請參閱下列文章:
加密資料
Azure Machine Learning 會使用 Azure 平台上的各種計算資源和資料存放區。 若要深入了解這兩項資源如何支援待用和傳輸中的資料加密,請參閱 Azure Machine Learning 的資料加密。
防止資料外流
Azure Machine Learning 有數個輸入和輸出網路相依性。 其中有些相依性會因組織內的惡意代理程式,而有造成資料外流的風險。 這些風險與 Azure 儲存體、Azure Front Door 和 Azure 監視器的輸出需求相關。 如需降低此風險的建議,請參閱預防 Azure Machine Learning 資料外流。
掃描弱點
適用於雲端的 Microsoft Defender 提供跨混合式雲端工作負載的整合式安全性管理與進階威脅保護。 針對 Azure Machine Learning,您應該啟用掃描 Azure Container Registry 資源和 AKS 資源。 如需詳細資訊,請參閱適用於容器登錄的 Microsoft Defender 簡介和適用於 Kubernetes 的 Microsoft Defender 簡介。
稽核及管理合規性
Azure 原則是一種治理工具,可協助確保 Azure 資源遵循您的原則。 您可以設定原則以允許或強制執行特定設定,例如您的 Azure Machine Learning 工作區是否使用私人端點。
如需 Azure 原則的詳細資訊,請參閱 Azure 原則文件。 如需 Azure Machine Learning 特定原則的詳細資訊,請參閱稽核及管理 Azure Machine Learning。