我正在围绕azure进行一些自动化,特别是登录并从已建立的密钥保险库中获取秘密。我需要在非交互式脚本中执行此操作,但是当我运行Login-AzureRmAccount时,身份验证似乎会立即丢失:
Login-AzureRmAccount -Credential $psCred -ErrorAction Stop
Write-Host "Login Complete"
$secret = Get-AzureKeyVaultSecret -VaultName $Vault -Name $SecretName
此脚本输出:
登录完成
Get-AzureKeyVaultSecret:您的Azure凭据尚未设置或已过期,请运行Login-AzureRmAccount进行设置 您的Azure凭据。
在C:\ temp \ test.ps1:29 char:11
+ $ secret = Get-AzureKeyVaultSecret -VaultName $ Vault -Name $ SecretName
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~
+ CategoryInfo:CloseError:(:) [Get-AzureKeyVaultSecret],ArgumentException
+ FullyQualifiedErrorId:Microsoft.Azure.Commands.KeyVault.GetAzureKeyVaultSecret
答案 0 :(得分:0)
看起来您正在尝试使用官方存储库中描述的“尚不支持”的功能 - 这里是GitHub issue,您可能会在其中看到(可能)原因发生在这里是提出变通方法的GitHub issue。基本上,您需要使用证书进行身份验证而不是凭据。