使用 Azure CLI 为 DBFS 配置 HSM 客户管理的密钥
注意
此功能仅在高级计划中提供。
可以使用 Azure CLI 来配置自己的加密密钥以加密工作区存储帐户。 本文介绍如何从 Azure 密钥保管库托管 HSM 配置自己的密钥。 有关从 Azure 密钥保管库保管库使用密钥的说明,请参阅使用 Azure CLI 为 DBFS 配置客户管理的密钥。
重要
Key Vault 必须与你的 Azure Databricks 工作区位于同一 Azure 租户中。
要详细了解用于 DBFS 的客户管理的密钥,请参阅为 DBFS 根配置客户管理的密钥。
安装 Azure Databricks CLI 扩展
安装 Azure Databricks CLI 扩展。
az extension add --name databricks
准备新的或现有的用于加密的 Azure Databricks 工作区
请将括号中的占位符值替换为你自己的值。 <workspace-name>
是 Azure 门户中显示的资源名称。
az cloud set -n AzureChinaCloud
az login
# az cloud set -n AzureCloud //means return to Public Azure.
az account set --subscription <subscription-id>
为创建工作区期间的加密做准备:
az databricks workspace create --name <workspace-name> --location <workspace-location> --resource-group <resource-group> --sku premium --prepare-encryption
准备用于加密的现有工作区:
az databricks workspace update --name <workspace-name> --resource-group <resource-group> --prepare-encryption
记下命令输出的 storageAccountIdentity
部分中的 principalId
字段。 在密钥保管库上配置角色分配时,需将其作为托管标识值提供。
有关 Azure Databricks 工作区的 Azure CLI 命令的详细信息,请参阅 az databricks workspace 命令参考。
创建 Azure 密钥保管库托管 HSM 和 HSM 密钥
可以使用现有的 Azure Key Vault 托管 HSM,也可以按照快速入门:使用 Azure CLI 预配和激活托管 HSM 创建并激活新的 HSM。 Azure 密钥保管库托管 HSM 必须启用清除保护。
要创建 HSM 密钥,请按照创建 HSM 密钥中的说明进行操作。
配置托管 HSM 角色分配
请为密钥保管库托管 HSM 配置角色分配,以便 Azure Databricks 工作区有权访问它。 请将括号中的占位符值替换为你自己的值。
az keyvault role assignment create \
--role "Managed HSM Crypto Service Encryption User" \
--scope "/" \
--hsm-name <hsm-name> \
--assignee-object-id <managed-identity>
将 <managed-identity>
替换为准备用于加密的工作区时记下的 principalId
值。
使用客户管理的密钥配置 DBFS 加密
将 Azure Databricks 工作区配置为使用在 Azure Key Vault 中创建的密钥。
将占位符值替换为你自己的值。
az databricks workspace update --name <workspace-name> --resource-group <resource-group> --key-source Microsoft.KeyVault --key-name <key> --key-vault <hsm-uri> --key-version <key-version>
禁用客户托管密钥
在你禁用客户管理的密钥时,会再次使用 Azure 管理的密钥来加密你的存储帐户。
请将括号中的占位符值替换为你自己的值,并使用在前面步骤中定义的变量。
az databricks workspace update --name <workspace-name> --resource-group <resource-group> --key-source Default