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 switch パラメーターを指定します。 このコマンドレットを実行した後、 Disconnect-AzAccount
を使用して Azure アカウントから切断できます。
例
例 1: Azure アカウントに接続する
この例では、Azure アカウントに接続します。 Microsoft アカウントまたは組織 ID の資格情報を指定する必要があります。 資格情報に対して多要素認証が有効になっている場合は、対話型オプションを使用してログインするか、サービス プリンシパル認証を使用する必要があります。
Connect-AzAccount
Please select the account you want to login with.
Retrieving subscriptions for the selection...
[Tenant and subscription selection]
No Subscription name Subscription ID Tenant domain name
---- ------------------------------------ ---------------------------------------- --------------------------
[1] Subscription1 xxxx-xxxx-xxxx-xxxx xxxxxxxxx.xxxxxxxxxxx.com
[2] Subscription2 xxxx-xxxx-xxxx-xxxx xxxxxxxxx.xxxxxxxxxxx.com
...
[9] Subscription9 xxxx-xxxx-xxxx-xxxx xxxxxxxxx.xxxxxxxxxxx.com
Select a tenant and subscription: 1 <requires user's input here>
Subscription name Tenant domain name
------------------------------------ --------------------------
Subscription1 xxxxxxxxx.xxxxxxxxxxx.com
[Announcements]
Share your feedback regarding your experience with `Connect-AzAccount` at: https://aka.ms/azloginfeedback
If you encounter any problem, please open an issue at: https://aka.ms/azpsissue
SubscriptionName Tenant
----------------- ------
Subscription1 xxxxxxxxx.xxxxxxxxxxx.com
例 2: 組織 ID 資格情報を使用して Azure に接続する
このシナリオは、ユーザーが多要素認証を有効にしていない場合にのみ機能します。 最初のコマンドは、ユーザー資格情報の入力を求め、 $Credential
変数に格納します。 2 番目のコマンドは、 $Credential
に格納されている資格情報を使用して Azure アカウントに接続します。 このアカウントは、組織 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
変数に格納します。 次に、 $Credential
変数に格納されているサービス プリンシパルの資格情報を使用して、指定した Azure テナントに接続します。 ServicePrincipal スイッチ パラメーターは、アカウントがサービス プリンシパルとして認証されることを示します。
$SecurePassword = Read-Host -Prompt 'Enter a Password' -AsSecureString
$TenantId = 'yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy'
$ApplicationId = 'zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzz'
$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $ApplicationId, $SecurePassword
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 が指定されると (Storage など)、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 = ConvertTo-SecureString -String "****" -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
例 10: WAM を使用して対話形式で接続する
この例では、WAM (Web アカウント マネージャー) の構成を有効にし、それを使用して Azure に接続する方法を示します。
Update-AzConfig -EnableLoginByWam $true
Connect-AzAccount
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
xxxxxxxx-xxxx-xxxx-xxxxxxxx Subscription1 yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy AzureCloud
パラメーター
-AccessToken
アクセス トークンを指定します。
注意事項
アクセス トークンは資格情報の一種です。 機密を保持するには、適切なセキュリティ対策を講じる必要があります。 アクセス トークンもタイムアウトし、実行時間の長いタスクの完了を妨げる可能性があります。
型: | String |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-AccountId
Default (UserWithSubscriptionId)パラメーター セットでログインするアカウント ID/ユーザー ID/ユーザー名。AccessToken パラメーター セット内のアクセス トークンのアカウント ID。ManagedService パラメーター セットのマネージド サービスのアカウント ID。 マネージド サービス リソース ID、または関連付けられているクライアント ID を指定できます。 システム割り当て ID を使用するには、このフィールドを空白のままにします。
型: | String |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ApplicationId
サービス プリンシパルのアプリケーション ID。
型: | String |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-AuthScope
ログインのオプションの OAuth スコープ、サポートされている定義済みの値: AadGraph、AnalysisServices、Attestation、Batch、DataLake、KeyVault、OperationalInsights、Storage、Synapse。 また、 https://storage.azure.com/
などのリソース ID もサポートしています。
型: | String |
Aliases: | AuthScopeTypeName |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-CertificatePassword
pkcs#12 証明書ファイルにアクセスするために必要なパスワード。
型: | SecureString |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-CertificatePath
pkcs#12 形式の certficate ファイルのパス。
型: | String |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-CertificateThumbprint
証明書ハッシュまたは拇印。
型: | String |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Confirm
コマンドレットの実行前に確認を求めるメッセージが表示されます。
型: | SwitchParameter |
Aliases: | cf |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ContextName
このログインの既定の Azure コンテキストの名前。 Azure コンテキストの詳細については、「 Azure PowerShell コンテキスト オブジェクトを参照してください。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Credential
PSCredential オブジェクトを指定します。 PSCredential オブジェクトの詳細については、「Get-Help Get-Credential
」と入力します。 PSCredential オブジェクトは、組織 ID 資格情報のユーザー ID とパスワード、またはサービス プリンシパル資格情報のアプリケーション ID とシークレットを提供します。
型: | PSCredential |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-DefaultProfile
Azure との通信のために使用される資格情報、アカウント、テナント、サブスクリプションです。
型: | IAzureContextContainer |
Aliases: | AzContext, AzureRmContext, AzureCredential |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Environment
Azure アカウントを含む環境。
型: | String |
Aliases: | EnvironmentName |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-FederatedToken
別の ID プロバイダーによって提供されるトークンを指定します。 このトークンの発行者とサブジェクトは、最初に ApplicationId によって信頼されるように構成する必要があります。
注意事項
フェデレーション トークンは資格情報の一種です。 機密を保持するには、適切なセキュリティ対策を講じる必要があります。 フェデレーション トークンもタイムアウトし、実行時間の長いタスクの完了を妨げる可能性があります。
型: | String |
Aliases: | ClientAssertion |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Force
プロンプトを表示せずに、既存のコンテキストを同じ名前で上書きします。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-GraphAccessToken
Graph サービスの AccessToken。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Identity
マネージド サービス ID を使用してログインします。
型: | SwitchParameter |
Aliases: | MSI, ManagedService |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-KeyVaultAccessToken
KeyVault サービスの AccessToken。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-MaxContextPopulation
ログイン後にコンテキストを設定する最大サブスクリプション番号。 既定値は 25 です。 すべてのサブスクリプションをコンテキストに設定するには、-1 に設定します。
型: | Int32 |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-MicrosoftGraphAccessToken
Microsoft Graph へのアクセス トークン
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Scope
コンテキスト変更のスコープを決定します。たとえば、変更が現在のプロセスにのみ適用されるか、このユーザーによって開始されたすべてのセッションに適用されるかなどです。
型: | ContextModificationScope |
指定可能な値: | Process, CurrentUser |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-SendCertificateChain
Azure AD での簡単な証明書ロールオーバーを実現するために、x5c 要求 (証明書の公開キー) を STS に送信するかどうかを指定します。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ServicePrincipal
このアカウントがサービス プリンシパルの資格情報を指定して認証されることを示します。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-SkipContextPopulation
コンテキストが見つからない場合は、コンテキストの作成をスキップします。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-SkipValidation
アクセス トークンの検証をスキップします。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Subscription
サブスクリプション名または ID。
型: | String |
Aliases: | SubscriptionName, SubscriptionId |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Tenant
オプションのテナント名または ID。
Note
現在の API の制限により、企業間 (B2B) アカウントに接続する場合は、テナント名の代わりにテナント ID を使用する必要があります。
型: | String |
Aliases: | Domain, TenantId |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-UseDeviceAuthentication
ブラウザー コントロールの代わりにデバイス コード認証を使用します。
型: | SwitchParameter |
Aliases: | DeviceCode, DeviceAuth, Device |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-WhatIf
コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。
型: | SwitchParameter |
Aliases: | wi |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
出力
Azure PowerShell