你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

使用 Azure 密钥库为 Azure 负载测试配置客户管理的密钥

Azure 负载测试使用 Microsoft 提供的密钥(服务管理的密钥)自动加密负载测试资源中存储的所有数据。 或者,还可以通过提供自己的(客户管理的)密钥来添加第二层安全性。 客户管理的密钥在控制访问和使用密钥轮换策略方面可提供更大的灵活性。

将使用 Azure Key Vault 来安全存储你提供的密钥。 可以为使用客户管理的密钥启用的每个 Azure 负载测试资源创建单独的密钥。

使用客户管理的加密密钥时,需要指定用户分配的托管标识以从 Azure 密钥库检索密钥。

Azure 负载测试使用客户管理的密钥来加密负载测试资源中的以下数据:

  • 测试脚本和配置文件
  • 机密
  • 环境变量

注意

Azure 负载测试不会使用客户管理的密钥加密测试运行的指标数据,包括你在 JMeter 脚本中指定的 JMeter 指标采样器名称。 Microsoft 有权访问此指标数据。

先决条件

  • 具有活动订阅的 Azure 帐户。 如果没有 Azure 订阅,请在开始之前创建一个免费帐户

  • 现有的用户分配的托管标识。 有关如何创建用户分配的托管标识的详细信息,请参阅管理用户分配的托管标识

限制

  • 客户管理的密钥仅适用于新的 Azure 负载测试资源。 应在资源创建期间配置密钥。

  • 在资源上启用客户管理的密钥加密后,无法禁用它。

  • Azure 负载测试无法自动轮换客户管理的密钥以使用最新版本的加密密钥。 在 Azure Key Vault 中轮换密钥后,应更新资源中的密钥 URI。

配置 Azure 密钥保管库

若要将客户管理的加密密钥用于 Azure 负载测试,需要将密钥存储在 Azure 密钥库中。 可以使用现有的密钥保管库或创建新的密钥保管库。 负载测试资源和密钥保管库可能位于同一租户的不同区域或订阅中。

使用客户管理的加密密钥时,请确保配置以下密钥保管库设置。

配置密钥保管库网络设置

如果通过防火墙或虚拟网络限制对 Azure 密钥保管库的访问,则需要授予对 Azure 负载测试的访问权限,以便检索客户管理的密钥。 按照以下步骤授予对受信任的 Azure 服务的访问权限。

配置软删除和清除保护

必须将密钥保管库上的软删除清除保护属性设置为将客户管理的密钥与 Azure 负载测试配合使用。 创建新密钥保管库且无法禁用时,默认启用软删除。 可以随时启用清除保护。 详细了解 Azure 密钥库中的软删除和清除保护。

按照以下步骤验证是否启用了软删除并在密钥保管库上启用它。 创建新密钥保管库时,默认能够进行软删除。

可以通过选择“启用清除保护设置”来创建新的密钥保管库启用清除保护

Screenshot that shows how to enable purge protection when creating a new key vault in the Azure portal.

若要在现有密钥保管库上启用清除保护,请执行以下步骤:

  1. 在 Azure 门户中导航到密钥保管库。
  2. 在“设置”下面,选择“属性”。
  3. 在“清除保护”部分,选择“启用清除保护” 。

将客户管理的密钥添加到 Azure 密钥库

接下来,在密钥保管库中添加密钥。 Azure 负载测试加密支持 RSA 密钥。 有关 Azure 密钥库中支持的密钥类型的详细信息,请参阅“关于密钥”。

若要了解如何使用 Azure 门户添加密钥,请参阅使用 Azure 门户在 Azure Key Vault 中设置和检索密钥

将访问策略添加到密钥保管库

使用客户管理的加密密钥时,必须指定用户分配的托管标识。 用于访问 Azure 密钥库中客户管理的密钥的用户分配的托管标识必须具有访问密钥保管库的适当权限。

  1. Azure 门户中,转到计划用于托管加密密钥的 Azure 密钥保管库实例。

  2. 从左侧菜单中选择“访问策略”。

    Screenshot that shows the access policies option for a key vault in the Azure portal.

  3. 选择“+ 添加访问策略”

  4. “密钥权限”下拉菜单中,选择“获取”、“解包密钥”和包装密钥”权限。

    Screenshot that shows Azure Key Vault permissions.

  5. “选择主体”中,选择无”。

  6. 搜索之前创建的用户分配的托管标识,并从列表中选择它。

  7. 选择底部的“选择”。

  8. 选择“添加”以添加新的访问策略

  9. 选择“ 保存 密钥保管库”实例以保存所有更改。

将客户管理的密钥与 Azure 负载测试配合使用

只能在创建新的 Azure 负载测试资源时配置客户管理的加密密钥。 指定加密密钥详细信息时,还必须选择用户分配的托管标识,以便从 Azure 密钥库检索密钥。

若要为新的负载测试资源配置客户管理的密钥,请执行以下步骤:

  1. 按照以下步骤在Azure 门户中创建 Azure 负载测试资源,并在“基本信息”选项卡上填写字段

  2. 转到“加密”选项卡,然后选择加密类型”字段的客户管理的密钥(CMK)。

  3. 在“密钥 URI”字段中,粘贴 Azure Key Vault 密钥的 URI/密钥标识符,包括密钥版本

  4. 对于“用户分配的标识”字段,选择现有用户分配的托管标识。

  5. 选择“查看 + 创建”以验证并创建新资源

Screenshot that shows how to enable customer managed key encryption while creating an Azure load testing resource.

更改用于检索加密密钥的托管标识

可以随时更改现有负载测试资源的客户管理的密钥的托管标识。

  1. Azure 门户中,转到你的 Azure 负载测试资源。

  2. 在“设置”页上,选择“加密”

    加密 类型 显示用于创建负载测试资源的加密类型。

  3. 如果加密类型是“客户管理的密钥”,请选择用于对密钥保管库进行身份验证的标识类型。 选项包括系统分配(默认)或用户分配 。

    若要详细了解每种类型的托管标识,请参阅托管标识类型

    • 如果选择“ 系统分配”,则需要在资源上启用系统分配的托管标识,并在更改客户管理的密钥的标识之前授予对 AKV 的访问权限。
    • 如果选择“用户分配”,则必须选择有权访问密钥保管库的现有用户分配标识。 若要了解如何创建用户分配的标识,请参阅将托管标识用于 Azure 负载测试预览版
  4. 保存所做更改。

Screenshot that shows how to change the managed identity for customer managed keys on an existing Azure load testing resource.

更新客户管理的加密密钥

可以随时更改用于 Azure 负载测试加密的密钥。 若要使用 Azure 门户更改密钥,请执行以下步骤:

  1. Azure 门户中,转到你的 Azure 负载测试资源。

  2. 在“设置”页上,选择“加密”。 “加密类型”显示在创建资源时为其选择的加密

  3. 如果所选加密类型为 客户管理的密钥,则可以使用新密钥 URI 编辑 密钥 URI 字段。

  4. 保存所做更改。

轮换加密密钥

可以根据自己的合规性策略,在 Azure 密钥保管库中轮换客户管理的密钥。 若要轮换密钥,请执行以下操作:

  1. 在 Azure 密钥库中,更新密钥版本或创建新密钥。
  2. 更新负载测试资源的客户管理的加密密钥

常见问题

是否收取额外的费用来启用客户管理的密钥?

否,启用此功能不收取任何费用。

现有 Azure 负载测试资源是否支持客户管理的密钥?

此功能目前仅适用于新的 Azure 负载测试资源。

如何判断是否在 Azure 负载测试资源上启用了客户管理的密钥?

  1. Azure 门户中,转到你的 Azure 负载测试资源。
  2. 转到左侧导航栏中的“加密”项
  3. 可以验证资源的“加密类型”

如何吊销加密密钥?

可以通过在 Azure Key Vault 中禁用密钥的最新版本来撤销密钥。 或者,若要从密钥保管库实例撤消所有密钥,可以删除授予负载测试资源的托管标识的访问策略。

撤销加密密钥时,可能能够运行大约 10 分钟的测试,之后唯一可用的操作是删除资源。 建议轮换密钥,而不是撤销密钥来管理资源安全性并保留数据。