Connect-AzAccount
Conecte-se ao Azure com uma conta autenticada para uso com cmdlets dos módulos do Az PowerShell.
Importante
A partir do início de 2025, as entradas do Azure PowerShell usando identidades de usuário do Microsoft Entra ID para autenticação exigem MFA (autenticação multifator). Para obter mais informações, consulte Planning for mandatory multi-factor authentication for Azure and other admin portals.
Sintaxe
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
O cmdlet Connect-AzAccount
se conecta ao Azure com uma conta autenticada para uso com cmdlets dos módulos do Az PowerShell. Você pode usar essa conta autenticada somente com solicitações do Azure Resource Manager. Para adicionar uma conta autenticada para uso com o Gerenciamento de Serviços, use o cmdlet Add-AzureAccount
do módulo do Azure PowerShell. Se nenhum contexto for encontrado para o usuário atual, a lista de contexto do usuário será preenchida com um contexto para cada uma de suas primeiras 25 assinaturas.
A lista de contextos criados para o usuário pode ser encontrada executando Get-AzContext -ListAvailable
. Para ignorar essa população de contexto, especifique o parâmetro SkipContextPopulation switch. Depois de executar esse cmdlet, você pode se desconectar de uma conta do Azure usando Disconnect-AzAccount
.
Exemplos
Exemplo 1: Conectar-se a uma conta do Azure
Este exemplo se conecta a uma conta do Azure. Você deve fornecer uma conta da Microsoft ou credenciais de ID organizacional. Se a autenticação multifator estiver habilitada para suas credenciais, faça logon usando a opção interativa ou use a autenticação da entidade de serviço.
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
Exemplo 2: Conectar-se ao Azure usando credenciais de ID organizacional
Esse cenário funciona somente quando o usuário não tem a autenticação multifator ativada. O primeiro comando solicita credenciais do usuário e as armazena na variável $Credential
. O segundo comando se conecta a uma conta do Azure usando as credenciais armazenadas em $Credential
. Essa conta é autenticada com o Azure usando credenciais de ID organizacional.
$Credential = Get-Credential
Connect-AzAccount -Credential $Credential
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
azureuser@contoso.com Subscription1 xxxx-xxxx-xxxx-xxxx AzureCloud
Exemplo 3: Conectar-se ao Azure usando uma conta de entidade de serviço
Esse comando armazena as credenciais da entidade de serviço na variável $Credential
. Em seguida, ele se conecta ao locatário do Azure especificado usando as credenciais da entidade de serviço armazenadas na variável $Credential
. O parâmetro de opção 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
Exemplo 4: usar um logon interativo para se conectar a um locatário e assinatura específicos
Este exemplo se conecta a uma conta do Azure com o locatário e a assinatura especificados.
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
Exemplo 5: Conectar usando uma identidade de serviço gerenciada
Este exemplo se conecta usando uma MSI (Identidade de Serviço Gerenciada) atribuída pelo sistema do ambiente do host. Por exemplo, você entra no Azure por meio de uma máquina virtual que tem uma MSI atribuída.
Connect-AzAccount -Identity
Set-AzContext -Subscription Subscription1
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
MSI@50342 Subscription1 xxxx-xxxx-xxxx-xxxx AzureCloud
Exemplo 6: Conectar usando o logon da Identidade de Serviço Gerenciado e o ClientId
Este exemplo se conecta usando a Identidade de Serviço Gerenciada de myUserAssignedIdentity. Ele adiciona a identidade atribuída pelo usuário à máquina virtual e, em seguida, conecta-se usando a ClientId da identidade atribuída pelo usuário. Para obter mais informações, consulte Configurar identidades gerenciadas para recursos do Azure em uma VM do Azure.
$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
Exemplo 7: Conectar usando certificados
Este exemplo se conecta a uma conta do Azure usando a autenticação de entidade de serviço baseada em certificado. A entidade de serviço usada para autenticação deve ser criada com o certificado especificado. Para obter mais informações sobre como criar certificados autoassinados e atribuir permissões a eles, consulte Usar o Azure PowerShell para criar uma entidade de serviço com um certificado
$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
Exemplo 8: Conectar-se ao AuthScope
O AuthScope é usado para dar suporte ao cenário de que os recursos do plano de dados têm autenticação aprimorada do que os recursos do ARM, por exemplo, o armazenamento precisa de MFA, mas o ARM não.
Depois que a AuthScope for especificada, por exemplo, armazenamento, Connect-AzAccount primeiro fará logon com o escopo de armazenamento https://storage.azure.com/
e, em seguida, exigirá silenciosamente o token para ARM.
Connect-AzAccount -AuthScope Storage
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
yyyy-yyyy-yyyy-yyyy Subscription1 xxxx-xxxx-xxxx-xxxx AzureCloud
Exemplo 9: Conectar usando o arquivo de certificado
Este exemplo se conecta a uma conta do Azure usando a autenticação de entidade de serviço baseada em certificado.
O arquivo de certificado, especificado por CertficatePath
, deve conter o certificado e a chave privada como a entrada.
$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
Exemplo 10: Conectar-se interativamente usando o WAM
Este exemplo demonstra como habilitar a configuração do WAM (Gerenciador de Contas Web) e usá-la para se conectar ao Azure.
Update-AzConfig -EnableLoginByWam $true
Connect-AzAccount
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
xxxxxxxx-xxxx-xxxx-xxxxxxxx Subscription1 yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy AzureCloud
Parâmetros
-AccessToken
Especifica um token de acesso.
Cuidado
Os tokens de acesso são um tipo de credencial. Você deve tomar as precauções de segurança apropriadas para mantê-las confidenciais. Os tokens de acesso também têm tempo limite e podem impedir que tarefas de execução prolongada sejam concluídas.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-AccountId
ID da Conta, associada ao token de acesso.
Em fluxos de autenticação de de usuário do
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-ApplicationId
ID do aplicativo da entidade de serviço.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-AuthScope
Escopo opcional do OAuth para logon, valores pré-definidos com suporte: AadGraph, AnalysisServices, Atestado, Lote, DataLake, KeyVault, OperationalInsights, Armazenamento, Synapse. Ele também dá suporte à ID do recurso, como https://storage.azure.com/
.
Tipo: | String |
Aliases: | AuthScopeTypeName |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-CertificatePassword
A senha necessária para acessar o arquivo de certificado pkcs nº 12.
Tipo: | SecureString |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-CertificatePath
O caminho do arquivo de certificado no formato pkcs nº 12.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-CertificateThumbprint
Hash de certificado ou impressão digital.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Confirm
Solicita a confirmação antes de executar o cmdlet.
Tipo: | SwitchParameter |
Aliases: | cf |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-ContextName
Nome do contexto padrão do Azure para esse logon. Para obter mais informações sobre contextos do Azure, consulte objetos de contexto do Azure PowerShell.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Credential
Especifica um objeto PSCredential Get-Help Get-Credential
. O objeto PSCredential fornece a ID do usuário e a senha para credenciais de ID organizacional ou a ID do aplicativo e o segredo das credenciais da entidade de serviço.
Tipo: | PSCredential |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-DefaultProfile
As credenciais, a conta, o locatário e a assinatura usados para comunicação com o Azure.
Tipo: | IAzureContextContainer |
Aliases: | AzContext, AzureRmContext, AzureCredential |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Environment
Ambiente que contém a conta do Azure.
Tipo: | String |
Aliases: | EnvironmentName |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-FederatedToken
Especifica um token fornecido por outro provedor de identidade. O emissor e o assunto neste token devem ser configurados primeiro para serem confiáveis pela ApplicationId.
Cuidado
Tokens federados são um tipo de credencial. Você deve tomar as precauções de segurança apropriadas para mantê-las confidenciais. Os tokens federados também têm tempo limite e podem impedir a conclusão de tarefas de execução prolongada.
Tipo: | String |
Aliases: | ClientAssertion |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Force
Substitua o contexto existente com o mesmo nome sem solicitar.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-GraphAccessToken
AccessToken for Graph Service.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Identity
Faça logon usando uma Identidade de Serviço Gerenciada.
Tipo: | SwitchParameter |
Aliases: | MSI, ManagedService |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-KeyVaultAccessToken
AccessToken para o Serviço KeyVault.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-MaxContextPopulation
Número máximo da assinatura para preencher contextos após o logon. O padrão é 25. Para preencher todas as assinaturas em contextos, defina como -1.
Tipo: | Int32 |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-MicrosoftGraphAccessToken
Token de acesso ao Microsoft Graph
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Scope
Determina o escopo das alterações de contexto, por exemplo, se as alterações se aplicam apenas ao processo atual ou a todas as sessões iniciadas por esse usuário.
Tipo: | ContextModificationScope |
Valores aceitos: | Process, CurrentUser |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-SendCertificateChain
Especifica se a declaração x5c (chave pública do certificado) deve ser enviada ao STS para obter uma substituição de certificado fácil no Azure AD.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-ServicePrincipal
Indica que essa conta é autenticada fornecendo credenciais de entidade de serviço.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-SkipContextPopulation
Ignora a população de contexto se nenhum contexto for encontrado.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-SkipValidation
Ignorar a validação para o token de acesso.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Subscription
Nome ou ID da assinatura.
Tipo: | String |
Aliases: | SubscriptionName, SubscriptionId |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-Tenant
ID ou nome de locatário opcional.
Nota
Devido às limitações da API atual, você deve usar uma ID de locatário em vez de um nome de locatário ao se conectar com uma conta B2B (empresa a empresa).
Tipo: | String |
Aliases: | Domain, TenantId |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-UseDeviceAuthentication
Use a autenticação de código do dispositivo em vez de um controle de navegador.
Tipo: | SwitchParameter |
Aliases: | DeviceCode, DeviceAuth, Device |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Tipo: | SwitchParameter |
Aliases: | wi |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
Entradas
Saídas
Azure PowerShell