Connect-AzAccount
Az PowerShell 모듈의 cmdlet과 함께 사용할 인증된 계정으로 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>]
Description
이 cmdlet은 Connect-AzAccount
Az PowerShell 모듈의 cmdlet과 함께 사용할 인증된 계정으로 Azure에 연결합니다. 이 인증된 계정은 Azure Resource Manager 요청에서만 사용할 수 있습니다. 서비스 관리에 사용할 인증된 계정을 추가하려면 Azure PowerShell 모듈의 cmdlet을 사용합니다 Add-AzureAccount
. 현재 사용자에 대한 컨텍스트가 없으면 사용자의 컨텍스트 목록이 처음 25개 구독 각각에 대한 컨텍스트로 채워집니다.
사용자를 위해 만든 컨텍스트 목록은 실행 Get-AzContext -ListAvailable
하여 찾을 수 있습니다. 이 컨텍스트 채우기를 건너뛰려면 SkipContextPopulation 스위치 매개 변수를 지정합니다. 이 cmdlet을 실행한 후 .Disconnect-AzAccount
예제
예제 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
저장합니다. 두 번째 명령은 에 저장된 자격 증명을 사용하여 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
. 그런 다음 변수에 저장된 $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를 사용하여 연결
이 예제에서는 호스트 환경의 시스템 할당 MSI(관리 서비스 ID)를 사용하여 연결합니다. 예를 들어 할당된 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 = 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(웹 계정 관리자)에 대한 구성을 사용하도록 설정하고 이를 사용하여 Azure에 연결하는 방법을 보여 줍니다.
Update-AzConfig -EnableLoginByWam $true
Connect-AzAccount
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
xxxxxxxx-xxxx-xxxx-xxxxxxxx Subscription1 yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy AzureCloud
매개 변수
-AccessToken
액세스 토큰을 지정합니다.
주의
액세스 토큰은 자격 증명의 한 유형입니다. 기밀을 유지하려면 적절한 보안 예방 조치를 취해야 합니다. 액세스 토큰도 시간 제한이며 장기 실행 작업이 완료되지 않을 수 있습니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-AccountId
기본값(UserWithSubscriptionId) 매개 변수 집합으로 로그인할 계정 ID/사용자 ID/사용자 이름; AccessToken 매개 변수 집합의 액세스 토큰에 대한 계정 ID입니다. ManagedService 매개 변수 집합의 관리되는 서비스에 대한 계정 ID입니다. 관리되는 서비스 리소스 ID 또는 연결된 클라이언트 ID일 수 있습니다. 시스템 할당 ID를 사용하려면 이 필드를 비워 둡니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-ApplicationId
서비스 주체의 애플리케이션 ID입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-AuthScope
로그인에 대한 선택적 OAuth 범위, 지원되는 미리 정의된 값: AadGraph, AnalysisServices, Attestation, Batch, DataLake, KeyVault, OperationalInsights, Storage, Synapse. 또한 다음과 같은 https://storage.azure.com/
리소스 ID를 지원합니다.
형식: | String |
별칭: | AuthScopeTypeName |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CertificatePassword
pkcs#12 인증서 파일에 액세스하는 데 필요한 암호입니다.
형식: | SecureString |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CertificatePath
pkcs#12 형식의 인증서 파일 경로입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CertificateThumbprint
인증서 해시 또는 지문입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Confirm
cmdlet을 실행하기 전에 확인 메시지가 표시됩니다.
형식: | SwitchParameter |
별칭: | cf |
Position: | Named |
Default value: | False |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-ContextName
이 로그인에 대한 기본 Azure 컨텍스트의 이름입니다. Azure 컨텍스트에 대한 자세한 내용은 Azure PowerShell 컨텍스트 개체를 참조 하세요.
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Credential
PSCredential 개체를 지정합니다. PSCredential 개체에 대한 자세한 내용을 보려면 .를 입력합니다Get-Help Get-Credential
. PSCredential 개체는 조직 ID 자격 증명에 대한 사용자 ID 및 암호 또는 서비스 주체 자격 증명에 대한 애플리케이션 ID 및 비밀을 제공합니다.
형식: | PSCredential |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-DefaultProfile
Azure와의 통신에 사용되는 자격 증명, 계정, 테넌트 및 구독입니다.
형식: | IAzureContextContainer |
별칭: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Environment
Azure 계정을 포함하는 환경입니다.
형식: | String |
별칭: | EnvironmentName |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-FederatedToken
다른 ID 공급자가 제공하는 토큰을 지정합니다. 이 토큰의 발급자와 주체는 먼저 ApplicationId에서 신뢰할 수 있도록 구성해야 합니다.
주의
페더레이션 토큰은 자격 증명의 한 유형입니다. 기밀을 유지하려면 적절한 보안 예방 조치를 취해야 합니다. 또한 페더레이션된 토큰은 시간 제한이며 장기 실행 작업이 완료되지 않도록 방지할 수 있습니다.
형식: | String |
별칭: | ClientAssertion |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Force
메시지를 표시하지 않고 동일한 이름으로 기존 컨텍스트를 덮어씁 수 있습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-GraphAccessToken
Graph 서비스에 대한 AccessToken입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Identity
관리 서비스 ID를 사용하여 로그인합니다.
형식: | SwitchParameter |
별칭: | MSI, ManagedService |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-KeyVaultAccessToken
KeyVault 서비스에 대한 AccessToken입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-MaxContextPopulation
로그인 후 컨텍스트를 채울 최대 구독 번호입니다. 기본값은 25입니다. 컨텍스트에 대한 모든 구독을 채웁니다. -1로 설정합니다.
형식: | Int32 |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-MicrosoftGraphAccessToken
Microsoft Graph에 대한 액세스 토큰
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Scope
예를 들어 변경 내용이 현재 프로세스에만 적용되는지 아니면 이 사용자가 시작한 모든 세션에만 적용되는지와 같은 컨텍스트 변경 범위를 결정합니다.
형식: | ContextModificationScope |
허용되는 값: | Process, CurrentUser |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-SendCertificateChain
Azure AD에서 쉬운 인증서 롤오버를 달성하기 위해 x5c 클레임(인증서의 공개 키)을 STS로 보내야 하는지를 지정합니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-ServicePrincipal
서비스 주체 자격 증명을 제공하여 이 계정이 인증됨을 나타냅니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-SkipContextPopulation
컨텍스트가 없는 경우 컨텍스트 채우기를 건너뜁니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-SkipValidation
액세스 토큰에 대한 유효성 검사를 건너뜁니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Subscription
구독 이름 또는 ID입니다.
형식: | String |
별칭: | SubscriptionName, SubscriptionId |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-Tenant
선택적 테넌트 이름 또는 ID입니다.
참고 항목
현재 API의 제한 사항으로 인해 B2B(Business-to-Business) 계정에 연결할 때 테넌트 이름 대신 테넌트 ID를 사용해야 합니다.
형식: | String |
별칭: | Domain, TenantId |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-UseDeviceAuthentication
브라우저 컨트롤 대신 디바이스 코드 인증을 사용합니다.
형식: | SwitchParameter |
별칭: | DeviceCode, DeviceAuth, Device |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-WhatIf
cmdlet이 실행될 경우 결과 동작을 표시합니다. cmdlet이 실행되지 않습니다.
형식: | SwitchParameter |
별칭: | wi |
Position: | Named |
Default value: | False |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
입력
출력
Azure PowerShell