為受管理的服務啟用 HSM 客戶自控金鑰
注意
此功能需要進階版方案。
本文說明如何從 Azure 金鑰保存庫 受控 HSM 設定您自己的密鑰。 如需從 Azure 金鑰保存庫 儲存庫使用金鑰的指示,請參閱為受控服務啟用客戶管理的密鑰。
需求
若要使用 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 Key Vault 受控 HSM 和 HSM 金鑰
可以使用現有的 Azure Key Vault 受控 HSM,或遵循受控 HSM 文件中的快速入門建立並啟用新的。 請參閱快速入門:使用 Azure CLI 佈建並啟動受控 HSM。 Azure Key Vault 受控 HSM 必須啟用 [清除保護]。
重要
Key Vault 與 Azure Databricks 工作區必須位於相同的 Azure 租用戶中。
若要建立 HSM 金鑰,請遵循建立 HSM 金鑰。
步驟 2:設定受控 HSM 角色指派
設定金鑰保存庫受控 HSM 的角色指派,讓您的 Azure Databricks 工作區擁有存取它的權限。 您可以使用 Azure 入口網站、Azure CLI 或 Azure Powershell 來設定角色指派。
使用 Azure 入口網站
- 轉至 Azure 入口網站中的受控 HSM 資源。
- 在左側功能表中,選取 [設定] 下方的 [本機 RBAC]。
- 按一下新增。
- 在 [角色] 欄位中,選取 [受控 HSM 加密服務加密使用者]。
- 在 [ 範圍] 欄位中,選取
All keys (/)
。 - 在 [ 安全性主體 ] 字段中,輸入
AzureDatabricks
並捲動至具有 [應用程式標識符2ff814a6-3304-4ab8-85cb-cd0e6f879c1d
] 的企業應用程式結果,然後加以選取。 - 按一下 [建立]。
- 在左側功能表中的 [設定] 底下,選取 [金鑰],然後選取您的密鑰。
- 在 [ 金鑰識別碼] 欄位中,複製文字。
使用 Azure CLI
使用 Azure CLI 取得 AzureDatabricks 應用程式的物件識別碼。
az ad sp show --id "2ff814a6-3304-4ab8-85cb-cd0e6f879c1d" \ --query "id" \ --output tsv
設定受控 HSM 角色指派。 將 取代
<hsm-name>
為Managed HSM名稱,並將取代<object-id>
為上一個步驟中應用程式的物件識別碼AzureDatabricks
。az keyvault role assignment create --role "Managed HSM Crypto Service Encryption User" --scope "/" --hsm-name <hsm-name> --assignee-object-id <object-id>
使用 Azure PowerShell
將 <hsm-name>
取代為受控 HSM 名稱。
Connect-AzureAD
$managedService = Get-AzureADServicePrincipal \
-Filter "appId eq '2ff814a6-3304-4ab8-85cb-cd0e6f879c1d'"
New-AzKeyVaultRoleAssignment -HsmName <hsm-name> \
-RoleDefinitionName "Managed HSM Crypto Service Encryption User" \
-ObjectId $managedService.ObjectId
步驟 3:在工作區中新增金鑰
您可以使用 Azure 入口網站、Azure CLI 或 Azure Powershell,使用客戶管理的受控服務密鑰來建立或更新工作區。
使用 Azure 入口網站
前往 Azure 入口網站首頁。
按一下頁面左上角的 [建立資源]。
在搜尋列中,輸入
Azure Databricks
並按一下 [Azure Databricks] 選項。按一下 Azure Databricks 小工具中的 [建立]。
在 [基本資料] 和 [網络] 索引標籤上輸入輸入欄位的值。
到達 [加密] 索引標籤之後:
- 若要建立工作區,請在 [受控服務] 區段中啟用 [使用您自己的金鑰]。
- 若要更新工作區,請啟用 [受控服務]。
設定加密欄位。
- 在 [金鑰識別碼] 欄位中,貼上受控 HSM 金鑰的金鑰識別碼。
- 在 [訂用帳戶] 下拉式清單中,輸入 Azure Key Vault 金鑰的訂用帳戶名稱。
完成其餘索引標籤,然後按一下 [檢閱 + 建立] (適用於新的工作區) 或 [儲存] (適用於更新工作區)。
使用 Azure CLI
建立或更新工作區:
若要同時建立和更新工作區,請在該命令中新增以下欄位:
managed-services-key-name
:受控 HSM 名稱managed-services-key-vault
:受控 HSM URImanaged-services-key-version
:受控 HSM 版本。 使用特定的金鑰版本,而不是latest
。
使用這些欄位建立工作區的範例:
az databricks workspace create --name <workspace-name> \
--resource-group <resource-group-name> \
--location <location> \
--sku premium \
--managed-services-key-name <hsm-name> \
--managed-services-key-vault <hsm-uri> \
--managed-services-key-version <hsm-version>
使用這些欄位更新工作區的範例:
az databricks workspace update --name <workspace-name> \
--resource-group <resource-group-name> \
--managed-services-key-name <hsm-name> \
--managed-services-key-vault <hsm-uri> \
--managed-services-key-version <hsm-version>
重要
如果您輪替金鑰,則必須保留舊的金鑰 24 小時。
使用 PowerShell
若要建立或更新工作區,請在新金鑰的命令中新增下列命令:
ManagedServicesKeyVaultPropertiesKeyName
:受控 HSM 名稱ManagedServicesKeyVaultPropertiesKeyVaultUri
:受控 HSM URIManagedServicesKeyVaultPropertiesKeyVersion
:受控 HSM 版本。 使用特定的金鑰版本,而不是latest
。
使用這些欄位建立工作區的範例:
New-AzDatabricksWorkspace -Name <workspace-name> \
-ResourceGroupName <resource-group-name> \
-location $keyVault.Location \
-sku premium \
-ManagedServicesKeyVaultPropertiesKeyName $hsm.Name \
-ManagedServicesKeyVaultPropertiesKeyVaultUri $hsm.Uri \
-ManagedServicesKeyVaultPropertiesKeyVersion $hsm.Version
使用這些欄位更新工作區的範例:
Update-AzDatabricksWorkspace -Name <workspace-name> \
-ResourceGroupName <resource-group-name> \
-sku premium \
-ManagedServicesKeyVaultPropertiesKeyName $hsm.Name \
-ManagedServicesKeyVaultPropertiesKeyVaultUri $hsm.VaultUri \
-ManagedServicesKeyVaultPropertiesKeyVersion $hsm.Version
重要
如果您輪替金鑰,則必須保留舊的金鑰 24 小時。
步驟 4 (選用):重新匯入筆記本
最初為現有工作區的受控服務新增金鑰後,只有未來的寫入作業才會使用您的金鑰。 現有資料不會被重新加密。
您可以匯出所有筆記本,然後重新匯入這些筆記本,以便透過您的金鑰保護和控制用來加密資料的金鑰。 您可以使用匯出和匯入工作區 API。
在稍後的時間輪替金鑰
如果您已將客戶自控金鑰用於受控服務,則可以使用新的金鑰版本或全新的金鑰來更新工作區。 這稱為「金鑰輪替」。
在受控 HSM 保存庫中建立新的金鑰或輪替現有的金鑰。
請確定新的金鑰具有適當權限。
使用入口網站、CLI 或 PowerShell,透過新金鑰更新工作區。 請參閱步驟 3:在工作區中新增金鑰,並遵循工作區更新的指示。 請確定您針對資源群組名稱和工作區名稱使用相同的值,以便更新現有工作區,而不是建立新的工作區。 除了金鑰相關參數的變更以外,請使用您用來建立工作區的相同參數。
重要
如果您輪替金鑰,則必須保留舊的金鑰 24 小時。
或者,匯出並重新匯入現有筆記本,以確保所有現有的筆記本都使用新的金鑰。