我已经使用 ARM 在 Azure DevOps 中创建了一个 Key Vault,现在我想在同一管道中向它写入一个密钥。
我使用以下内联 PowerShell 创建了一个 Azure PowerShell 任务:
$secretvalue = ConvertTo-SecureString $(Secret) -AsPlainText -Force
Set-AzureKeyVaultSecret -VaultName $(VaultName) -Name $(SecretName) -SecretValue (ConvertTo-SecureString $(Secret) -AsPlainText -Force)
密钥保管库创建得很好,但在尝试写入密钥时出现以下错误:
[error]Access denied
如果我跑Set-AzureKeyVaultSecret
在我的本地机器上它工作正常。
EDIT
这是我所做的一些屏幕截图。在 Azure DevOps 中,我创建了一个服务连接并验证了它:
以下是将机密写入保管库的 Azure PowerShell 任务的样子:
密钥保管库权限:
我是否需要单独的服务主体,或者是否需要创建应用程序注册?
很确定您将权利授予了错误的实体。要找到正确的实体,请执行此操作。
Click Manage
链接在Azure Subscription
字段,它将引导您到新的刀片。点击Manage Service Principal
那里。它将带您进入 Azure AD 中的应用程序页面。之后您可以将名称复制到下面Managed application in local directory
字段并使用该名称授予其 Key Vault 权限。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)