共用方式為


為受控服務啟用 HSM 客戶管理的金鑰

注意

此功能需要 進階方案

本文說明如何從 Azure 金鑰保存庫 受控 HSM 設定您自己的密鑰。 如需從 Azure 金鑰保存庫 儲存庫使用金鑰的指示,請參閱為受控服務啟用客戶管理的密鑰。

需求

步驟 1:建立 Azure 金鑰保存庫 受控 HSM 和 HSM 密鑰

您可以使用現有的 Azure 金鑰保存庫 受控 HSM,或在受控 HSM 檔中的快速入門之後建立並啟用新的 Azure HSM。 請參閱 快速入門:使用 Azure CLI 布建和啟用受控 HSM。 Azure 金鑰保存庫 受控 HSM 必須啟用清除保護

重要

金鑰保存庫 必須與 Azure Databricks 工作區位於相同的 Azure 租使用者中。

若要建立 HSM 金鑰,請遵循 建立 HSM 金鑰

步驟 2:設定受控 HSM 角色指派

設定 金鑰保存庫 受控 HSM 的角色指派,讓您的 Azure Databricks 工作區有權存取它。 您可以使用 Azure 入口網站、Azure CLI 或 Azure Powershell 來設定角色指派。

使用 Azure 入口網站

  1. 移至 Azure 入口網站 中的受控 HSM 資源。
  2. 在左側功能表中的 [設定] 底下,選取 [本機 RBAC]。
  3. 按一下新增
  4. 在 [ 角色] 欄位中,選取 [受控 HSM 加密服務加密使用者]。
  5. 在 [ 範圍] 欄位中,選取 All keys (/)
  6. 在 [ 安全性主體 ] 字段中,輸入 AzureDatabricks 並捲動至具有 [應用程式標識符 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d ] 的企業應用程式結果,然後加以選取。
  7. 按一下 [建立]
  8. 在左側功能表中的 [設定] 底下,選取 [金鑰],然後選取您的密鑰。
  9. 在 [ 金鑰識別碼] 欄位中,複製文字。

使用 Azure CLI

  1. 使用 Azure CLI 取得 AzureDatabricks 應用程式的物件識別碼

    az ad sp show --id "2ff814a6-3304-4ab8-85cb-cd0e6f879c1d" \
                    --query "id" \
                    --output tsv
    
  2. 設定受控 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 入口網站

  1. 移至 Azure 入口網站首頁

  2. 按兩下 頁面左上角的 [建立資源 ]。

  3. 在搜尋列中,輸入 Azure Databricks 並按兩下 [Azure Databricks ] 選項。

  4. 按兩下 Azure Databricks Widget 中的 [建立 ]。

  5. 在 [基本][網络] 索引標籤上輸入輸入欄位的值。

  6. 到達 [ 加密 ] 索引標籤之後:

    • 若要建立工作區,請在 [受控服務] 區段中啟用 [使用您自己的密鑰 ]。
    • 若要更新工作區,請啟用 受控服務
  7. 設定加密欄位。

    在 [Azure Databricks] 刀鋒視窗的 [受控磁碟] 區段中顯示字段

    • 在 [ 金鑰標識碼 ] 字段中,貼上受控 HSM 金鑰的密鑰標識碼。
    • 在 [訂用帳戶] 下拉式清單中,輸入 Azure 金鑰保存庫 密鑰的訂用帳戶名稱。
  8. 完成其餘索引標籤,然後按兩下 [ 檢閱 + 建立 ] 或 [儲存 ] (用於更新工作區)。

使用 Azure CLI

建立或更新工作區:

針對建立和更新,請將這些欄位新增至 命令:

  • managed-services-key-name:受控 HSM 名稱
  • managed-services-key-vault:受控 HSM URI
  • managed-services-key-version:受控 HSM 版本

使用這些欄位建立工作區的範例:

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 URI
  • ManagedServicesKeyVaultPropertiesKeyVersion:受控 HSM 版本

使用這些欄位建立工作區的範例:

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

稍後輪替金鑰

如果您已經針對受控服務使用客戶管理的金鑰,您可以使用新的金鑰版本或全新的金鑰來更新工作區。 這稱為 金鑰輪替

  1. 在受控 HSM 保存庫中建立新的金鑰或輪替現有的金鑰。

    請確定新金鑰具有適當的許可權。

  2. 使用入口網站、CLI 或 PowerShell 以新金鑰更新工作區。 請參閱 步驟 3:將密鑰新增至工作區 ,並遵循工作區更新的指示。 請確定您針對資源組名和工作區名稱使用相同的值,以便更新現有的工作區,而不是建立新的工作區。 除了金鑰相關參數的變更以外,請使用用於建立工作區的相同參數。

    重要

    如果您輪替金鑰,則必須保留舊密鑰 24 小時。

  3. 選擇性地 匯出並重新匯入現有的筆記本,以確保所有現有的筆記本 都使用新的密鑰。