設定 Azure 受控磁碟的 HSM 客戶自控密鑰
計算平面中的 Azure Databricks 計算工作負載會將暫存數據儲存在 Azure 受控磁碟上。 預設情況下,儲存在受控磁碟中的資料會使用伺服器端加密搭配 Microsoft 受管理金鑰進行待用加密。 本文說明如何為 Azure Databricks 工作區設定 Azure 金鑰保存庫 HSM 的客戶自控密鑰,以用於受控磁碟加密。 如需從 Azure 金鑰保存庫 保存庫使用金鑰的指示,請參閱設定 Azure 受控磁碟的客戶自控密鑰。
重要
- 受控磁碟記憶體的客戶自控密鑰會套用至數據磁碟,但不適用於作業系統 (OS) 磁碟。
- 受控磁碟記憶體的客戶自控密鑰不適用於無伺服器計算資源,例如無伺服器 SQL 倉儲和模型服務。 用於無伺服器計算資源的磁碟是短期的,並繫結至無伺服器工作負載的生命週期。 當計算資源停止或相應減少時,VM 及其記憶體會終結。
需求
您的 Azure Databricks 工作區必須位於 進階版 方案中。
如果您想要啟用自動輪替,僅支援大小為 2048 位、3072 位和 4096 位的 RSA-HSM 密鑰。
符合 FedRAMP 規範的工作區不支援此功能。 如需詳細資訊,請連絡您的 Azure Databricks 帳戶小組。
若要針對這些工作使用 Azure CLI, 請安裝 Azure CLI 工具 並安裝 Databricks 擴充功能:
az extension add --name databricks
若要針對這些工作使用Powershell, 請安裝 Azure PowerShell 並安裝 Databricks Powershell 模組。 您也必須登入:
Connect-AzAccount
若要以使用者身分登入您的 Azure 帳戶,請參閱 使用 Azure Databricks 使用者帳戶登入 PowerShell。 若要以服務主體身分登入 Azure 帳戶,請參閱 使用 Microsoft Entra ID 服務主體登入 PowerShell。
步驟 1:建立 Azure 金鑰保存庫 受控 HSM 和 HSM 密鑰
您可以使用現有的 Azure 金鑰保存庫 受控 HSM,或在受控 HSM 檔中的快速入門之後建立並啟動新的 Azure。 請參閱 快速入門:使用 Azure CLI 布建和啟用受控 HSM。 Azure 金鑰保存庫 受控 HSM 必須啟用清除保護。
若要建立 HSM 金鑰,請遵循 建立 HSM 金鑰。
步驟 2:如果您要更新工作區以一開始新增金鑰,請停止所有計算資源
如果您一開始在現有的工作區上新增受控磁碟的客戶自控密鑰,請在更新之前停止所有計算資源(叢集、集區、傳統或 Pro SQL 倉儲)。
更新完成之後,您可以 啟動已停止的計算資源。 對於已經有受控磁碟客戶管理密鑰的工作區,您可以 輪替 密鑰,而不需要終止計算資源。
步驟 3:建立或更新工作區
您可以使用 Azure 入口網站、Azure CLI 或 Azure Powershell,使用客戶管理的受控磁碟密鑰來建立或更新工作區。
使用 Azure 入口網站
本節說明如何使用 Azure 入口網站,以受控磁碟的客戶自控密鑰建立或更新工作區。
開始建立或更新工作區:
使用金鑰建立新的工作區:
- 移至 Azure 入口網站首頁 ,然後按下 頁面左上角的 [建立資源 ]。
- 在搜尋列中,輸入
Azure Databricks
並按兩下 [Azure Databricks]。 - 從 Azure Databricks 小工具中選取 [建立 ]。
- 在索引標籤 [基本] 和 [網络] 的表單字段中輸入值。
- 在 [加密] 索引標籤中,選取 [受控磁碟 區段中的 [使用您自己的金鑰] 複選框。
開始將金鑰新增至現有的工作區:
- 移至 Azure Databricks Azure 入口網站 首頁。
- 流覽至現有的 Azure Databricks 工作區。
- 從左側面板開啟 [ 加密 ] 索引標籤。
- 在 [客戶管理的金鑰] 區段底下,啟用 受控磁碟。
設定加密欄位。
- 在 [ 金鑰標識碼 ] 字段中,貼上受控 HSM 金鑰的密鑰標識碼。
- 在 [ 訂用帳戶 ] 下拉式清單中,輸入受控 HSM 金鑰的訂用帳戶名稱。
- 若要啟用金鑰的自動輪替,請啟用 [啟用金鑰自動輪替]。
完成其餘索引標籤,然後按兩下 [ 檢閱 + 建立 ] 或 [儲存 ] (用於更新工作區)。
部署工作區之後,流覽至新的 Azure Databricks 工作區。
從 Azure Databricks 工作區的 [ 概觀 ] 索引標籤中,按兩下 [ 受控資源群組]。
在受控資源群組的 [概觀] 索引標籤中,尋找在此資源群組中建立的磁碟加密集類型的物件。 複製該磁碟加密集的名稱。
使用 Azure CLI
針對新的和更新的工作區,將這些參數新增至您的命令:
disk-key-name
:受控 HSM 名稱disk-key-vault
:受控 HSM URIdisk-key-version
:受控 HSM 版本disk-key-auto-rotation
:啟用金鑰的自動輪替 (true
或false
)。 這是非必填欄位。 預設值為false
。
建立或更新工作區:
使用這些受控磁碟參數建立工作區的範例:
az databricks workspace create --name <workspace-name> \ --resource-group <resource-group-name> \ --location <location> \ --sku premium --disk-key-name <hsm-name> \ --disk-key-vault <hsm-uri> \ --disk-key-version <hsm-version> \ --disk-key-auto-rotation <true-or-false>
使用這些受控磁碟參數更新工作區的範例:
az databricks workspace update \ --name <workspace-name> \ --resource-group <resource-group-name> \ --disk-key-name <hsm-name> \ --disk-key-vault <hsm-uri> \ --disk-key-version <hsm-version> \ --disk-key-auto-rotation <true-or-false>
在上述任一命令的輸出中,會有物件
managedDiskIdentity
。 儲存principalId
這個物件內的屬性值。 這會在後續步驟中當做主體標識碼使用。
使用 Powershell
針對新的和更新的工作區,將這些參數新增至您的命令:
location
:工作區位置ManagedDiskKeyVaultPropertiesKeyName
:受控 HSM 名稱ManagedDiskKeyVaultPropertiesKeyVaultUri
:受控 HSM URIManagedDiskKeyVaultPropertiesKeyVersion
:受控 HSM 版本ManagedDiskRotationToLatestKeyVersionEnabled
:啟用金鑰的自動輪替 (true
或false
)。 這是非必填欄位。 預設值為 false。
- 建立或更新工作區:
使用受控磁碟參數建立工作區的範例:
$workspace = New-AzDatabricksWorkspace -Name <workspace-name> \ -ResourceGroupName <resource-group-name> \ -location <location> \ -Sku premium \ -ManagedDiskKeyVaultPropertiesKeyName <key-name> \ -ManagedDiskKeyVaultPropertiesKeyVaultUri <hsm-uri> \ -ManagedDiskKeyVaultPropertiesKeyVersion <key-version> -ManagedDiskRotationToLatestKeyVersionEnabled
使用受控磁碟參數更新工作區的範例:
$workspace = Update-AzDatabricksworkspace -Name <workspace-name> \ -ResourceGroupName <resource-group-name> \ -ManagedDiskKeyVaultPropertiesKeyName <key-name> \ -ManagedDiskKeyVaultPropertiesKeyVaultUri <hsm-uri> \ -ManagedDiskKeyVaultPropertiesKeyVersion <key-version> -ManagedDiskRotationToLatestKeyVersionEnabled
步驟 4:設定受控 HSM 角色指派
設定 金鑰保存庫 受控 HSM 的角色指派,讓您的 Azure Databricks 工作區有權存取它。 您可以使用 Azure 入口網站、Azure CLI 或 powershell 來設定角色指派。
使用 Azure 入口網站
- 移至 Azure 入口網站 中的受控 HSM 資源。
- 在左側功能表中的 [設定] 下,選取 [本機 RBAC]。
- 按一下新增。
- 在 [ 角色] 欄位中,選取 [受控 HSM 加密服務加密使用者]。
- 在 [ 範圍] 欄位中,選擇
All keys (/)
。 - 在 [ 安全性主體 ] 欄位中,於搜尋列中的 Azure Databricks 工作區受控資源群組中,輸入磁碟加密集的名稱。 選取結果。
- 按一下 [建立]。
使用 Azure CLI
設定受控 HSM 角色指派。 以受控 HSM 名稱取代 <hsm-name>
,並以上一個步驟中的 managedDiskIdentity
principalId 識別碼取代 <principal-id>
。
az keyvault role assignment create --role "Managed HSM Crypto Service Encryption User"
--scope "/" --hsm-name <hsm-name>
--assignee-object-id <principal-id>
使用 Azure Powershell
將取代 <hsm-name>
為您的受控 HSM 名稱。
New-AzKeyVaultRoleAssignment -HsmName <hsm-name> \
-RoleDefinitionName "Managed HSM Crypto Service Encryption User" \
-ObjectId $workspace.ManagedDiskIdentityPrincipalId
步驟 5:啟動先前終止的計算資源
只有在您第一次更新工作區以新增金鑰時,才需要此步驟,在此情況下,您在上一個步驟中終止任何執行中的計算資源。 如果您已建立新的工作區或只是 輪替密鑰,則計算資源不會在先前的步驟中終止,在此情況下您可以略過此步驟。
- 確定工作區更新已完成。 如果密鑰是範本的唯一變更,這通常會在不到五分鐘內完成,否則可能需要更多時間。
- 手動啟動您稍早終止的任何計算資源。
如果有任何計算資源無法成功啟動,通常是因為您需要授與磁碟加密集許可權,才能存取您的 金鑰保存庫。
稍後輪替金鑰
現有工作區上的金鑰輪替類型有兩種,這些工作區已經有金鑰:
- 自動輪替:如果是
rotationToLatestKeyVersionEnabled
true
工作區,磁碟加密集會偵測密鑰版本變更,並指向最新的密鑰版本。 - 手動輪替:您可以使用新的金鑰來更新現有的受控磁碟客戶自控密鑰工作區。 請遵循上述指示,如同您一開始將密鑰新增至現有工作區,而您不需要終止任何執行中的計算資源的重要差異。
針對這兩種輪替類型,Azure 虛擬機記憶體服務會自動挑選新的密鑰,並用它來加密數據加密密鑰。 您的 Azure Databricks 計算資源不會受到影響。 如需詳細資訊,請參閱 Azure 檔中的客戶管理金鑰 。
輪替金鑰之前,您不需要終止計算資源。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應