首页 > 解决方案 > Maven 使用 azure CICD - 如何保护我的用户凭据

问题描述

我正在本地环境中准备好我的测试用例,并准备好转移到 azure CICD 管道中。

要运行测试用例,我需要一些设置,包括用户凭据。现在,当我将代码从本地移动到 clod 时,出于安全考虑,我无法传递用户凭据。

我阅读了一些关于 Azure Key Vault 的文章来保存机密,然后我们可以在管道中阅读它。

但是任何人都知道如何在 Azure Pipeline 的 Maven 任务中传递/读取 Azure 密钥库机密,这样我就不必在代码本身中保存凭据。

也欢迎其他解决方案。

标签: mavensecurityazure-devopsazure-pipelinesazure-keyvault

解决方案


选项之一是使用变量 group。您可以将变量组与 Azure Key Vault 链接:

在此处输入图像描述

然后,当您在管道中使用此变量组时,您将获得可用作变量的秘密。

因此,如果您MyPassword在 Azure Key Vault 中有机密并且您将按照上述所有步骤进行操作,那么在管道中您可以将其称为$(MyPassword).

另一种选择是使用Azure Key Vault 任务

以最简单的方式,您可以使用秘密变量: 在此处输入图像描述

或变量组中的秘密变量:

在此处输入图像描述

在 Maven 任务中,您可以使用如下变量mavenPomFile: $(YourVariables)

- task: Maven@3
  inputs:
    mavenPomFile: $(YourVariables)
    publishJUnitResults: true
    testResultsFiles: '**/surefire-reports/TEST-*.xml'
    javaHomeOption: 'JDKVersion'
    mavenVersionOption: 'Default'
    mavenAuthenticateFeed: false
    effectivePomSkip: false
    sonarQubeRunAnalysis: false

推荐阅读