Add-AzureAccount issue: Your Azure credentials have not been set up or have expired

For some reason, I started experiencing this issue. Tried clearing the local cache, temp folders or cookies etc but none helped. So grabbed fiddler log to see what is going wrong. Noticed it was having the very old session token (3-4 months older) getting served for some reason and no clue where it lies also. Checked few command lets to clear this out within PS and noted Clear-AzureProfile flushed the older tokens which resolved this issue.

PS C:\WINDOWS\system32> Add-AzureAccount

Id Type Subscriptions Tenants

-- ---- ------------- ------- User xx-c5bc-xx-a7e0-xx{xxx-86f1-41af-91ab-xxxx}

PS C:\WINDOWS\system32> Get-AzureRoleSize

Get-AzureRoleSize : Your Azure credentials have not been set up or have expired, please run Add-AzureAccount to set up your Azure credentials.

At line:1 char:1

+ Get-AzureRoleSize

+ ~~~~~~~~~~~~~~~~~

+ CategoryInfo : CloseError: (:) [Get-AzureRoleSize], ArgumentException

+ FullyQualifiedErrorId : Microsoft.WindowsAzure.Commands.ServiceManagement.HostedServices.AzureRoleSizeCommand



Run the Clear-AzureProfle Commandlet and then try Add-AzureAccount to get the valid bearer token to continue.

PS C:\WINDOWS\system32> Clear-AzureProfile –Force

Let me know if you see this issue and root cause for this.

Happy scripting…

Comments (9)
  1. Kathy Harwood says:

    You are my saviour – I was going absolutely mad with this exact same problem. Thank you so much.

  2. stej says:

    Helped a lot! Thanks for sharing.

  3. Karen says:

    Thank you so much, perfect solution. I think its because I’ve used Azure a few times on same machine with different subscriptions so it must have remembered something from previous one. Thank you

  4. RK Vedula says:

    Wow… Thank you very much 🙂

  5. Adam Levitt says:

    This is not working for me when I attempt to get access to an Azure SQL database.

  6. Rohitesh Thakur says:

    Bulls eye !! Works for me as well. Thanks so much.

  7. Mark-MSFT says:

    The root issue is likely that the token cache wasn’t refreshed during your login, there appear to be some circumstances in which expired refresh tokens are not updated when new refresh tokens are returned during login. Clear-AzureProfile automatically clears the entire token cache, so that the new refresh tokens returned by login are automatically renewed.

    To see if this is the issue, after importing the module, you can run

    [Microsoft.Azure.Commands.Common.Authentication.AzureSession]::Instance.TokenCache.ReadItems() | select -Property DisplayableId, Resource, ExpiresOn

    1. Thanks Mark. We will check and update here.

  8. This saved us. We’re using an Azure Active Directory account to Login; the account’s password expired on Tuesday. We found that we had to run `Clear-AzureProfile -Force` in order for AzureRM cmdlets (such as `Invoke-AzureRmResourceAction`) to work even following Add-AzureRmAccount and Set-AzureRmContext.

Comments are closed.

Skip to main content