この記事では、Azure アカウント拡張機能を使用して Azure Stack Hub に接続する方法について説明します。これにより、Visual Studio Code から直接 Azure を使用できます。 Visual Studio Code (VS Code) の設定を更新する必要があります。
VS Code は、Web アプリケーションとクラウド アプリケーションをビルドおよびデバッグするための軽量エディターです。 ASP.NET Core、Python、NodeJS、Go などの開発者は VS Code を使用します。 Azure アカウント拡張機能を使用すると、他の Azure 拡張機能のサブスクリプション フィルター処理で 1 つの Azure サインインを使用できます。 この拡張機能により、VS Code 統合ターミナルで Azure Cloud Shell を使用できるようになります。 この拡張機能を使用すると、ID マネージャーの Microsoft Entra ID と Active Directory フェデレーション サービス (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 と Visual Studio Code で使用するために、他の多くの Azure 拡張機能がサポートされています。 これらには次のものが含まれます。
- Visual Studio Code Azure Storage 拡張機能
- Visual Studio Code Azure Resources 拡張機能 (バージョン 0.4.0 以前が必要)
- Visual Studio Code Azure Virtual Machines 拡張機能
Azure アカウント拡張機能の前提条件
- Azure Stack Hub 環境。
- Visual Studio Code。
- Azure アカウント拡張機能。
- Azure Stack Hub サブスクリプション と、Azure Stack Hub にアクセスできる資格情報。
- Azure Stack Hub 用の AZ モジュールを使用する PowerShell を使用する環境。 手順については、 Azure Stack Hub 用の PowerShell Az モジュールのインストールに関するページを参照してください。
資格情報を取得する
このセクションでは、資格情報を使用してテナント ID を取得します。 Azure Stack Hub リソース マネージャーの 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>は完全修飾ドメイン名です。
管理者特権のプロンプトで 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/同じセッションで次のコマンドレットを実行します。
$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 $TenantIdAccount SubscriptionName TenantId Environment ------- ---------------- -------- ----------- username@contoso.com azure-stack-sub aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb username@contoso.comテナント ID を書き留めます。 これは、Azure アカウント拡張機能を構成する JSON セクションを追加するときに必要になります。
Azure アカウント拡張機能を設定する
VS Code を開きます。
左側の隅にある [拡張機能 ] を選択します。
検索ボックスに「
Azure Account」と入力します。[Azure アカウント] を選択し、[インストール] を選択します。
VS Code を再起動して拡張機能を読み込みます。
Ctrl + Shift + P キーを押し、[Preferences: Open User Settings (JSON)]\(ユーザー設定を開く (JSON)\) を選択します。
コード エディターで、次の JSON スニペットを環境の値で更新し、設定ブロックにスニペットを貼り付けます。
値:
パラメーター Description azure.cloudこのパラメーターにはリテラル定数 "AzureCustomCloud" を使用する必要があります。 azure.tenantAzure Stack Hub テナント ID の値。 azure.customCloud.resourceManagerEndpointUrlこれは、Azure Stack Hub 用の Azure Resource Manager のルート URL です。 validateAuthorityID マネージャーとして Microsoft Entra ID を使用している場合は、このパラメーターを除外できます。 AD FS を使用している場合は、 falseの値を持つパラメーターを追加します。JSON スニペット:
"azure.cloud": "AzureCustomCloud", "azure.customCloud.resourceManagerEndpointUrl": "https://management.region.<fqdn>", "azure.tenant": "<your-tenant-ID>",
ユーザー設定 (JSON) を保存し、 Ctrl + Shift + P をもう一度使用します。 [Azure: サインイン] を選択します。 認証ページがブラウザーに読み込まれます。 エンドポイントにログインします。
Azure Stack Hub サブスクリプションに正常にログインしたことをテストするには、 Ctrl + Shift + P キー を使用し、[ Azure: サブスクリプションの選択] を選択 し、使用できるサブスクリプションがあるかどうかを確認します。
Commands
| Azure: サインイン | Azure サブスクリプションにサインインします。 |
|---|---|
| Azure: デバイス コードを使用してサインインする | デバイス コードを使用して Azure サブスクリプションにサインインします。 サインイン コマンドが機能しないセットアップでデバイス コードを使用します。 |
| Azure: Azure Cloud にサインインする | いずれかのソブリン クラウドで Azure サブスクリプションにサインインします。 |
| Azure: サインアウト | Azure サブスクリプションからサインアウトします。 |
| Azure: サブスクリプションの選択 | 取り扱うサブスクリプションのセットを選択します。 拡張機能には、フィルター処理されたサブスクリプション内のリソースのみが表示されます。 |
| Azure: アカウントを作成する | Azure アカウントをお持ちでない場合は、今すぐ サインアップ して、200 ドルの無料クレジットを受け取ることができます。 |
| Azure: Cloud Shell で Bash を開く | Cloud Shell で Bash を実行している新しいターミナルを開きます。 |
| Azure: Cloud Shell で PowerShell を開く | Cloud Shell で PowerShell を実行している新しいターミナルを開きます。 |
| Azure: Cloud Shell にアップロードする | Cloud Shell ストレージ アカウントにファイルをアップロードします。 |