配置客户管理的密钥

Azure 数据资源管理器对静态存储帐户中的所有数据进行加密。 默认情况下,数据使用 Microsoft 管理的密钥进行加密。 为了更进一步控制加密密钥,可以提供客户管理的密钥来用于对数据进行加密。

客户管理的密钥必须存储在 Azure 密钥保管库中。 可以创建自己的密钥并将其存储在 Key Vault 中,或者使用 Azure Key Vault API 来生成密钥。 Azure 数据资源管理器群集和密钥保管库必须在同一个区域中,但可以在不同的订阅中。 有关客户管理的密钥的详细说明,请参阅客户管理的密钥与 Azure 密钥保管库

本文将介绍如何配置客户管理的密钥。

有关基于以前的 SDK 版本的代码示例,请参阅存档的文章

配置 Azure Key Vault

若要使用 Azure 数据资源管理器配置客户管理的密钥,必须在密钥保管库上设置两个属性:“软删除”和“不清除” 。 默认情况下未启用这些属性。 若要启用这些属性,请在 PowerShell 或 Azure CLI 中对新的或现有的密钥保管库执行“启用软删除”和“启用清除保护” 。 仅支持大小为 2048 的 RSA 密钥。 有关密钥的详细信息,请参阅密钥保管库密钥

注意

有关在主群集和子群集上使用客户托管密钥的限制,请参阅限制

为群集分配托管标识

若要为群集启用客户管理的密钥,请先将系统分配的托管标识或用户分配的托管标识分配给该群集。 你将使用此托管标识授予群集访问密钥保管库的权限。 若要配置托管标识,请参阅托管标识

使用客户托管密钥启用加密

以下部分介绍如何使用 Azure 门户启用客户管理的密钥加密。 默认情况下,Azure 数据资源管理器加密使用 Microsoft 托管密钥。 将 Azure 数据资源管理器群集配置为使用客户托管密钥,并指定要与群集关联的密钥。

  1. Azure 门户中,转到你的 Azure 数据资源管理器群集资源。

  2. 在门户左侧窗格中选择“设置”>“加密” 。

  3. 在“加密”窗格中,选择“客户管理的密钥”设置对应的“打开” 。

  4. 选择“选择密钥”。

    Screenshot showing configure customer-managed keys.

  5. 在“从 Azure 密钥保管库中选择密钥”窗口中,从下拉列表中选择现有的密钥保管库 。 如果选择“新建”以创建新的密钥保管库,则会路由到“创建密钥保管库”屏幕 。

  6. 选择“密钥”。

  7. 版本:

    • 为了确保此密钥始终使用最新密钥版本,请选中“始终使用当前密钥版本”复选框。
    • 否则请选择“版本”。
  8. 选择“选择” 。

    Screenshot showing the Select key from Azure Key Vault.

  9. 在“标识类型”下,选择“系统分配”或“用户分配” 。

  10. 如果选择“用户分配”,请从下拉列表中选取用户分配的标识。

    Screenshot showing the option to select a managed identity type.

  11. 在现已包含你的密钥的“加密”窗格中,选择“保存” 。 成功创建 CMK 后,“通知”中会显示一条成功消息。

    Screenshot showing option to save a customer-managed key.

如果在为 Azure 数据资源管理器群集启用客户管理的密钥时选择了系统分配的标识,则将为该群集创建系统分配的标识(如果不存在)。 此外,你需要为 Azure 数据资源管理器群集提供对所选密钥保管库的所需 get、wrapKey 和 unwrapKey 权限,并获取密钥保管库属性。

注意

创建客户管理的密钥后,选择“关闭”会将其删除。

更新密钥版本

创建密钥的新版本时,需将群集更新为使用新版本。 首先调用 Get-AzKeyVaultKey 以获取最新密钥版本。 然后,将群集的密钥保管库属性更新为使用新的密钥版本,如使用客户管理的密钥启用加密中所示。