Open3

Azure PowerShell 操作など手間取った所についてまとめ

ColloidColloid

Azure PowerShellを入れたり操作する機会があり、導入や操作など色々手間取った所が発生したらどのように解決したかとかをメモのようにゆるく残す場です。

ColloidColloid

Azure PowerShellの動作環境について

そもそもAzure PowerShellは、PowerShellが必要(当たり前)
弊環境はPowerShellの5系バージョンがインストール済に対し、Azure PowerShellの推奨バージョンは7系なのでアップデート。
ここで勘違いしていたのが、PowerShellは5系と7系は別アプリとなっており、それに気が付かず5のPowerShellでひたすらAzure PowerShellを入れようとしてエラーを出すということをしていた…。

Windowsのアプリ一覧から見る違いとして
PowerShell 5系だと、Windows PowerShell
PowerShell 7系だと、PowerShell7
の違いがあるので、色々と注意すべき。

参考MS Larn(ドキュメント): Installing PowerShell on Windows
Install the Azure Az PowerShell module

ColloidColloid

Azure PowerShell にAzureアカウントを連携しようとしたらエラー出た

上記で無事Azure PowerShellを入れたあと、Connect-AzAccountコマンドでAzure PowerShellとAzureアカウントを紐付けようとしたら以下のエラーがでた。
具体的な振る舞いとしては、ブラウザでいつものMSアカウントログイン画面→正常にログインした後のコンソールに以下の出力:

Connect-AzAccount: SharedTokenCacheCredential authentication unavailable. No account matching the specified username: (ユーザー名) was found in the cache.

エラー文的にはアカウントがキャッシュに見つからなくてマッチング出来なかったよ的な旨だそうな。
調べると色々出てきたけど、私の場合は以下のIssueを参考にしてうまくいった。

https://github.com/Azure/azure-powershell/issues/13517

はじめにClear-AzContextコマンドでキャッシュを削除しConnect-AzAccountで再度ログイン。
Clear-AzContextはドキュメントを見ると認証情報全削除[1]なので、私のように雑にインストールしてたら何かよく解らないことになっちゃったという時に使えそう。

脚注
  1. Issueを見るとローカルのユーザーディレクトリ領域にあるキャッシュされた物を削除しているのかな ↩︎