Azure Powershell:Get-AzureStorageAccount错误

时间:2015-03-25 09:48:12

标签: azure azure-powershell

运行cmdlet Get-AzureStorageAccount时,出现以下错误(请参阅下文)。我已经连接到我的订阅,(get-AzureSubscriptions会返回订阅ID和名称,但CurrentStorageAccountName为空白。 Get-AzureLocation也失败了。

任何指针???

PS C:\> Get-AzureStorageAccount
VERBOSE: 09:42:35 - Begin Operation: Get-AzureStorageAccount
Get-AzureStorageAccount : An error occurred while sending the request.
At line:1 char:1
+ Get-AzureStorageAccount
+ ~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Get-AzureStorageAccount], HttpRequestException
    + FullyQualifiedErrorId : System.Net.Http.HttpRequestException,Microsoft.WindowsAzure.Commands.ServiceManagement.S
   torageServices.GetAzureStorageAccountCommand

2 个答案:

答案 0 :(得分:4)

如果Azure PowerShell cmdlet在Azure服务管理(ASM)模式下运行但存储帐户是在资源管理器模式下创建的,则可能发生这种情况的一个原因。非经典资源通常通过ASM不可见,如果要查看它们,必须让PowerShell使用Azure资源管理器(ARM)模式。

(我无法确定这是否是您所遇到的问题,但即使不是,也可能对其他登陆此类错误的人有用。 )

在Azure门户中创建新的存储帐户时,您可以选择“经典”和#39;和资源经理'模式。此选择有各种微妙的含义,其中之一是如果您选择资源管理器模式,则通过旧的ASM管理API将无法看到该帐户。

如果您正在使用Get-AzureStorageAccount,那么您可能正在使用ASM。在Azure PowerShell cmdlet v1.0(2015年11月发布)之前,除非使用Switch-AzureMode cmdlet切换到AzureResourceManager模式,否则PowerShell会将ASM用于所有内容。从v1.0开始,它们实际上已经拆分了命令,所以如果你想使用ARM API,你可以使用Get-AzureRmStorageAccount

[编辑2016年11月9日:已删除的段落错误地说您无法使用Live ID登录。不知道我在想什么。您无法在ARM中使用管理证书,但您当然可以使用Live ID登录。]

可能有另一种选择。如果您碰巧通过其他方式了解存储帐户密钥,则只需使用New-AzureStorageContext -StorageAccountName <youraccount> -StorageAccountKey <your key>,然后您就可以通过其他Azure cmdlet使用该帐户。

但是,如果您希望能够发现帐户,或者想要使用PowerShell cmdlet查找其凭据,那么如果这些帐户是在资源管理器模式下创建的,那么您需要使用AAD帐户登录并使用{ {1}}如果您使用的是v1,或者您使用的是旧版本,请先执行Get-AzureRmStorageAccount

答案 1 :(得分:0)

确保选择Azure订阅:

Select-AzureSubscription -SubscriptionName "<my subscription name>"

然后您可以使用Get-AzureStorageAccount:

Get-AzureStorageAccount -StorageAccountName "<your storage account name>"

Get-AzureStorageAccount命令将返回Azure存储帐户的说明。这是一个示例输出:

StorageAccountDescription : Implicitly created storage service
AffinityGroup             :
Location                  : East US
GeoReplicationEnabled     : True
GeoPrimaryLocation        : East US
GeoSecondaryLocation      : West US
Label                     : <your storage account name>
StorageAccountStatus      : Created
StatusOfPrimary           : Available
StatusOfSecondary         : Available
Endpoints                 : {https://<your storage account name>.blob.core.windows.net/,
                            https://<your storage account name>.queue.core.windows.net/,
                            https://<your storage account name>.table.core.windows.net/}
AccountType               : Standard_GRS
StorageAccountName        : <your storage account name>
OperationDescription      : Get-AzureStorageAccount
OperationId               : <operation id>
OperationStatus           : Succeeded