无法在 Azure Key Vault 中设置机密值

Cannot set secret value in Azure Key Vault

我正在尝试使用 Azure Key Vault 创建 "secret value"。我正在关注位于此处的 Microsoft 的教程... https://azure.microsoft.com/en-us/documentation/articles/key-vault-get-started/

我能够使用 ...

创建 Key Vault
New-AzureRmKeyVault -VaultName 'MyKeyVaultName' -ResourceGroupName 'MyResourceGroup' -Location 'West US'

我还可以验证它是使用...创建的...

Get-AzureRmKeyVault

我可以使用以下方法创建 秘密值...

$secretvalue = ConvertTo-SecureString 'Pa$$w0rd' -AsPlainText -Force

但是当我尝试设置键时...

$secret = Set-AzureKeyVaultSecret -VaultName 'MyKeyVaultName' -Name 'SQLPassword' -SecretValue $secretvalue

我收到一个错误

Set-AzureKeyVaultSecret : Operation "set" is not allowed

我以为我已经通过创建 Key Vault 获得了所有访问权限?我需要添加特定权限吗?

这是 powershell 错误的屏幕截图

可能是权限问题。请尝试以下操作:

Set-AzureRmKeyVaultAccessPolicy –VaultName ‘{your vault name}’ –UserPrincipalName ‘{your account email}’ –PermissionsToKeys all –PermissionsToSecrets all

您遇到的问题是您没有创建密钥来附加秘密,您需要调用 Add-AzureKeyVaultKey 来创建该密钥。像这样...

$vault = Get-AzureRmKeyVault    

$secretvalue = ConvertTo-SecureString 'Pa$$w0rd' `
              -AsPlainText -Force  

$key = Add-AzureKeyVaultKey -VaultName $vault.VaultName `
              -Name Test01 `
              -Destination Software   

(Get-AzureKeyVaultSecret -VaultName $vault.VaultName `
              -Name test01).SecretValueText  

其中 returns

Pa$$w0rd