次の方法で共有


ユーザーとして PowerShell を使用して Azure Stack Hub に接続する

PowerShell を使用して Azure Stack Hub に接続して、Azure Stack Hub リソースを管理できます。 たとえば、PowerShell を使用してオファーのサブスクライブ、仮想マシン (VM) の作成、Azure Resource Manager テンプレートのデプロイを行うことができます。

セットアップを取得するには:

  • 要件があることを確認します。
  • Microsoft Entra ID または Active Directory フェデレーション サービス (AD FS) を使用して接続します。
  • リソース プロバイダーを登録します。
  • 接続をテストします。

PowerShell を使用して接続するための前提条件

これらの前提条件は、開発キットから、または VPN 経由で接続場合は Windows ベースの外部クライアントから構成します。

  • Azure Stack Hub と互換性のある Azure PowerShell モジュール インストールします。
  • Azure Stack Hub を操作するために必要なツールをダウンロードします。

次のスクリプト変数を、Azure Stack Hub 構成の値に置き換えてください。

  • Microsoft Entra テナント名
    Azure Stack Hub の管理に使用する Microsoft Entra テナントの名前。 たとえば、yourdirectory.onmicrosoft.com。
  • Azure Resource Manager エンドポイント
    Azure Stack Development Kit の場合、この値は https://management.local.azurestack.externalに設定されます。 Azure Stack Hub 統合システムのこの値を取得するには、サービス プロバイダーにお問い合わせください。

Microsoft Entra ID を使用して Azure Stack Hub に接続する

    Add-AzEnvironment -Name "AzureStackUser" -ArmEndpoint "https://management.local.azurestack.external"
    # Set your tenant name
    $AuthEndpoint = (Get-AzEnvironment -Name "AzureStackUser").ActiveDirectoryAuthority.TrimEnd('/')
    $AADTenantName = "<myDirectoryTenantName>.onmicrosoft.com"
    $TenantId = (invoke-restmethod "$($AuthEndpoint)/$($AADTenantName)/.well-known/openid-configuration").issuer.TrimEnd('/').Split('/')[-1]

    # After signing in to your environment, Azure Stack Hub cmdlets
    # can be easily targeted at your Azure Stack Hub instance.
    Connect-AzAccount -EnvironmentName "AzureStackUser" -TenantId $TenantId

AD FS を使用して Azure Stack Hub に接続する

# Register an Azure Resource Manager environment that targets your Azure Stack Hub instance
Add-AzEnvironment -Name "AzureStackUser" -ArmEndpoint "https://management.local.azurestack.external"

# Sign in to your environment
Connect-AzAccount -EnvironmentName "AzureStackUser"

リソース プロバイダーを登録する

リソース プロバイダーは、ポータルを介してデプロイされたリソースがない新しいユーザー サブスクリプションには自動的に登録されません。 次のスクリプトを実行して、リソース プロバイダーを明示的に登録できます。

foreach($s in (Get-AzSubscription)) {
        Select-AzSubscription -SubscriptionId $s.SubscriptionId | Out-Null
        Write-Progress $($s.SubscriptionId + " : " + $s.SubscriptionName)
Get-AzResourceProvider -ListAvailable | Register-AzResourceProvider
    }

手記

AD FS では、ユーザー ID を使用した対話型認証のみがサポートされます。 資格情報オブジェクトが必要な場合は、サービス プリンシパル (SPN) を使用する必要があります。 ID 管理サービスとして Azure Stack Hub と AD FS を使用してサービス プリンシパルを設定する方法の詳細については、「AD FS アプリ IDの管理」を参照してください。

接続をテストする

すべての設定が完了したら、PowerShell を使用して Azure Stack Hub にリソースを作成して接続をテストします。 テストとして、アプリケーションのリソース グループを作成し、VM を追加します。 次のコマンドを実行して、"MyResourceGroup" という名前のリソース グループを作成します。

New-AzResourceGroup -Name "MyResourceGroup" -Location "Local"

次の手順