''this.Client.SubscriptionId' cannot be null

We noticed that our Azure Subscription field is empty eg:

Get-AzContext -ListAvailable 

Name                                     Account             SubscriptionName    Environment         TenantId
----                                     -------             ----------------    -----------         --------
kk89gan-db99-41c8-95c4-d43adfdfaf34ad ... [email protected] ...                     AzureCloud          674ce2a1-d4sd1da..

so when I try to run on ps command, I receive an error:

New-AzResourceGroup -Name az1rg -Location 'eastus'
New-AzResourceGroup : 'this.Client.SubscriptionId' cannot be null.
At line:1 char:1


Solution 1:[1]

If you don't set an Azure subscription, you won't be allowed to create any Azure resources without the subscription.

You need use Get-AzSubscription to list all the available subscriptions.

Then set the subscription by using Select-AzSubscription {subscription id}.

Now you could create Azure resources.

I notice that your account seems to be a guest user right?

If so, you should assign the guest user as an administrator of a subscription at first. Then the guest user can see the subscription in Powershell.

Solution 2:[2]

The following works

  1. Use Get-AzSubscription to list all the available subscriptions.

  2. Set the subscription by using Select-AzSubscription {subscription id}.

Solution 3:[3]

This error also occurs if you are using a Managed Identity to authenticate, but the Automation Account (or Functional App) does not have a Role assigned. Assigning a Role (presumably) "homes" this identity in Subscription and populates this property automatically during authentication.

Issue reported in 2019: https://github.com/Azure/Azure-Functions/issues/1285

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Allen Wu
Solution 2 durces
Solution 3 kevmaitland