Iniciar sessão com a CLI do Azure

Existem vários tipos de autenticação para a Interface de Command-Line do Azure (CLI), por isso, como inicia sessão? O Azure Cloud Shell é a forma mais fácil de começar, uma vez que regista automaticamente o utilizador. Localmente, pode iniciar sessão interativamente através do browser com o comando az login . Quando escreve scripts, a abordagem recomendada é utilizar principais de serviço. Ao conceder apenas as permissões adequadas de que um principal de serviço precisa, ajuda a manter a sua automatização segura.

Ao iniciar sessão com uma conta de utilizador, a CLI do Azure gera e armazena um token de atualização de autenticação. Para obter mais informações sobre a configuração do token de atualização e sessão, veja Propriedades da política de duração do token de atualização e sessão.

Depois de iniciar sessão, os comandos da CLI são executados na sua subscrição predefinida. Se tiver várias subscrições, pode alterar a sua subscrição predefinida.

Nota

Dependendo do método de início de sessão, o seu inquilino pode ter políticas de Acesso Condicional que restringem o acesso a determinados recursos.

Iniciar sessão interativamente

O método de autenticação predefinido da CLI do Azure para inícios de sessão utiliza um browser e um token de acesso para iniciar sessão.

  1. Execute o comando login.

    az login
    

    Se a CLI conseguir abrir o browser predefinido, inicia o fluxo de código de autorização e abre o browser predefinido para carregar uma página de início de sessão do Azure.

    Caso contrário, inicia o fluxo de código do dispositivo e indica-lhe para abrir uma página do browser em https://aka.ms/devicelogin e introduzir o código apresentado no seu terminal.

    Se não estiver disponível nenhum browser ou se o browser não abrir, poderá forçar o fluxo de código do dispositivo com az login --use-device-code.

  2. Inicie sessão com as credenciais da sua conta no browser.

Iniciar sessão com credenciais na linha de comandos

Forneça as suas credenciais de utilizador do Azure na linha de comandos.

Nota

Esta abordagem não funciona em contas Microsoft nem em contas que tenham a autenticação multifator ativada.

az login -u <username> -p <password>

Importante

Se quiser evitar mostrar a sua palavra-passe na consola e estiver a utilizar az login de forma interativa, utilize o comando read -s em bash.

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

Em PowerShell, utilize o Get-Credential cmdlet .

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

Iniciar sessão com um principal de serviço

Os principais de serviço são contas não associadas a nenhum utilizador específico, que podem ter permissões atribuídas através de funções predefinidas. A autenticação com um principal de serviço é a melhor forma de escrever scripts ou programas seguros, permitindo-lhe aplicar ambas as restrições de permissões e informações de credenciais estáticas armazenadas localmente. Para saber mais sobre os principais de serviço, veja Trabalhar com principais de serviço do Azure com a CLI do Azure.

Para iniciar sessão com um principal de serviço, precisa do seguinte:

  • O URL ou o nome associado ao principal de serviço
  • A palavra-passe do principal de serviço ou o certificado X509 utilizado para criar o principal de serviço em formato PEM
  • O inquilino associado ao principal de serviço, como um domínio .onmicrosoft.com ou um ID de objeto do Azure

Nota

Um CERTIFICADO tem de ser anexado à CHAVE PRIVADA num ficheiro PEM. Para obter um exemplo de um formato de ficheiro PEM, veja Autenticação baseada em certificados.

Importante

Se o principal de serviço utilizar um certificado armazenado no Key Vault, a chave privada desse certificado tem de estar disponível sem iniciar sessão no Azure. Para obter o certificado para az login, veja Obter o certificado do Key Vault.

az login --service-principal -u <app-id> -p <password-or-cert> --tenant <tenant>

Importante

Se quiser evitar mostrar a sua palavra-passe na consola e estiver a utilizar az login de forma interativa, utilize o comando read -s em bash.

read -sp "Azure password: " AZ_PASS && echo && az login --service-principal -u <app-id> -p $AZ_PASS --tenant <tenant>

Em PowerShell, utilize o Get-Credential cmdlet .

$AzCred = Get-Credential -UserName <app-id>
az login --service-principal -u $AzCred.UserName -p $AzCred.GetNetworkCredential().Password --tenant <tenant>

Consulte Trabalhar com principais de serviço para obter mais informações sobre formatos de ficheiro PEM.

Iniciar sessão com um inquilino diferente

Pode selecionar um inquilino para o início de sessão com o argumento --tenant. O valor deste argumento pode ser um domínio .onmicrosoft.com ou o ID do objeto do Azure para o inquilino. Tanto o método de início de sessão interativo como através da linha de comandos funcionam com o --tenant.

az login --tenant <tenant>

Iniciar sessão com uma identidade gerida

Nos recursos configurados para identidades geridas para recursos do Azure, pode iniciar sessão com a identidade gerida. O início de sessão com a identidade do recurso é feito com o sinalizador --identity.

az login --identity

Se o recurso tiver várias identidades geridas atribuídas pelo utilizador e nenhuma identidade atribuída pelo sistema, tem de especificar o ID de cliente, o ID de objeto ou o ID de recurso da identidade gerida atribuída pelo utilizador para --username início de sessão.

az login --identity --username <client_id|object_id|resource_id>

Para saber mais sobre as identidades geridas para recursos do Azure, veja Configure managed identities for Azure resources (Configurar identidades geridas para os recursos do Azure) e Use managed identities for Azure resources for sign in (Utilizar identidades geridas para recurso do Azure para iniciar sessão).

Iniciar sessão com o Gestor de Conta Web (WAM)

A CLI do Azure oferece agora suporte de pré-visualização para o Gestor de Conta Web (WAM). O WAM é um componente Windows 10+ que atua como mediador de autenticação. (Um mediador de autenticação é uma aplicação que é executada no computador de um utilizador que gere os handshakes de autenticação e a manutenção de tokens para contas ligadas.)

A utilização do WAM tem várias vantagens:

Iniciar sessão com o WAM é uma funcionalidade de pré-visualização e opt-in. Depois de ativada, a interface de utilizador baseada no browser anterior é substituída.

az config set core.allow_broker=true
az account clear
az login

Na fase atual do desenvolvimento, existem algumas limitações conhecidas para a WAM:

  • O WAM está disponível no Windows 10 e posterior e no Windows Server 2019 e posterior. No Mac, Linux e versões anteriores do Windows, voltamos automaticamente a um browser.
  • Contas Microsoft (por exemplo @outlook.com , ou @live.com) não são suportadas por enquanto. Estamos a trabalhar com a equipa de Identidade da Microsoft para disponibilizar o suporte mais tarde.

Ver também