Azure PowerShell を使用して Azure サブスクリプションを管理する

完了

ほとんどの Azure ユーザーは、サブスクリプションを 1 つしか持っていません。 ただし、複数の組織に属している場合や、組織がグループ間で特定のリソースへのアクセスを分けている場合は、Azure に複数のサブスクリプションがある場合があります。

Azure PowerShell でサブスクリプションのリソースにアクセスするには、現在の Azure セッションに関連付けられているサブスクリプションを変更する必要があります。 これを行うには、どのテナント、サブスクリプション、およびユーザーに対してコマンドレットを実行するかについての情報である、アクティブなセッションのコンテキストを変更します。 サブスクリプションを変更するには、まず Get-AzSubscription を使って Azure PowerShell Context オブジェクトを取得してから、Set-AzContext を使って現在のコンテキストを変更する必要があります。

Get-AzSubscription コマンドレットを使用して、現在のアカウントでアクセスできるサブスクリプションのサブスクリプション ID、サブスクリプション名、およびホーム テナントを取得します。

すべてのテナントですべての Azure サブスクリプションをアクティブにするには、次のコマンドを実行します。

Get-AzSubscription

Name                               Id                      TenantId                        State
----                               --                      --------                        -----
Subscription1                      yyyy-yyyy-yyyy-yyyy     aaaa-aaaa-aaaa-aaaa             Enabled
Subscription2                      xxxx-xxxx-xxxx-xxxx     aaaa-aaaa-aaaa-aaaa             Enabled
Subscription3                      zzzz-zzzz-zzzz-zzzz     bbbb-bbbb-bbbb-bbbb             Enabled

特定のテナントに割り当てられたサブスクリプションに注目するには、次のコマンドを実行します。

Get-AzSubscription -TenantId "aaaa-aaaa-aaaa-aaaa"

Name                               Id                      TenantId                        State
----                               --                      --------                        -----
Subscription1                      yyyy-yyyy-yyyy-yyyy     aaaa-aaaa-aaaa-aaaa             Enabled
Subscription2                      xxxx-xxxx-xxxx-xxxx     aaaa-aaaa-aaaa-aaaa             Enabled

Set-AzContext コマンドレットは、現在のセッションで実行するコマンドレットの認証情報を設定します。 コンテキストには、テナント、サブスクリプション、環境の情報が含まれます。

サブスクリプションのコンテキストを設定するには、次のコマンドを実行します。

Set-AzContext -Subscription "xxxx-xxxx-xxxx-xxxx"

Name    Account             SubscriptionName    Environment         TenantId
----    -------             ----------------    -----------         --------
Work    test@outlook.com    Subscription1       AzureCloud          xxxxxxxx-x...

次の例は、現在アクティブなテナントでサブスクリプションを取得し、アクティブなセッションとして設定する方法を示しています。

$context = Get-AzSubscription -SubscriptionId ...
Set-AzContext $context