“this.Client.SubscriptionId”不能为空

Mik*_*cox 10 powershell azure subscription

我们注意到我们的 Azure 订阅字段为空,例如:

Get-AzContext -ListAvailable 

Name                                     Account             SubscriptionName    Environment         TenantId
----                                     -------             ----------------    -----------         --------
kk89gan-db99-41c8-95c4-d43adfdfaf34ad ... mymy@outlook.zzz ...                     AzureCloud          674ce2a1-d4sd1da..
Run Code Online (Sandbox Code Playgroud)

因此,当我尝试在 ps 命令上运行时,我收到错误:

New-AzResourceGroup -Name az1rg -Location 'eastus'
New-AzResourceGroup : 'this.Client.SubscriptionId' cannot be null.
At line:1 char:1
Run Code Online (Sandbox Code Playgroud)

All*_* Wu 7

如果您未设置 Azure 订阅,则在没有订阅的情况下,您将无法创建任何 Azure 资源。

您需要使用Get-AzSubscription来列出所有可用的订阅。

然后使用 设置订阅Select-AzSubscription {subscription id}

现在您可以创建 Azure 资源。

我注意到您的帐户似乎是访客用户,对吧?

如果是这样,您应该首先将访客用户指定为订阅的管理员。然后来宾用户就可以在 Powershell 中看到订阅。


小智 7

如果您使用托管身份进行身份验证,但自动化帐户(或功能应用程序)未分配角色,也会出现此错误。分配角色(大概)会在订阅中“驻留”此身份,并在身份验证期间自动填充此属性。

2019 年报告的问题: https ://github.com/Azure/Azure-Functions/issues/1285


Uda*_*ran 7

将您的系统管理身份添加为订阅级别的贡献者角色。

在此输入图像描述

在订阅级别添加贡献者角色。

在此输入图像描述

如果我错了请纠正我。谢谢。