Autorizar a CLI gcloud

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Para acessar o Google Cloud, você normalmente precisa autorizar a CLI do Google Cloud. Nesta página, mostramos as opções de autorização disponíveis e mostramos como gerenciar as contas que você usa para autorização. Se você estiver usando uma instância do Compute Engine ou o Cloud Shell, não é necessário autorizar a CLI gcloud.

Tipos de contas

Para conceder autorização à CLI gcloud para acessar o Google Cloud, use uma conta de usuário ou uma conta de serviço.

Uma conta de usuário é uma conta do Google Cloud que permite que os usuários finais se autentiquem no seu aplicativo. Na maioria dos casos de uso comuns, especialmente interativamente usando a CLI gcloud, usar uma conta de usuário é a prática recomendada.

Uma conta de serviço é uma Conta do Google associada ao seu projeto do Google Cloud e não a um usuário específico. Para que o aplicativo use uma conta de serviço, forneça uma chave de conta de serviço ao aplicativo. Como alternativa, é possível usar a conta de serviço integrada disponível ao usar o Cloud Functions, App Engine, Compute Engine ou Google Kubernetes Engine. É recomendável usar uma conta de serviço para executar scripts da CLI gcloud em várias máquinas.

Escolher um tipo de autorização

Você precisa autorizar a Google Cloud CLI a gerenciar os recursos do Google Cloud. A Google Cloud CLI e o Google Cloud usam o OAuth2 para autenticação e autorização.

Escolha um dos seguintes tipos de autorização:

Tipo Descrição
Conta de usuário Recomendado se você estiver usando a CLI gcloud na linha de comando ou gravando scripts com a CLI gcloud para uso em uma única máquina.
Conta de serviço Recomendado se você estiver instalando e configurando a CLI gcloud como parte de um processo de implantação de máquina em produção ou para uso em instâncias de máquina virtual do Compute Engine em que todos os usuários têm acesso a root.

Para mais informações sobre autenticação e o Google Cloud, consulte Visão geral da autenticação.

Autorizar com uma conta de usuário

Use os seguintes comandos da CLI gcloud para autorizar o acesso com uma conta de usuário:

Comando Descrição
gcloud init Autoriza o acesso e executa outras etapas comuns de configuração.
gcloud auth login Autoriza apenas o acesso.

Durante a autorização, esses comandos recebem credenciais de conta do Google Cloud e as armazenam no sistema local. A conta especificada se torna a conta ativa na sua configuração. A CLI gcloud usa as credenciais armazenadas para acessar o Google Cloud. É possível ter quantas contas quiser com credenciais armazenadas em uma única instalação da CLI gcloud, mas apenas uma conta estará ativa por vez.

Executar gcloud init

O gcloud init autoriza o acesso e executa outras etapas comuns de configuração. gcloud init usa um fluxo de autorização baseado na Web para autenticar a conta de usuário e conceder permissões de acesso.

Para autorizar o acesso e realizar outras etapas comuns de configuração:

  1. Execute gcloud init:

    gcloud init
    

    Ou para impedir o comando de abrir automaticamente um navegador da Web:

    gcloud init --console-only
    

    Usar a sinalização --console-only é útil se você estiver executando o comando em um sistema remoto que usa ssh e não tem acesso a um navegador nesse sistema. Nesse caso, abra manualmente o URL fornecido em um navegador no sistema local para concluir o processo de autorização.

  2. Siga o fluxo de autorização baseado no navegador para autenticar a conta e conceder permissões de acesso.

Para mais informações sobre gcloud init, consulte Como inicializar a CLI gcloud.

Executar gcloud auth login

A execução de gcloud auth login autoriza apenas a conta de usuário. Para autorizar o acesso sem realizar outras etapas de configuração, use uma das opções a seguir.

  • Se você quiser autorizar a CLI gcloud em uma máquina com navegador, siga estas etapas.

    1. Autorize a CLI gcloud:

      gcloud auth login
      
    2. Siga o fluxo de autorização baseado no navegador para autenticar a conta e conceder permissões de acesso.

  • Se você quiser autorizar a CLI gcloud em uma máquina que não tenha um navegador e possa instalá-la em outra máquina com navegador, use a sinalização --no-browser.

    1. Autorize a CLI gcloud:

      gcloud auth login --no-browser
      
    2. Copie o comando longo que começa com gcloud auth login --remote-bootstrap=".

    3. Cole e execute este comando na linha de comando de uma máquina diferente e confiável que tenha instalações locais de um navegador da Web e da ferramenta gcloud CLI versão 372.0 ou posterior.

    4. Copie a saída do URL longo do computador com o navegador da Web.

    5. Cole o URL longo de volta na primeira máquina do prompt, "insira a saída do comando acima" e pressione Enter para concluir a autorização.

  • Se você quiser autorizar a CLI gcloud em uma máquina que não tem um navegador e não puder instalar a CLI gcloud em outra máquina com navegador, use a sinalização --no-launch-browser. A sinalização --no-launch-browser impede que o comando abra automaticamente um navegador da Web.

    1. Autorize a CLI gcloud:

      gcloud auth login --no-launch-browser
      
    2. Copie o URL longo que começa com https://accounts.google.com/o/oauth2/auth...

    3. Cole esse URL no navegador de uma máquina diferente e confiável que tenha um navegador da Web.

    4. Copie o código de autorização da máquina com o navegador da Web.

    5. Cole o código de autorização de volta na primeira máquina no prompt, "insira o código de verificação" e pressione Enter para concluir a autorização.

  • Se você já tiver um token de acesso, use um dos métodos a seguir para transmitir o token de acesso para a CLI gcloud:

    • Armazene o token de acesso em um arquivo e defina o caminho por meio da sinalização --access-token-file.
    • Armazene o token de acesso em um arquivo e defina o caminho na propriedade auth/access_token_file.
    • Defina a variável de ambiente CLOUDSDK_AUTH_ACCESS_TOKEN como o valor do token de acesso.

Autorizar com uma conta de serviço

gcloud auth activate-service-account autoriza o acesso usando uma conta de serviço. Como acontece com gcloud init e gcloud auth login, esse comando salva as credenciais da conta de serviço no sistema local na conclusão bem-sucedida e define a conta especificada como a conta ativa na configuração da CLI gcloud.

Para autorizar o uso de uma conta de serviço:

  1. Acesse a página "Contas de serviço" no Console do Google Cloud.

    Acessar a página "Contas de serviço"

  2. Escolha uma conta atual ou crie uma nova clicando em Criar conta de serviço.

  3. Para criar e fazer o download de um arquivo de chave formatado em JSON:

    1. Clique em na coluna Ações da conta de serviço e selecione Gerenciar chaves.
    2. Clique no menu suspenso Adicionar chave.
    3. Clique em Criar nova chave.
    4. Selecione o formato da chave e clique em Criar.
  4. Se necessário, mova o arquivo de chave para um local no mesmo sistema em que você está autorizando a CLI gcloud.

    Como alternativa, em vez de seguir as etapas de 1 a 4, é possível criar uma chave para uma conta de serviço atual por meio de gcloud iam service-accounts keys create.

  5. Para ativar a conta de serviço, execute gcloud auth activate-service-account:

    gcloud auth activate-service-account ACCOUNT --key-file=KEY_FILE
    
  6. Exclua o arquivo de chave do sistema. A CLI gcloud armazena chaves e a cópia da CLI gcloud da chave permanece.

Listar contas

Para listar as contas com credenciais armazenadas no sistema local, execute gcloud auth list:

gcloud auth list

A CLI gcloud lista as contas e mostra qual está ativa:

Credentialed accounts:
 - user-1@gmail.com (active)
 - user-2@gmail.com

Alternar a conta ativa

Para alternar a conta ativa, execute gcloud config set:

gcloud config set account ACCOUNT

em que [ACCOUNT] é o endereço de e-mail completo da conta.

Você também pode alternar entre contas criando uma configuração separada que especifique a conta diferente e alterne entre as configurações:

gcloud config configurations activate CONFIGURATION

Se você quiser alternar a conta usada pela CLI gcloud por invocação, modifique a conta ativa usando a sinalização --account.

Definir a duração da sessão autorizada (somente no Google Workspace)

Como administrador, você controla por quanto tempo diversos usuários podem acessar a CLI gcloud sem precisar fazer a autenticação novamente. Por exemplo, é possível forçar os usuários com privilégios elevados a fazer uma nova autenticação com mais frequência do que os usuários normais.

Para mais informações, consulte Definir a duração da sessão para os serviços do Google Cloud.

Revogar credenciais de uma conta

É possível revogar credenciais quando quiser impedir o acesso da CLI gcloud por uma conta específica. Não é necessário revogar credenciais para alternar entre contas.

Para revogar as credenciais, execute gcloud auth revoke:

gcloud auth revoke ACCOUNT

Para revogar todo o acesso da CLI gcloud em todas as máquinas, remova a CLI gcloud da lista de apps que têm acesso à sua conta.

Trabalhar com arquivos de credenciais

Encontrar seus arquivos de credenciais

Para encontrar o local dos seus arquivos de credenciais, execute gcloud info:

gcloud info

A CLI gcloud imprime informações sobre a instalação. Arquivos de credenciais são armazenados no diretório de configuração do usuário:

User Config Directory: [/home/USERNAME/.config/gcloud]

Configurar o Application Default Credentials

A CLI gcloud oferece suporte para gerenciar o Application Default Credentials (ADC) com o grupo de comandos gcloud auth application-default. Para disponibilizar as credenciais de usuário para o ADC, execute gcloud auth application-default login:

gcloud auth application-default login

Essas credenciais não são usadas pela CLI gcloud. Para mais informações, consulte Como fornecer credenciais para o ADC e Como o Application Default Credentials funciona.

A seguir