将变量组链接到 Azure 密钥库中的机密

本文介绍如何创建链接到 Azure 密钥保管库中存储的机密的变量组。 通过将变量组链接到密钥保管库,可以确保机密安全存储,并且管道始终有权访问运行时的最新机密值。

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

可以创建一个变量组,该变量组链接到现有的 Azure 密钥保管库,并将所选密钥保管库机密映射到变量组。 只有机密名称会被映射到变量组中,而机密值不会被映射到变量组中。 管道运行时,它们链接到变量组,以便在运行时从保管库中提取最新的机密值。

对密钥保管库中现有机密所做的任何更改,都会自动提供给使用该变量组的所有管道。 但是,如果在保管库中添加或删除机密,则相关的变量组不会自动更新。 必须显式更新要包含在变量组中的机密。

虽然密钥保管库支持在 Azure 中存储和管理加密密钥和证书,但 Azure Pipelines 变量组集成仅支持映射密钥保管库机密。 不支持加密密钥和证书。

注意

不支持使用 Azure 基于角色的访问控制l (Azure RBAC) 的 Azure 保管库。

先决条件

创建 key vault

创建 Azure Key Vault。

  1. 在 Azure 门户中,选择“创建资源”。
  2. 搜索并选择密钥库,然后选择“创建”。
  3. 选择订阅。
  4. 选择现有资源组,或创建一个新组。
  5. 输入密钥保管库的名称。
  6. 选择区域。
  7. 选择“访问和配置”选项卡。
  8. 选择“保管库访问策略”。
  9. 选择帐户作为主体。
  10. 选择“查看 + 创建”,然后选择“创建” 。

创建链接到密钥保管库的变量组

  1. 在 Azure DevOps 项目中,选择管道>>+ 变量组
  2. 在“变量组”页面中,输入变量组的名称和可选描述。
  3. 启用链接 Azure Key Vault 中的机密作为变量切换。
  4. 选择服务连接,然后选择“ 授权”。
  5. 选择密钥保管库名称,并通过选择保管库名称旁边的“授权来启用 Azure DevOps 访问密钥保管库。
  6. 选择 “+ 添加” ,然后在 “选择机密 ”屏幕上,从保管库中选择用于映射到此变量组的机密,然后选择“ 确定”。
  7. 选择“保存”以保存机密变量组。

屏幕截图显示变量组与 Azure 密钥保管库的集成。

注意

服务连接必须至少 具有密钥保管库的“获取 ”和 “列出 ”权限,可以在前面的步骤中授权。 也可以通过以下步骤从 Azure 门户提供这些权限:

  1. 打开密钥保管库的“设置”,然后选择访问配置>转到访问策略
  2. 在“访问策略”页上,如果 Azure Pipelines 项目未在“应用程序”下至少具有 GetList 权限,请选择“创建”。
  3. 在“机密权限”下,选择 GetList,然后选择“下一步”。
  4. 选择主体,然后选择“ 下一步”。
  5. 再次选择“下一步”,查看设置,然后选择“创建”。

有关详细信息,请参阅使用 Azure 密钥保管库机密