BEACHSIDE BLOG

Azure と GitHub と C# が好きなエンジニアの個人メモ ( ・ㅂ・)و ̑̑

Azure CLI で Azure に サインイン / テナント ( サブスクリプション ) 切り替え ( az account ...)

今回は Azure CLI を使って Azure に サインイン したり テナント ( サブスクリプション ) を切り替える方法です。別のブログで流れ的に書こうと思ったけど、必要性に疑問を感じたので分割したオチです。

余談ですが PowerShell 編はこちらです。

blog.beachside.dev

では本題に入りましょう。

Azure CLI の準備

Azure CLI を使うにはざっくりこの選択肢がよくあるパターンでしょうか。

  • 自分の PC に Azure CLI をインストールする
  • ブラウザで Azure portal を開いたときに右上にある Cloud Shell をクリックして表示されるシェル (PowerShell または Bash) から使う f:id:beachside:20210826205213p:plain

よく使うならインストールした方が手軽に使えるかなって感じでしょうかね。

Azure CLI の操作

参照してるサブスクリプションの確認とサインイン

Azure CLI を使う際、どのサブスクリプションを見ているかのまず大事になります。サブスクリプションを一つしか持っていなければいいんですが、仕事や趣味で使ってると複数になるのでその確認からしていきましょう。

まずは必要なサブスクリプションが見えているかを、以下のコマンドで確認してみましょう。オプションでついてる -o table を付けないと json が prettify された状態でダラーっと表示されるので見難いですが、このオプションを付けることでテーブル形式で表示してくれます。

az account list -o table

そもそもどのサブスクリプションかわからんってときは、ブラウザで Azure portal を開いて対象のリソースをひらけば確認できます。

もしサインインできていなかったり、対象のサブスクリプションがなければログインします。コマンドこれ。

az login

f:id:beachside:20210826210416p:plain

ブラウザが起動して Sign in の画面が出てくるので sign in しましょう。

f:id:beachside:20210826210448p:plain:w480

サインインしたらブラウザの画面は閉じて大丈夫です。

もういちど以下のコマンドでサブスクリプションの一覧を確認します。

az account list -o table

f:id:beachside:20210826211355p:plain

参照してるサブスクリプションの切り替え

上図で IsDefault になっているのが現在参照してるサブスクリプションです。今は1行目が True になってますが、2行目のに切り替えたいときは以下のコマンド です。

az account set -s <subscriptionId の値>

例えば subscriptionId の値が "subscriptionId の値" だったらこんな感じ

az account set -s  62e8efdb-27fc-4f2f-a6ae-9b0cc23700e5

ダブルクォーテーションで囲っても囲わなくてもどっちでも大丈夫です。ちなみに ダブルクォーテーションで囲って Name を入れても大丈夫ですが、たまに同じ Name のものもあるので SubsciptionId を使ってます。

これでもう一度このコマンドをうって、対象のサブスクリプションが IsDefaultTrue になっていれば OK です。

az account list -o table

f:id:beachside:20210826212046p:plain

参考

  • az account list で --query オプションつけてフィルターとかもできます。

  • Azure CLI 全般の話ですが、今回 -o table で指定した出力形式は、teble の他にも yaml とか色々あります。