Visual Studio Code で Azure アカウント拡張機能を使用して Azure Stack Hub に接続する

この記事では、AZURE アカウント拡張機能を使用してAzure Stack Hubに接続する方法について説明します。これにより、VS Code から直接Azureを使用できます。 VS Code の設定を更新する必要があります。

VS Code は、Web アプリケーションとクラウド アプリケーションをビルドおよびデバッグするための軽量エディターです。 ASP.NET Core、Python、Node.js、Go などの開発者は VS Code を使用します。 Azure アカウント拡張機能を使用すると、サブスクリプションで他のAzure拡張機能をフィルター処理して、1 つのAzure サインインを使用できます。 この拡張機能により、VS Code 統合ターミナルで Azure Cloud Shell を使用できるようになります。 拡張機能を使用すると、Identity Manager の Microsoft Entra ID と Active Directory フェデレーション サービス (AD FS) (AD FS) の両方を使用して、Azure Stack Hub サブスクリプションに接続できます。 Azure Stack Hub にサインインし、サブスクリプションを選択して、Cloud Shell で新しいコマンド ラインを開くことができます。

この記事の手順は、Active Directory フェデレーション サービス (AD FS) 環境で使用できます。 AD FS の資格情報とエンドポイントを使用します。

Visual Studio Code と Azure Stack Hub

Visual StudioのAzure アカウント拡張機能に加えて、Azure Stack Hubや VS Code で使用できるその他のAzure拡張機能も多数サポートされています。 これらの拡張機能は次のとおりです。

Azure アカウント拡張機能の前提条件

資格情報を取得する

このセクションでは、資格情報を使用してテナント ID を取得します。 Azure Stack Hub Azure Resource Manager URL とテナント ID が必要です。

Azure Stack Hub Resource Managerは、Azure リソースのデプロイ、管理、監視に使用できる管理フレームワークです。

  • Azure Stack Development Kit (ASDK) の Resource Manager URL は次のとおりです。 https://management.local.azurestack.external/
  • 統合システムの Resource Manager URL は https://management.region.<fqdn>/ で、 <fqdn> は完全修飾ドメイン名です。
  1. 管理者特権のプロンプトで PowerShell を開き、次のコマンドレットを実行します。

    Add-AzEnvironment -Name "<username@contoso.com>" -ArmEndpoint "https://management.region.<fqdn>"
    
    Name  Resource Manager Url                            ActiveDirectory Authority
    ----  --------------------                            -------------------------
    username@contoso.com https://management.region.<fqdn> https://login.microsoftonline.com/
    
  2. 同じセッションで次のコマンドレットを実行します。

    $AuthEndpoint = (Get-AzEnvironment -Name "sethm@microsoft.com").ActiveDirectoryAuthority.TrimEnd('/')
    $AADTenantName = "masselfhost.onmicrosoft.com"
    $TenantId = (invoke-restmethod "$($AuthEndpoint)/$($AADTenantName)/.well-known/openid-configuration").issuer.TrimEnd('/').Split('/')[-1]
    Add-AzAccount -EnvironmentName "sethm@microsoft.com" -TenantId $TenantId
    
    Account               SubscriptionName  TenantId                             Environment
    -------               ----------------  --------                             -----------
    username@contoso.com   azure-stack-sub  aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb username@contoso.com
    
  3. テナント ID を書き留めます。 Azure アカウント拡張機能を構成する JSON セクションを追加するときに必要になります。

Azure アカウント拡張機能を設定する

  1. VS Code を開きます。

  2. 左側の隅にある [拡張機能 ] を選択します。

  3. 検索ボックスに「Azure Account」と入力します。

  4. [Azure アカウント] を選択し、[インストール] を選択します

    拡張機能のインストール画面のスクリーンショット。

  5. VS Code を再起動して拡張機能を読み込みます。

  6. Ctrl + Shift + P キーを押し、[Preferences: Open User Settings (JSON)]\(ユーザー設定を開く (JSON)\) を選択します。

  7. コード エディターで、次の JSON スニペットを環境の値で更新し、設定ブロックにスニペットを貼り付けます。

    • 値:

      パラメーター Description
      azure.cloud このパラメーターにはリテラル定数 "AzureCustomCloud" を使用します。
      azure.tenant Azure Stack Hub テナント ID の値。
      azure.customCloud.resourceManagerEndpointUrl これは、Azure Stack HubのResource Managerのルート URL です。
      validateAuthority id マネージャーとしてMicrosoft Entra IDを使用している場合は、このパラメーターを除外できます。 AD FS を使用している場合は、 false の値を持つパラメーターを追加します。
    • JSON スニペット:

        "azure.cloud": "AzureCustomCloud",
        "azure.customCloud.resourceManagerEndpointUrl": "https://management.region.<fqdn>",
        "azure.tenant": "<your-tenant-ID>",
      
  8. ユーザー設定 (JSON) を保存し、 Ctrl+Shift+P をもう一度使用します。 [Azure: サインイン] を選択します。 認証ページがブラウザーに読み込まれます。 エンドポイントにログインします。

  9. Azure Stack Hub サブスクリプションに正常にログインしたことをテストするには、Ctrl+Shift+P キーを使用し、Azureを選択します。[サブスクリプション] を選択し、使用できるサブスクリプションがあるかどうかを確認します。

Commands

Azure: サインイン Azure サブスクリプションにサインインします。
Azure: デバイス コードを使用してサインインする デバイス コードを使用して、Azure サブスクリプションにサインインします。 サインイン コマンドが機能しないセットアップでデバイス コードを使用します。
Azure: Azure Cloud にサインインする いずれかのソブリン クラウドで Azure サブスクリプションにサインインします。
Azure: サインアウト Azure サブスクリプションからサインアウトします。
Azure: サブスクリプションの選択 取り扱うサブスクリプションのセットを選択します。 拡張機能には、フィルター処理されたサブスクリプション内のリソースのみが表示されます。
Azure: アカウントを作成する Azureアカウントをお持ちでない場合は、今すぐサインアップできます。
Azure: Cloud Shell で Bash を開く Cloud Shell で Bash を実行している新しいターミナルを開きます。
Azure: Cloud Shell で PowerShell を開く Cloud Shell で PowerShell を実行している新しいターミナルを開きます。
Azure: Cloud Shell にアップロードする Cloud Shell ストレージ アカウントにファイルをアップロードします。

次のステップ

Azure Stack Hub で開発環境を設定する

Visual Studio Code から Azure Stack Hub で Azure Storage を設定する