Partilhar 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 -ListAvailable. 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. Tem de fornecer uma conta Microsoft ou credenciais de ID organizacional. Se a autenticação multifator estiver habilitada para suas credenciais, você deverá efetuar login 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 credenciais de usuário e as armazena $Credential na 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

Este 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 login 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 Identidade de Serviço Gerenciado (MSI) atribuída pelo sistema do ambiente host. Por exemplo, você entra no Azure a partir 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 login da Identidade do Serviço Gerenciado e o ClientId

Este exemplo se conecta usando a Identidade de Serviço Gerenciado de myUserAssignedIdentity. Ele adiciona a identidade atribuída ao usuário à máquina virtual e, em seguida, se conecta usando o ClientId da identidade atribuída ao 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 da 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-lhes permissões, 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: Conecte-se com o AuthScope

AuthScope é usado para suportar o cenário de que os recursos do plano de dados têm autenticação aprimorada do que os recursos ARM, por exemplo, o armazenamento precisa de MFA, mas o ARM não. Uma vez que AuthScope é especificado, por exemplo, Storage, Connect-AzAccount primeiro fará login com escopo https://storage.azure.com/de armazenamento e, em seguida, silenciosamente exigirá 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 da entidade de serviço baseada em certificado. O arquivo de certificado, que é especificado por CertficatePath, deve conter certificado e 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 WAM

Este exemplo demonstra como habilitar a configuração para WAM (Web Account Manager) 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.

Atenção

Os tokens de acesso são um tipo de credencial. Você deve tomar as precauções de segurança apropriadas para mantê-los confidenciais. Os tokens de acesso também atingem o tempo limite e podem impedir a conclusão de tarefas de longa execução.

Tipo:String
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-AccountId

ID da Conta / ID do Usuário / Nome de Usuário para fazer login com o conjunto de parâmetros Default (UserWithSubscriptionId); ID de 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 um ID de recurso de serviço gerenciado ou o ID do cliente associado. Para usar a identidade atribuída ao sistema, deixe este campo em branco.

Tipo:String
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-ApplicationId

ID do aplicativo da entidade de serviço.

Tipo:String
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-AuthScope

Escopo OAuth opcional para login, valores predefinidos suportados: 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
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-CertificatePassword

A senha necessária para acessar o arquivo de certificado pkcs#12.

Tipo:SecureString
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-CertificatePath

O caminho do arquivo certficate no formato pkcs#12.

Tipo:String
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-CertificateThumbprint

Hash ou impressão digital do certificado.

Tipo:String
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-Confirm

Solicita a sua confirmação antes de executar o cmdlet.

Tipo:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-ContextName

Nome do contexto padrão do Azure para este login. Para obter mais informações sobre contextos do Azure, consulte Objetos de contexto do Azure PowerShell.

Tipo:String
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-Credential

Especifica um objeto PSCredential . Para obter mais informações sobre o objeto PSCredential , digite Get-Help Get-Credential. O objeto PSCredential fornece o ID de 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
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais: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
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-Environment

Ambiente que contém a conta do Azure.

Tipo:String
Aliases:EnvironmentName
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais: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 pelo ApplicationId.

Atenção

Os tokens federados são um tipo de credencial. Você deve tomar as precauções de segurança apropriadas para mantê-los confidenciais. Os tokens federados também atingem o tempo limite e podem impedir a conclusão de tarefas de longa execução.

Tipo:String
Aliases:ClientAssertion
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-Force

Substitua o contexto existente com o mesmo nome sem avisar.

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-GraphAccessToken

AccessToken para serviço gráfico.

Tipo:String
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-Identity

Faça login usando uma Identidade de Serviço Gerenciado.

Tipo:SwitchParameter
Aliases:MSI, ManagedService
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-KeyVaultAccessToken

AccessToken para o serviço KeyVault.

Tipo:String
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-MaxContextPopulation

Número máximo de subscrição para preencher contextos após o início de sessão. A predefinição é 25. Para preencher todas as assinaturas de contextos, defina como -1.

Tipo:Int32
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-MicrosoftGraphAccessToken

Token de acesso ao Microsoft Graph

Tipo:String
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais: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 aceites:Process, CurrentUser
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais: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
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-ServicePrincipal

Indica que essa conta é autenticada fornecendo credenciais da entidade de serviço.

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-SkipContextPopulation

Ignora a população de contexto se nenhum contexto for encontrado.

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-SkipValidation

Ignore a validação do token de acesso.

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-Subscription

Nome ou ID da subscrição.

Tipo:String
Aliases:SubscriptionName, SubscriptionId
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-Tenant

Nome ou ID do 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 a uma conta B2B (business-to-business).

Tipo:String
Aliases:Domain, TenantId
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-UseDeviceAuthentication

Use a autenticação de código de dispositivo em vez de um controle de navegador.

Tipo:SwitchParameter
Aliases:DeviceCode, DeviceAuth, Device
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-WhatIf

Apresenta o que aconteceria mediante a execução do cmdlet. O cmdlet não é executado.

Tipo:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

Entradas

String

Saídas

PSAzureProfile