🦐

AzCLIでサブスクリプションを変更する手順

に公開

記事の内容

AzCLIからサブスクリプションを変更する手順とコマンドを記述します。

前提

以下を想定しています。

  • Azure CLI がインストール済みである
  • 対象テナントにアクセス権がある
  • 切り替え先のサブスクリプションにアクセスできる

一連の流れ

# 1. 指定テナントにログイン
az login --tenant <tenantID>

# 2. 現在のサブスクリプションを確認
az account show

# 3. 利用可能なサブスクリプション一覧を確認
az account list -o table

# 4. 対象サブスクリプションへ切り替え
az account set -s <subscriptionID>

# 5. 切り替え後の確認
az account show

手順1:指定テナントにログインする

まずは、対象のテナントを指定してログインします。

az login --tenant <tenantID>

<tenantID> には、対象の Microsoft Entra ID テナント ID を指定します。

たとえば以下のようなイメージです。

az login --tenant xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

手順2:現在のサブスクリプションを確認する

ログイン後、現在どのサブスクリプションが選択されているかを確認します。

az account show

実行すると、現在のサブスクリプション情報がJSON形式で表示されます。
この中の "name" が、現在選択されているサブスクリプション名です。

{
  "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "name": "サブスクリプション名",
  ...
}

ここで、目的のサブスクリプションではない場合は切り替えが必要です。

手順3:利用可能なサブスクリプション一覧を確認する

ログイン中のアカウントで利用できるサブスクリプション一覧を表示します。

az account list -o table

-o table を付けることで、表形式で見やすく表示できます。

出力例:

Name                     CloudName    SubscriptionId                        State    IsDefault
-----------------------  -----------  ------------------------------------  -------  ---------
Development-Sub          AzureCloud   xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx  Enabled  True
Production-Sub           AzureCloud   yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy  Enabled  False

ここで、切り替えたいサブスクリプションの SubscriptionId を確認します。

手順4:サブスクリプションを切り替える

確認したサブスクリプションIDを指定して切り替えます。

az account set -s <subscriptionID>

たとえば次のように実行します。

az account set -s yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy

これで、Az CLI の操作対象サブスクリプションが変更されます。

手順5:切り替え後のサブスクリプションを確認する

最後に、正しく切り替わったかを再度確認します。

az account show

表示された "name" が対象のサブスクリプション名になっていればOKです。

一連の流れまとめ(再)

# 1. 指定テナントにログイン
az login --tenant <tenantID>

# 2. 現在のサブスクリプションを確認
az account show

# 3. 利用可能なサブスクリプション一覧を確認
az account list -o table

# 4. 対象サブスクリプションへ切り替え
az account set -s <subscriptionID>

# 5. 切り替え後の確認
az account show

よくある注意点

テナントが違うと目的のサブスクリプションが出てこない

az account list -o table を実行しても目的のサブスクリプションが表示されない場合、
ログインしているテナントが異なる可能性があります。
その場合は、あらためて対象テナントを指定してログインし直してください。

az login --tenant <tenantID>

まとめ

Az CLIでサブスクリプションを変更する流れは、次の5ステップです。

  1. 対象テナントにログインする
  2. 現在のサブスクリプションを確認する
  3. 利用可能なサブスクリプション一覧を確認する
  4. サブスクリプションIDを指定して切り替える
  5. 切り替え後の状態を確認する
ヘッドウォータース

Discussion