从Azure构建/发布管道访问Azure密钥库

时间:2020-05-28 10:22:44

标签: azure azure-pipelines

我们在Azure构建/发布管道上运行了一些单元测试/集成测试。很少有测试可以从密钥库中检索机密,但这些测试失败了,因为编写的代码是使用MSI和Azure应用程序身份验证功能从密钥库中获取机密的由于未为MSI启用管道,因此密钥库调用失败,因此测试也失败了。在这种情况下,管道可以成功访问密钥库的替代方案是什么?

注意:我已经浏览过一些文章,建议使用变量组和蔚蓝的键盘保护任务,但对我的情况没有帮助。寻找替代方法。

1 个答案:

答案 0 :(得分:0)

注意:我已经阅读了有关建议使用变量的文章 分组和蔚蓝的键盘保管任务,但对我的情况没有帮助。 替代品。

您可以尝试两个方向:

  1. 配置self-hosted agent以在本地环境中运行管道。当然,应该为代理配置您的托管身份。

  2. 根据this blog中的步骤5:

    AzureServiceTokenProvider将使用开发人员的安全上下文来获取令牌以对Key Vault进行身份验证。这样就无需创建服务主体并与开发团队共享。它还可以防止将凭据签入源代码。 AzureServiceTokenProvider将使用Azure CLI或Active Directory集成身份验证对Azure AD进行身份验证以获取令牌。该令牌将用于从Azure Key Vault中获取机密。

您可以使用Azure Cli任务在命令行中运行测试。选中此similar issue