Compartilhar via


Entre no Azure interativamente usando a CLI do Azure

Logons interativos no Azure oferecem uma experiência de usuário mais intuitiva e flexível. Com a CLI do Azure, você pode autenticar no Azure diretamente por meio do comando az login . Esse comando é útil para tarefas de gerenciamento ad hoc e para ambientes que exigem entrada manual, como cenários com autenticação multifator (MFA). Esse método simplifica o acesso para teste de script, aprendizado e gerenciamento de forma dinâmica sem a necessidade de configurar previamente entidades de serviço ou outros métodos de autenticação não-interativos.

Importante

A partir de 2025, a Microsoft imporá a MFA obrigatória para a CLI do Azure e outras ferramentas de linha de comando. A MFA afetará apenas as identidades de usuário da ID do Microsoft Entra . Isso não afetará identidades de trabalho, como principais de serviço e identidades gerenciadas.

Se você estiver usando az login com uma ID do Entra e uma senha para autenticar um script ou um processo automatizado, planeje migrar agora para uma identidade de carga de trabalho. Para obter mais informações, consulte o impacto da autenticação multifator na CLI do Azure em cenários de automação.

Pré-requisitos

Logon interativo

Para entrar interativamente, use o comando az login . A partir da CLI do Azure versão 2.61.0, a CLI do Azure usa o WAM (Gerenciador de Contas Web) no Windows e um logon baseado em navegador no Linux e no macOS por padrão.

az login

Seletor de assinatura

A partir da CLI do Azure versão 2.61.0, se você tiver acesso a várias assinaturas, será solicitado que você selecione uma assinatura do Azure no momento do logon, conforme mostrado no exemplo a seguir.

Retrieving subscriptions for the selection...

[Tenant and subscription selection]

No    Subscription name                     Subscription ID                           Tenant name
----  ------------------------------------  ----------------------------------------  --------------
[1]   Facility Services Subscription        00000000-0000-0000-0000-000000000000      Contoso
[2]   Finance Department Subscription       00000000-0000-0000-0000-000000000000      Contoso
[3]   Human Resources Subscription          00000000-0000-0000-0000-000000000000      Contoso
[4] * Information Technology Subscription   00000000-0000-0000-0000-000000000000      Contoso

The default is marked with an *; the default tenant is 'Contoso' and subscription is
'Information Technology Subscription' (00000000-0000-0000-0000-000000000000).

Select a subscription and tenant (Type a number or Enter for no changes): 2

Tenant: Contoso
Subscription: Finance Department Subscription (00000000-0000-0000-0000-000000000000)

[Announcements] With the new Azure CLI login experience, you can select the subscription you want to
use more easily. Learn more about it and its configuration at
https://go.microsoft.com/fwlink/?linkid=2271236

If you encounter any problems, open an issue at https://aka.ms/azclibug

Na próxima vez que você fizer login, o locatário e a assinatura selecionados anteriormente estarão marcados como padrão com um asterisco (*) ao lado de seu número. Essa marcação permite pressionar Enter para selecionar a assinatura padrão.

Por padrão, os comandos são executados na assinatura selecionada. Use az account set para alterar de uma linha de comando sua assinatura a qualquer momento. Para obter mais informações, consulte Como gerenciar assinaturas do Azure com a CLI do Azure.

Aqui estão algumas diretrizes sobre o seletor de assinatura a serem lembradas:

  • O seletor de assinatura está disponível apenas no Windows, Linux ou macOS de 64 bits.
  • O seletor de assinatura só está disponível ao usar o az login comando.
  • Você não é solicitado a selecionar uma assinatura ao fazer login com uma entidade de serviço ou identidade gerenciada.

Se você quiser desabilitar o recurso de seletor de assinatura, defina a propriedade de configuração core.login_experience_v2 como off.

az config set core.login_experience_v2=off
az login

Entrar com o WAM (Gerenciador de Contas da Web) no Windows

Começando com a CLI do Azure versão 2.61.0, o WAM (Gerenciador de Contas Web) é o método de autenticação padrão no Windows. O WAM é um componente do Windows 10+ que atua como um agente de autenticação. Um agente de autenticação é um aplicativo executado no computador de um usuário. Ele gerencia os handshakes de autenticação e a manutenção de token para contas conectadas.

O uso do WAM oferece vários benefícios:

Se você encontrar um problema e quiser reverter para o método de autenticação baseado no navegador anterior, defina a propriedade de configuração core.enable_broker_on_windows como false.

az account clear
az config set core.enable_broker_on_windows=false
az login

O WAM está disponível no Windows 10 e posterior e no Windows Server 2019 e posterior.

Entrar com um navegador

A CLI do Azure usa como padrão um método de autenticação baseado em navegador quando uma das seguintes condições é verdadeira:

  • O sistema operacional (SO) é Linux, macOS ou o sistema operacional Windows é anterior ao Windows 10 ou Ao Windows Server 2019.
  • A core.enable_broker_on_windows propriedade de configuração é definida como false.

Para entrar com um navegador, siga estas etapas:

  1. Execute o comando az login.

    az login
    

    Se a CLI do Azure puder abrir seu navegador padrão, ele iniciará o fluxo de código de autorização e abrirá o navegador padrão para carregar uma página de entrada do Azure.

    Caso contrário, ela iniciará o fluxo de código do dispositivo e instruirá você a abrir uma página do navegador em https://aka.ms/devicelogin. Em seguida, insira o código exibido no terminal.

    Se nenhum navegador da Web estiver disponível ou o navegador da Web não for aberto, você poderá forçar o fluxo de código do dispositivo com az login --use-device-code.

  2. Entre com suas credenciais de conta no navegador.

Entrar com credenciais na linha de comando

Forneça suas credenciais de usuário do Azure na linha de comando. Você só deve usar esse método de autenticação ao trabalhar com a CLI do Azure interativamente. Para aplicações em nível de produção, use uma entidade de serviço ou uma identidade gerenciada.

Essa abordagem não funciona com contas da Microsoft ou contas que têm a MFA (autenticação multifator) habilitada. Você recebe uma mensagem dizendo que é necessária a autenticação interativa.

az login --user <username> --password <password>

Importante

Para evitar exibir sua senha no terminal ao usar az login interativamente, use o read -s comando no Bash.

read -sp "Azure password: " AZ_PASS && echo && az login -u <username> -p $AZ_PASS

No PowerShell, use o Get-Credential cmdlet.

$AzCred = Get-Credential -UserName <username>
az login -u $AzCred.UserName -p $AzCred.GetNetworkCredential().Password

Entrar com um inquilino diferente

Você pode selecionar um locatário para entrar com o --tenant argumento. O valor desse argumento pode ser um .onmicrosoft.com domínio ou a ID de objeto do Azure para o locatário. Os métodos de entrada interativos e de linha de comando funcionam com --tenant.

Em ambientes selecionados e começando a partir da versão 2.61.0 da CLI do Azure, você deve desabilitar o seletor de assinatura primeiro ao definir a propriedade de configuração core.login_experience_v2 como off.

# disable the subscription selector (v. 2.61.0 and up)
az config set core.login_experience_v2=off

# login with a tenant ID
az login --tenant 00000000-0000-0000-0000-000000000000

Para reativar o seletor de assinatura, execute az config set core.login_experience_v2=on. Para obter mais informações sobre o seletor de assinatura, consulte login interativo.

Depois de entrar, se você quiser alterar seu locatário ativo, confira Como alterar seu locatário ativo.

Entrar usando --scope

az login --scope https://management.core.windows.net//.default

Sair

Para sair do Azure, use o comando az logout .

az logout

Limpe o cache da assinatura

Para atualizar sua lista de assinaturas, use o comando az account clear . Você deve entrar novamente para ver uma lista atualizada.

az account clear

az login

Limpar o cache de assinatura não é tecnicamente o mesmo processo que sair do Azure. No entanto, quando você limpa o cache de assinatura, não é possível executar comandos da CLI do Azure, incluindo az account set, até entrar novamente.

Tokens de atualização

Quando você entra com uma conta de usuário, a CLI do Azure gera e armazena um token de atualização de autenticação. Como os tokens de acesso são válidos apenas por um curto período de tempo, um token de atualização é emitido ao mesmo tempo em que o token de acesso é emitido. O aplicativo cliente pode trocar esse token de atualização por um novo token de acesso quando necessário. Para obter mais informações sobre o tempo de vida e a expiração do token, consulte Atualizar tokens no plataforma de identidade da Microsoft.

Use o comando az account get-access-token para recuperar o token de acesso:

# get access token for the active subscription
az account get-access-token

# get access token for a specific subscription
az account get-access-token --subscription "<subscription ID or name>"

Aqui estão algumas informações adicionais sobre as datas de expiração do token de acesso:

  • As datas de expiração são atualizadas em um formato compatível com a CLI do Azure baseada em MSAL.
  • A partir da CLI do Azure 2.54.0, az account get-access-token retorna a propriedade expires_on junto com a propriedade expiresOn para o tempo de expiração do token.
  • A propriedade expires_on representa um carimbo de data/hora POSIX (Portable Operating System Interface), enquanto a propriedade expiresOn representa uma data e hora local.
  • A expiresOn propriedade não expressa "ajustar" quando o horário de verão termina. Isso pode causar problemas em países ou regiões onde o horário de verão é adotado. Para obter mais informações sobre "fold", consulte PEP 495 – Desambiguação de Hora Local.
  • Recomendamos que os aplicativos downstream usem a expires_on propriedade, pois ela usa o UTC (Código de Tempo Universal).

Exemplo de saída:

{
  "accessToken": "...",
  "expiresOn": "2023-10-31 21:59:10.000000",
  "expires_on": 1698760750,
  "subscription": "...",
  "tenant": "...",
  "tokenType": "Bearer"
}

Resolução de problemas

A conexão deste site não é segura

Quando o navegador padrão for o Microsoft Edge, você poderá encontrar o seguinte erro ao tentar entrar no Azure interativamente com az login: "A conexão para este site não é segura". Para resolver esse problema, visite edge://net-internals/#hsts no Microsoft Edge. Adicione localhost em "Excluir política de segurança de domínio" e selecione Excluir.

A autenticação interativa é necessária

Você recebe essa mensagem ao usar uma identidade de usuário para autenticar no Azure e a autenticação multifator é necessária. A solução é usar uma identidade de carga de trabalho como uma entidade de serviço ou uma identidade gerenciada para autenticar no Azure.

Falha na autenticação em relação ao locatário

Esse erro ocorre quando uma única identidade de usuário do Entra pertence a vários locatários do Azure. A CLI do Azure faz a varredura nos locatários aos quais você tem acesso e tenta autenticar-se. Para fazer logon com o locatário de sua escolha, use o --tenant parâmetro. Para obter mais informações, consulte Entrar com um locatário diferente.

Próximas etapas