Connect-AzAccount
Az PowerShell モジュールのコマンドレットで使用するために、認証されたアカウントを使用して Azure に接続します。
構文
Connect-AzAccount
[-Environment <String>]
[-Tenant <String>]
[-AccountId <String>]
[-Subscription <String>]
[-AuthScope <String>]
[-ContextName <String>]
[-SkipContextPopulation]
[-MaxContextPopulation <Int32>]
[-UseDeviceAuthentication]
[-Force]
[-Scope <ContextModificationScope>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Connect-AzAccount
[-Environment <String>]
-Credential <PSCredential>
[-ServicePrincipal]
-Tenant <String>
[-Subscription <String>]
[-AuthScope <String>]
[-ContextName <String>]
[-SkipContextPopulation]
[-MaxContextPopulation <Int32>]
[-Force]
[-Scope <ContextModificationScope>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Connect-AzAccount
[-Environment <String>]
-Credential <PSCredential>
[-Tenant <String>]
[-Subscription <String>]
[-AuthScope <String>]
[-ContextName <String>]
[-SkipContextPopulation]
[-MaxContextPopulation <Int32>]
[-Force]
[-Scope <ContextModificationScope>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Connect-AzAccount
[-Environment <String>]
-CertificateThumbprint <String>
-ApplicationId <String>
[-ServicePrincipal]
-Tenant <String>
[-Subscription <String>]
[-AuthScope <String>]
[-ContextName <String>]
[-SkipContextPopulation]
[-MaxContextPopulation <Int32>]
[-Force]
[-SendCertificateChain]
[-Scope <ContextModificationScope>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Connect-AzAccount
[-Environment <String>]
-ApplicationId <String>
[-ServicePrincipal]
-Tenant <String>
[-Subscription <String>]
[-ContextName <String>]
[-SkipContextPopulation]
[-MaxContextPopulation <Int32>]
[-Force]
-FederatedToken <String>
[-Scope <ContextModificationScope>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Connect-AzAccount
[-Environment <String>]
-ApplicationId <String>
[-ServicePrincipal]
-Tenant <String>
[-Subscription <String>]
[-ContextName <String>]
[-SkipContextPopulation]
[-MaxContextPopulation <Int32>]
[-Force]
[-SendCertificateChain]
-CertificatePath <String>
[-CertificatePassword <SecureString>]
[-Scope <ContextModificationScope>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Connect-AzAccount
[-Environment <String>]
[-Tenant <String>]
-AccessToken <String>
[-GraphAccessToken <String>]
[-MicrosoftGraphAccessToken <String>]
[-KeyVaultAccessToken <String>]
-AccountId <String>
[-Subscription <String>]
[-ContextName <String>]
[-SkipValidation]
[-SkipContextPopulation]
[-MaxContextPopulation <Int32>]
[-Force]
[-Scope <ContextModificationScope>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Connect-AzAccount
[-Environment <String>]
[-Tenant <String>]
[-AccountId <String>]
[-Identity]
[-Subscription <String>]
[-AuthScope <String>]
[-ContextName <String>]
[-SkipContextPopulation]
[-MaxContextPopulation <Int32>]
[-Force]
[-Scope <ContextModificationScope>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
このコマンドレットは Connect-AzAccount 、Az PowerShell モジュールのコマンドレットで使用するために、認証されたアカウントを使用して Azure に接続します。 この認証済みアカウントは、Azure Resource Manager 要求でのみ使用できます。 Service Management で使用する認証済みアカウントを追加するには、Azure PowerShell モジュールのコマンドレットを使用Add-AzureAccountします。 現在のユーザーのコンテキストが見つからない場合、ユーザーのコンテキスト リストには、最初の 25 個のサブスクリプションごとにコンテキストが設定されます。
ユーザー用に作成されたコンテキストの一覧は、次を実行 Get-AzContext -ListAvailableして見つけることができます。 このコンテキストの作成をスキップするには、 SkipContextPopulation スイッチ パラメーターを指定します。 このコマンドレットを実行した後は、次を使用して Disconnect-AzAccountAzure アカウントから切断できます。
例
例 1: Azure アカウントに接続する
この例では、Azure アカウントに接続します。 Microsoft アカウントまたは組織 ID の資格情報を指定する必要があります。 資格情報に対して多要素認証が有効になっている場合は、対話型オプションを使用してログインするか、サービス プリンシパル認証を使用する必要があります。
Connect-AzAccount
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
azureuser@contoso.com Subscription1 xxxx-xxxx-xxxx-xxxx AzureCloud
例 2: 組織 ID 資格情報を使用して Azure に接続する
このシナリオは、ユーザーが多要素認証を有効にしていない場合にのみ機能します。 最初のコマンドは、ユーザー資格情報の入力を求め、変数に $Credential 格納します。 2 番目のコマンドは、に格納されている資格情報を使用して Azure アカウントに $Credential接続します。 このアカウントは、組織の ID 資格情報を使用して Azure で認証されます。
$Credential = Get-Credential
Connect-AzAccount -Credential $Credential
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
azureuser@contoso.com Subscription1 xxxx-xxxx-xxxx-xxxx AzureCloud
例 3: サービス プリンシパル アカウントを使用して Azure に接続する
最初のコマンドは、サービス プリンシパルの資格情報を変数に $Credential 格納します。 2 番目のコマンドは、変数に格納されているサービス プリンシパルの資格情報を使用して、指定された Azure テナントを $Credential 接続します。 ServicePrincipal スイッチ パラメーターは、アカウントがサービス プリンシパルとして認証されることを示します。
$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $ApplicationId, $SecuredPassword
Connect-AzAccount -ServicePrincipal -TenantId $TenantId -Credential $Credential
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
xxxx-xxxx-xxxx-xxxx Subscription1 xxxx-xxxx-xxxx-xxxx AzureCloud
例 4: 対話型ログインを使用して特定のテナントとサブスクリプションに接続する
次の使用例は、指定したテナントとサブスクリプションを持つ Azure アカウントに接続します。
Connect-AzAccount -Tenant 'xxxx-xxxx-xxxx-xxxx' -SubscriptionId 'yyyy-yyyy-yyyy-yyyy'
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
azureuser@contoso.com Subscription1 xxxx-xxxx-xxxx-xxxx AzureCloud
例 5: マネージド サービス ID を使用して接続する
この例では、ホスト環境のマネージド サービス ID (MSI) を使用して接続します。 たとえば、MSI が割り当てられている仮想マシンから Azure にサインインします。
Connect-AzAccount -Identity
Set-AzContext -Subscription Subscription1
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
MSI@50342 Subscription1 xxxx-xxxx-xxxx-xxxx AzureCloud
例 6: マネージド サービス ID ログインと ClientId を使用して接続する
この例では、 myUserAssignedIdentity のマネージド サービス ID を使用して接続します。 これは、仮想マシンにこのユーザー割り当て ID を追加し、ユーザー割り当て ID の ClientId を使用して接続します。 詳細については、Azure VM 上の Azure リソースのマネージド ID を構成することに関する記事を参照してください。
$identity = Get-AzUserAssignedIdentity -ResourceGroupName 'myResourceGroup' -Name 'myUserAssignedIdentity'
Get-AzVM -ResourceGroupName contoso -Name testvm | Update-AzVM -IdentityType UserAssigned -IdentityId $identity.Id
Connect-AzAccount -Identity -AccountId $identity.ClientId # Run on the virtual machine
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
yyyy-yyyy-yyyy-yyyy Subscription1 xxxx-xxxx-xxxx-xxxx AzureCloud
例 7: 証明書を使用して接続する
この例では、証明書ベースのサービス プリンシパル認証を使用して Azure アカウントに接続します。 認証に使用するサービス プリンシパルは、指定した証明書で作成する必要があります。 自己署名証明書の作成とアクセス許可の割り当ての詳細については、「Azure PowerShellを使用して証明書を使用してサービス プリンシパルを作成する」を参照してください。
$Thumbprint = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
$TenantId = 'yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy'
$ApplicationId = '00000000-0000-0000-0000-00000000'
Connect-AzAccount -CertificateThumbprint $Thumbprint -ApplicationId $ApplicationId -Tenant $TenantId -ServicePrincipal
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
xxxxxxxx-xxxx-xxxx-xxxxxxxxx Subscription1 yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy AzureCloud
Account : xxxxxxxx-xxxx-xxxx-xxxxxxxx
SubscriptionName : MyTestSubscription
SubscriptionId : zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzz
TenantId : yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy
Environment : AzureCloud
例 8: AuthScope を使用して接続する
AuthScope は、データ プレーン リソースが ARM リソースよりも強化された認証を行うシナリオをサポートするために使用されます。たとえば、ストレージには MFA が必要ですが、ARM は必要ありません。
AuthScope が指定されると(ストレージなど)、Connect-AzAccountは最初にストレージ スコープ https://storage.azure.com/でログインし、次に ARM のトークンをサイレントで要求します。
Connect-AzAccount -AuthScope Storage
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
yyyy-yyyy-yyyy-yyyy Subscription1 xxxx-xxxx-xxxx-xxxx AzureCloud
例 9: 証明書ファイルを使用して接続する
この例では、証明書ベースのサービス プリンシパル認証を使用して Azure アカウントに接続します。
によって指定される CertficatePath証明書ファイルには、証明書と秘密キーの両方が入力として含まれている必要があります。
$securePassword = $plainPassword | ConvertTo-SecureString -AsPlainText -Force
$TenantId = 'yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy'
$ApplicationId = 'zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzz'
Connect-AzAccount -ServicePrincipal -ApplicationId $ApplicationId -TenantId $TenantId -CertificatePath './certificatefortest.pfx' -CertificatePassword $securePassword
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
xxxxxxxx-xxxx-xxxx-xxxxxxxx Subscription1 yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy AzureCloud
パラメーター
アクセス トークンを指定します。
注意事項
アクセス トークンは資格情報の一種です。 機密を保持するには、適切なセキュリティ対策を講じる必要があります。 アクセス トークンもタイムアウトし、実行時間の長いタスクの完了を妨げる可能性があります。
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
既定 (UserWithSubscriptionId) パラメーター セットでログインするアカウント ID/ユーザー ID/ユーザー名。AccessToken パラメーター セットのアクセス トークンのアカウント ID。ManagedService パラメーター セットのマネージド サービスのアカウント ID。 マネージド サービス リソース ID、または関連付けられているクライアント ID を指定できます。 システム割り当て ID を使用するには、このフィールドを空白のままにします。
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
サービス プリンシパルのアプリケーション ID。
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
ログインのオプションの OAuth スコープ、サポートされている定義済みの値: AadGraph、AnalysisServices、構成証明、Batch、DataLake、KeyVault、OperationalInsights、Storage、Synapse。 また、次のような https://storage.azure.com/リソース ID もサポートしています。
| Type: | String |
| Aliases: | AuthScopeTypeName |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
pkcs#12 証明書ファイルにアクセスするために必要なパスワード。
| Type: | SecureString |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
pkcs#12 形式の certficate ファイルのパス。
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
証明書ハッシュまたは拇印。
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
コマンドレットの実行前に確認を求めるメッセージが表示されます。
| Type: | SwitchParameter |
| Aliases: | cf |
| Position: | Named |
| Default value: | False |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
このログインの既定の Azure コンテキストの名前。 Azure コンテキストの詳細については、「Azure PowerShell コンテキスト オブジェクト」を参照してください。
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
PSCredential オブジェクトを指定します。 PSCredential オブジェクトの詳細については、「Get-Help Get-Credential. PSCredential オブジェクトは、組織 ID 資格情報のユーザー ID とパスワード、またはサービス プリンシパル資格情報のアプリケーション ID とシークレットを提供します。
| Type: | PSCredential |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Azure との通信のために使用される資格情報、アカウント、テナント、サブスクリプションです。
| Type: | IAzureContextContainer |
| Aliases: | AzContext, AzureRmContext, AzureCredential |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Azure アカウントを含む環境。
| Type: | String |
| Aliases: | EnvironmentName |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
別の ID プロバイダーによって提供されるトークンを指定します。 このトークンの発行者とサブジェクトは、最初に ApplicationId によって信頼されるように構成する必要があります。
注意事項
フェデレーション トークンは資格情報の一種です。 機密を保持するには、適切なセキュリティ対策を講じる必要があります。 フェデレーション トークンもタイムアウトし、実行時間の長いタスクの完了を妨げる可能性があります。
| Type: | String |
| Aliases: | ClientAssertion |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
プロンプトを表示せずに、既存のコンテキストを同じ名前で上書きします。
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Graph サービスの AccessToken。
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
マネージド サービス ID を使用してログインします。
| Type: | SwitchParameter |
| Aliases: | MSI, ManagedService |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
KeyVault サービスの AccessToken。
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
ログイン後にコンテキストを設定する最大サブスクリプション数。 既定値は 25 です。 すべてのサブスクリプションにコンテキストを設定するには、-1 に設定します。
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Microsoft Graph へのアクセス トークン
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
コンテキストの変更のスコープを決定します。たとえば、変更が現在のプロセスにのみ適用されるか、このユーザーによって開始されたすべてのセッションに適用されるかなどです。
| Type: | ContextModificationScope |
| Accepted values: | Process, CurrentUser |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Azure AD での簡単な証明書ロールオーバーを実現するために、x5c 要求 (証明書の公開キー) を STS に送信するかどうかを指定します。
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
このアカウントがサービス プリンシパルの資格情報を指定して認証されることを示します。
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
コンテキストが見つからない場合は、コンテキストの作成をスキップします。
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
アクセス トークンの検証をスキップします。
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
サブスクリプション名または ID。
| Type: | String |
| Aliases: | SubscriptionName, SubscriptionId |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
オプションのテナント名または ID。
注意
現在の API の制限により、企業間 (B2B) アカウントに接続するときは、テナント名の代わりにテナント ID を使用する必要があります。
| Type: | String |
| Aliases: | Domain, TenantId |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
ブラウザー コントロールの代わりにデバイス コード認証を使用します。
| Type: | SwitchParameter |
| Aliases: | DeviceCode, DeviceAuth, Device |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。
| Type: | SwitchParameter |
| Aliases: | wi |
| Position: | Named |
| Default value: | False |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
入力
出力
フィードバック
フィードバックの送信と表示