Compartilhar via


Connect-AzAccount

Conecte-se ao Azure com uma conta autenticada para uso com cmdlets dos módulos do Az PowerShell.

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 Connect-AzAccount cmdlet 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 Add-AzureAccount cmdlet 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 -ListAvailableo . Para ignorar essa população de contexto, especifique o parâmetro de opção SkipContextPopulation . Depois de executar esse cmdlet, você pode se desconectar de uma conta do Azure usando Disconnect-AzAccounto .

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, você deverá fazer logon usando a opção interativa ou usar 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 as credenciais do usuário e as armazena na $Credential variável. O segundo comando se conecta a uma conta do Azure usando as credenciais armazenadas no $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 $Credential variável. Em seguida, ele se conecta ao locatário do Azure especificado usando as credenciais da entidade de serviço armazenadas na $Credential variável. O parâmetro de opção ServicePrincipal indica que a conta é autenticada como uma entidade de serviço.

$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-se usando uma identidade de serviço gerenciado

Este exemplo se conecta usando uma MSI (Identidade de Serviço Gerenciado) atribuída pelo sistema do ambiente de host. Por exemplo, você entra no Azure de uma máquina virtual que tem um MSI atribuído.

Connect-AzAccount -Identity
Set-AzContext -Subscription Subscription1

Account                SubscriptionName TenantId                Environment
-------                ---------------- --------                -----------
MSI@50342              Subscription1    xxxx-xxxx-xxxx-xxxx     AzureCloud

Exemplo 6: Conectar-se usando o logon e o ClientId do Managed Service Identity

Este exemplo se conecta usando a Identidade de Serviço Gerenciado de myUserAssignedIdentity. A identidade atribuída pelo usuário é adicionada à máquina virtual e, em seguida, é feita a conexão usando o ClientId dessa identidade. Para saber mais, confira 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-se 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 com AuthScope

O AuthScope é usado para dar suporte ao cenário em 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 o AuthScope for especificado, por exemplo, Storage, o Connect-AzAccount primeiro fará login com o escopo https://storage.azure.com/de armazenamento e, em seguida, exigirá silenciosamente o token para o ARM.

Connect-AzAccount -AuthScope Storage

Account                SubscriptionName TenantId                Environment
-------                ---------------- --------                -----------
yyyy-yyyy-yyyy-yyyy    Subscription1    xxxx-xxxx-xxxx-xxxx     AzureCloud

Exemplo 9: Conectar-se 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, que é especificado por CertficatePath, deve conter o certificado e a chave privada como 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 para 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 devidas precauções de segurança para mantê-los confidenciais. Os tokens de acesso também atingem o tempo limite e podem impedir que tarefas de longa duração 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 / ID do usuário / Nome do usuário para fazer login no conjunto de parâmetros padrão (UserWithSubscriptionId); ID da conta para token de acesso no conjunto de parâmetros AccessToken ; ID da conta para o serviço gerenciado no conjunto de parâmetros ManagedService . Pode ser uma ID de recurso de serviço gerenciado ou a ID do cliente associada. Para usar a identidade atribuída pelo sistema, deixe esse campo em branco.

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 OAuth opcional para logon, valores predefinidos com suporte: AadGraph, AnalysisServices, Attestation, Batch, DataLake, KeyVault, OperationalInsights, Storage, Synapse. Ele também suporta ID de 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#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 certficate no formato pkcs#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 sua 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 . Para obter mais informações sobre o objeto PSCredential , digite 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 para 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 a 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 nesse token devem ser configurados primeiro para serem confiáveis pelo ApplicationId.

Cuidado

Os tokens federados são um tipo de credencial. Você deve tomar as devidas precauções de segurança para mantê-los confidenciais. Os tokens federados também atingem o tempo limite e podem impedir que tarefas de longa duração sejam concluídas.

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 avisar.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-GraphAccessToken

AccessToken para o serviço do Graph.

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 gerenciado.

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 de assinatura para preencher contextos após o logon. O padrão é 25. Para preencher todas as assinaturas de 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 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

Ignore a validação do 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

Nome ou ID do locatário opcional.

Observação

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 empresa a empresa (B2B).

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 do 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

String

Saídas

PSAzureProfile