gpt4 book ai didi

azure - 在 Azure DevOps Powershell 脚本中动态获取 Key Vault secret

转载 作者:行者123 更新时间:2023-12-02 23:04:57 26 4
gpt4 key购买 nike

我们的发布管道中有一个 Azure Key Vault 任务,它会下载一些 secret 以在阶段中使用。

在内联 Azure PowerShell 脚本中,您只需使用以下命令即可获取 secret 值:

$secretValue = $(nameOfTheSecretInKeyVault)

这很好用。

但是,我们希望转而使用存储库中的脚本,即将 DevOps 任务指向文件路径,即/somePath/myScript.ps1

所以我需要对上面的代码行进行参数化,因为我不能像我目前所做的那样更改内联脚本中的名称,但我无法让它工作。

我已经尝试过:

$compositeName = "${someParameter}-Application"
$secretValue1 = $($compositeName)
$secretValue2 = $("${compositeName}")
$secretValue3 = env:$compositeName
$secretValue4 = $(${compositeName})

顶行只是建立它需要查找的 secret 的名称。不幸的是这些都不起作用。尝试 #1、#2 和 #4 仅返回字符串名称,而没有实际获取 secret 值,而 #3 错误表明它不存在。

有没有办法实现这一点,或者我只需要参数化 secret 并将其从 ADO 任务传递到脚本中?

最佳答案

和您一样,我无法找到一种方法来访问日志提到的在作业的下载 secret 任务中加载的变量。它确实可以在内联模式下工作,但不能在内联模式下工作。

因此,我利用现有的接线(链接到我的 KeyVault 的变量组)并在脚本开始时自己运行命令:

$mySecretValue = (Get-AzKeyVaultSecret -VaultName "myVault" -Name "mySecret").SecretValueText

从那里我可以将它用作任何其他变量。

关于azure - 在 Azure DevOps Powershell 脚本中动态获取 Key Vault secret ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58607998/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com