Entre com uma entidade de serviço usando a CLI do Azure

Entidades de serviço são contas que não estão associadas a nenhum usuário específico, as quais podem ter permissões atribuídas por meio de funções predefinidas. Autenticar com uma entidade de serviço é a melhor maneira de gravar scripts seguros ou programas, permitindo a aplicação de restrições de permissões e informações de credenciais estáticas armazenadas localmente. Para saber mais sobre entidades de serviço, confira Trabalhar com entidades de serviço do Azure usando a CLI do Azure.

Para entrar com uma entidade de serviço, você precisa:

  • Da URL ou nome associado à entidade de serviço
  • A senha da entidade de serviço ou o certificado X509 usado para criar a entidade de serviço em formato PEM
  • O locatário associado à entidade de serviço, como um domínio .onmicrosoft.com ou ID de objeto do Azure

Observe dois fatos importantes ao trabalhar com entidades de serviço e a CLI do Azure:

  • Um CERTIFICADO precisa ser anexado à CHAVE PRIVADA dentro de um arquivo PEM. Para obter um exemplo de um formato de arquivo PEM, confira Autenticação baseada em certificado.

  • Se a entidade de serviço usa um certificado que é armazenado no cofre de chaves, a chave privada do certificado deve estar disponível sem entrar no Azure. Para recuperar o certificado de az login, confira Recuperar certificado do Key Vault.

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

Importante

Caso deseje evitar a exibição de sua senha no console e esteja usando az login interativamente, use 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>

No PowerShell, use o cmdlet Get-Credential.

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

Confira também