クロステナント仮想ネットワークを Virtual WAN ハブに接続する - Azure CLI を使用

この記事は、Azure Virtual WAN を使用して仮想ネットワークを別のテナントの仮想ハブに接続することに役立ちます。 このアーキテクチャは、同じネットワークに接続する必要があるのに異なるテナント上に置かれたクライアント ワークロードがある場合に便利です。 たとえば、次の図に示すように、Contoso 以外の仮想ネットワーク (リモート テナント) を Contoso の仮想ハブ (親テナント) に接続できます。

親テナントとリモート テナントを含むルーティング構成を示す図。

この記事では、次のことについて説明します。

  • Azure サブスクリプションの共同作成者として別のテナントを追加します。
  • クロステナント仮想ネットワークを仮想ハブに接続します。

この構成の手順では、Azure portal と Azure CLI の組み合わせを使用します。 ただし、機能自体は PowerShell と Azure CLI でのみ提供されています。

注意

仮想ネットワークのテナント間接続は、ローカル コンピューターにインストールされている PowerShell または Azure CLI を使用してのみ管理できます。 Azure portal はテナント間操作をサポートしていないため、Azure portal または Azure portal CloudShell (PowerShell と CLI の両方) を使用してテナント間仮想ネットワーク接続を管理 することはできません

開始する前に

前提条件

この記事の手順を使用するには、環境内に以下の構成が既に設定されている必要があります。

  • 親サブスクリプション内の仮想 WAN と仮想ハブ。
  • 別の (リモート) テナントのサブスクリプション内で構成されている仮想ネットワーク。
  • Virtual WAN CLI 拡張機能、バージョン 0.3.0 以降。 拡張機能の詳細については、「使用可能な Azure CLI 拡張機能」を参照してください。

リモート テナントの仮想ネットワーク アドレス空間が、親の仮想ハブに既に接続されている他の仮想ネットワーク内のどのアドレス空間とも重複していないことを確認してください。

Azure CLI の使用

この記事では、Azure CLI コマンドを使用します。 ローカルマシンにインストールされたAzure CLIから実行してください。 前述の通り、Azureポータルはテナント間操作をサポートしていないため、これらのコマンドはAzureポータルやAzureポータルのCloud Shellでは機能しません。

ローカルマシンにAzure CLIをインストールするには、「How to install the Azure CLI」をご覧ください。 また、Virtual WANのCLI拡張(バージョン0.3.0以降)も必要です。 詳細については、Available Azure CLI extensions をご覧ください。

この記事のコマンドを実行する前に az login でサインインしてください。

アクセス許可の割り当て

  1. リモート テナントの仮想ネットワークのサブスクリプションで、共同作成者ロールの割り当てを管理者 (仮想ハブを管理するユーザー) に追加します。 共同作成者のアクセス許可を使用すると、管理者が、リモート テナント内の仮想ネットワークにアクセスして変更することができます。

    Azure CLI または Azure portal のいずれかを使用して、このロールを割り当てることができます。 手順については、次の記事を参照してください。

  2. 次のコマンドを実行して、リモート テナント サブスクリプションと親テナント サブスクリプションをコンソールの現在のセッションに追加します。 親にサインインしている場合は、リモート テナントに対してのみこのコマンドを実行する必要があります。

    az login --tenant "[tenant ID]"
    
  3. ロールの割り当てが成功したことを確認します。 親の資格情報を使用して Azure CLI にサインインし (まだサインインしていない場合)、次のコマンドを実行します。

    az account list -o table
    

    アクセス許可が親に正しく伝達され、セッションに追加されている場合は、親とリモート テナントが所有するサブスクリプションは、両方ともコマンドの出力に表示されます。

仮想ネットワークをハブに接続する

次の手順では、Azure CLI コマンドを使用し、仮想ハブを別のテナントのサブスクリプション内の仮想ネットワークにリンクします。 例の値は、実際の環境が反映されるように置き換えてください。

  1. 仮想ハブ アカウントのコンテキストにあることを確認します。

    az account set --subscriptionId "[virtual hub subscription]"
    
  2. 仮想ネットワークをハブに接続します。

    az network vhub connection create --resource-group "[resource_group_name]" --name "[connection_name]" --vhub-name "[virtual_hub_name]" --remote-vnet "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rgName/providers/Microsoft.Network/virtualNetworks/vnetName"
    

新しい接続は、Azure CLI または Azure portal のいずれかで表示できます。

  • 接続が正常に作成された場合は、新しく作成された接続のメタデータがコンソールに表示されます。
  • Azure portal で、仮想ハブに移動し、[接続]>[仮想ネットワーク接続] を選択します。 その後で接続へのポインターを表示できます。 実際のリソースを表示するには、適切なアクセス許可が必要です。

トラブルシューティング

  • az --version を使用して仮想 WAN 拡張機能が 0.3.0 以上であることを確認します。
  • リモート サブスクリプション アクセスが cli az account list -o table から利用できることを確認します。
  • リソース グループの名前やその他の環境固有の変数の周囲が引用符で囲まれていることを確認します (例: "VirtualHub1" または "VirtualNetwork1")。

次のステップ

  • Virtual WAN の詳細については、FAQ を参照してください。