【问题标题】:Azure Cloud Shell Always Returns Null For $keyVault = Get-AzKeyVault -VaultName $keyVaultName -ResourceGroupName $rgName CommandAzure Cloud Shell 对于 $keyVault = Get-AzKeyVault -VaultName $keyVaultName -ResourceGroupName $rgName 命令始终返回 Null
【发布时间】:2019-09-02 10:35:44
【问题描述】:
我正在运行以下命令以在我的 Azure Cloud Shell 实例中获取我的 KeyVault 实例。但同样的总是空的。
$keyVaultName = "az203vmencryptdisk"
$rgName = "az203"
$vmName = "az203"
$keyVault = Get-AzKeyVault -VaultName $keyVaultName -ResourceGroupName $rgName
$diskEncryptionKeyVaultUrl = $keyVault.VaultUri
因为$diskEncryptionKeyVaultUrl 的值始终为空,我无法继续进行。有人遇到过这个问题吗?
【问题讨论】:
标签:
azure
powershell
command-line-interface
azure-keyvault
azure-cloud-shell
【解决方案1】:
我终于自己弄清楚了这个问题。我的帐户有两个订阅。而且我知道要在 Azure 门户中运行 Cloud Shell,我们需要一个相关的存储帐户,我在其他订阅中有这样的存储帐户。
所以我的假设是 Azure 将这个存储帐户用于我的所有订阅,以避免多个存储帐户用于多个订阅,用于相同类型的元数据。
问题是 Azure Portal 不够聪明,无法找到我当前使用的订阅,至少它可能是一个错误。因此,我所要做的就是将上下文设置为我拥有 KeyVault 的订阅。
Set-AzureRmContext -Subscription "subscriptionid"
然后我运行了前面的命令。
$keyVaultName = "az203vmencryptdisk"
$rgName = "az203"
$vmName = "az203"
$keyVault = Get-AzKeyVault -VaultName $keyVaultName -ResourceGroupName $rgName
$diskEncryptionKeyVaultUrl = $keyVault.VaultUri
我能够得到我正在寻找的输出。
希望对你有帮助。