为什么在使用Get-AzureRMStorageAccount时Connectionstring为空?

时间:2019-05-17 08:49:21

标签: azure-powershell azure-runbook azure-rm

我继承了在Azure RunBook中运行的Powershell脚本。 在脚本中,我们需要读取一个StorageQueue。我在连接到StorageAccount时遇到问题。

以下代码段在New-AzureStorageContext上失败,因为$ connectionString为空。

$storageContext = (Get-AzureRMStorageAccount | Where { $_.StorageAccountName -eq $storageAccountName }).Context 
$connectionString = $storageContext.ConnectionString
$storageContextNew = New-AzureStorageContext -ConnectionString $connectionString
$queues = Get-AzureStorageQueue -Prefix $queueNamePrefix -Context $storageContextNew

如何解决此问题,以便拥有ConnectionString并可以连接到队列?

1 个答案:

答案 0 :(得分:1)

请尝试以下命令来获取$context,然后使用它来获取队列。

$SAResourceGroupName="<resource group name>"
$StorageAccountName="<storage account name>"
$StorageAccountKey = (Get-AzureRmStorageAccountKey -ResourceGroupName $SAResourceGroupName -AccountName $StorageAccountName).Value[1]
$context=New-AzureStorageContext -StorageAccountName $StorageAccountName -StorageAccountKey $StorageAccountKey
$queues = Get-AzureStorageQueue -Prefix testqueue -Context $context

enter image description here