Connect-AzAccount

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

Syntax

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 Gerenciador de Recursos do Azure. Para adicionar uma conta autenticada para uso com o Gerenciamento de Serviços, use o Add-AzureAccount cmdlet do módulo do PowerShell do Azure. 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á efetuar login usando a opção interativa ou usar a autenticação da entidade de serviço.

Connect-AzAccount

Account                SubscriptionName TenantId                Environment
-------                ---------------- --------                -----------
azureuser@contoso.com  Subscription1    xxxx-xxxx-xxxx-xxxx     AzureCloud

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 $Credential na variável. O segundo comando se conecta a uma conta do Azure usando as credenciais armazenadas no $Credential. Essa conta se autentica 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

O primeiro comando armazena $Credential as credenciais da entidade de serviço na variável. O segundo comando conecta o 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 se autentica como uma entidade de serviço.

$SecurePassword = ConvertTo-SecureString -String "Password123!" -AsPlainText -Force
$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 Identidade de Serviço Gerenciado (MSI) atribuída pelo sistema do ambiente 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 login da Identidade de Serviço Gerenciado e o ClientId

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-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: Conectar-se com o AuthScope

O AuthScope é usado para oferecer suporte ao 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. Depois que o AuthScope for especificado, por exemplo, Armazenamento, o Connect-AzAccount primeiro fará login com o escopo https://storage.azure.com/de armazenamento 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-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 certificado e chave privada como entrada.

$SecurePassword = ConvertTo-SecureString -String "Password123!" -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 da 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ê-los confidenciais. Os tokens de acesso também atingem o tempo limite e podem impedir a conclusão de tarefas de longa execução.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-AccountId

Account Id / User Id / User Name para fazer login no conjunto de parâmetros Default (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 de cliente associada. Para usar a identidade atribuída ao sistema, deixe esse campo em branco.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationId

ID do aplicativo da entidade de serviço.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters: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/.

Type:String
Aliases:AuthScopeTypeName
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificatePassword

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

Type:SecureString
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificatePath

O caminho do arquivo certficate no formato pkcs#12.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CertificateThumbprint

Hash de certificado ou impressão digital.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

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

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ContextName

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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 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.

Type:PSCredential
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

As credenciais, a conta, o locatário e a assinatura usados para a comunicação com o Azure.

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Environment

Ambiente que contém a conta do Azure.

Type:String
Aliases:EnvironmentName
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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 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.

Type:String
Aliases:ClientAssertion
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Force

Substitua o contexto existente com o mesmo nome sem solicitar.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-GraphAccessToken

AccessToken para Graph Service.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Identity

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

Type:SwitchParameter
Aliases:MSI, ManagedService
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-KeyVaultAccessToken

AccessToken para o serviço KeyVault.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaxContextPopulation

Número máximo de assinatura para preencher contextos após o login. O padrão é 25. Para preencher todas as assinaturas de contextos, defina como -1.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MicrosoftGraphAccessToken

Token de acesso ao Microsoft Graph

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Scope

Determina o escopo das alterações de contexto, por exemplo, se as alterações se aplicam somente ao processo atual ou a todas as sessões iniciadas por esse usuário.

Type:ContextModificationScope
Accepted values:Process, CurrentUser
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ServicePrincipal

Indica que essa conta se autentica fornecendo credenciais de entidade de serviço.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-SkipContextPopulation

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SkipValidation

Ignorar validação para token de acesso.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Subscription

Nome ou ID da assinatura.

Type:String
Aliases:SubscriptionName, SubscriptionId
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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).

Type:String
Aliases:Domain, TenantId
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-UseDeviceAuthentication

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

Type:SwitchParameter
Aliases:DeviceCode, DeviceAuth, Device
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entradas

String

Saídas

PSAzureProfile