Antes de interagir com Google Cloud APIs e serviços, você precisa provar que é quem diz ser. Esse processo de comprovação de identidade é conhecido como autenticação.
Para autenticar no Google Cloud, você precisa fornecer credenciais como evidência de sua identidade. Por exemplo, para usar um serviço, você pode se autenticar usando credenciais como uma senha e um código único.
Google Cloud refere-se a usuários autenticados como principais. Quando você tenta acessar um recurso, como um Google Cloud projeto ou um bucket do Cloud Storage, Google Cloud verifica o nível de acesso que o principal tem ao recurso solicitado. Esse processo é chamado de autorização e é processado por um sistema chamado Identity and Access Management (IAM).
Esses mesmos conceitos se aplicam ao código que executa tarefas automatizadas em seu nome, conhecidas como cargas de trabalho. Uma carga de trabalho precisa fornecer credenciais para comprovar a identidade e autenticar como um principal. Depois disso, Google Cloud o pode determinar o nível de acesso que a carga de trabalho tem aos recursos solicitados.
Tipos principais
Há diferentes tipos de principais que podem ser autenticados. Você pode até usar diferentes tipos de principais em diferentes estágios de uma tarefa ou em diferentes ambientes de desenvolvimento.
Os principais tipos de principais e as credenciais necessárias para autenticar incluem o seguinte:
Contas de usuário: são Contas do Google para que humanos façam trabalhos interativos, como tarefas administrativas incidentais, configuração não programática de Google Cloud serviços, testes, experimentos e observabilidade.
Você se autentica como uma conta de usuário com credenciais de usuário, como uma senha e um código único.
Contas de serviço: são contas internas que Google Cloud as cargas de trabalho podem usar para acessar serviços ou recursos. Normalmente, você não se autentica como uma conta de serviço diretamente. Em vez disso, você anexa uma conta de serviço a um recurso, como uma VM do Compute Engine, ou usa a representação de conta de serviço.
Para a maioria dos cenários, recomendamos o uso de credenciais de conta de serviço de curta duração para autenticar uma conta de serviço.
Identidades federadas: são identidades que referenciam contas de usuário ou de serviço em um provedor de identidade externo. Há dois tipos de identidades federadas com suporte no Google Cloud, que têm nomes semelhantes:
Federação de identidade de colaboradores: permite que usuários humanos façam login no Google Cloud com identidades gerenciadas por um provedor de identidade externo. Se a organização já tiver o logon único (SSO) configurado, você poderá usar esse tipo de identidade para autenticar no Google Cloud.
O provedor de identidade precisa oferecer suporte ao OpenID Connect (OIDC) ou ao SAML 2.0 para usar a federação de identidade de colaboradores.
Federação de identidade da carga de trabalho: permite que cargas de trabalho executadas externamente operem em Google Cloud Google Cloud recursos.
É possível usar a federação de identidade da carga de trabalho com cargas de trabalho que são autenticadas usando certificados de cliente X.509; executadas na Amazon Web Services (AWS) ou no Azure; no Active Directory local; em serviços de implantação, como o GitHub e GitLab; e com qualquer provedor de identidade que ofereça suporte ao OpenID Connect (OIDC) ou à Linguagem de marcação para autorização de segurança (SAML) V2.0.
Para saber mais sobre esses e outros tipos de principais com suporte em Google Cloud, consulte Tipos principais.
Configurar sua Google Cloud organização para autenticação
Ao configurar a autenticação para sua Google Cloud organização, talvez seja necessário integrar sistemas e fluxos de trabalho atuais ao Google Cloud:
Se você tiver um provedor de identidade que quer usar, você precisa configurar a federação de identidade de colaboradores.
Se você tiver cargas de trabalho em execução fora do Google Cloud que precisam de acesso a Google Cloud recursos, configure a federação de identidade da carga de trabalho.
Também recomendamos que você faça o seguinte para ajudar a proteger seu Google Cloud ambiente:
Verifique se a autenticação multifator está ativada para seus usuários.
Verifique se é necessário mudar as configurações de reautenticação.
Crie políticas para gerenciar chaves de API.
Crie políticas para gerenciar conta de serviço de serviço.
Autenticar pessoas e cargas de trabalho
A forma de autenticação no Google Cloud depende das APIs e dos serviços que você está usando e da maneira como interage com eles.
Autenticar pessoas
Ao realizar trabalhos manuais e interativos, como tarefas administrativas incidentais, configurar recursos, mudar configurações, fazer experimentos e navegar pelos registros, você usa as credenciais da sua conta de usuário para autenticar.
Console
Para trabalhos interativos no Google Cloud console, você se autentica fazendo login na interface da Web com suas credenciais de usuário.
As mesmas credenciais da sessão do Google Cloud console são usadas para o Cloud Shell, em que você pode acessar a CLI gcloud.
gcloud
Depois de instalar a CLI gcloud no dispositivo local, você pode usar suas credenciais de usuário para autenticar no Google Cloud executando o seguinte comando no terminal:
gcloud auth login
Depois da autenticação, os comandos gcloud subsequentes usam o principal conectado para fazer as solicitações.
Para autenticar com credenciais da federação de identidade de colaboradores, credenciais da federação de identidade da carga de trabalho ou chaves de conta de serviço, consulte Autenticar-se para usar a CLI gcloud.
Autenticar cargas de trabalho
Se você estiver desenvolvendo e executando código no dispositivo local, no Google Cloud, no local ou em outra nuvem, a maneira mais flexível e portátil de autenticar a carga de trabalho é fornecer credenciais por um mecanismo chamado Application Default Credentials (ADC).
As bibliotecas que implementam o ADC (como as Google Cloud bibliotecas de cliente) verificam locais conhecidos no ambiente em que são executadas para credenciais. Isso significa que, se você mudar o local de execução do código, não será necessário mudar o código em si, apenas as credenciais usadas para esse ambiente.
Por exemplo, ao desenvolver localmente, você pode definir o ambiente para que o ADC use suas credenciais de usuário para autenticação. Quando o código estiver pronto para produção, você poderá implantá-lo sem alterações em uma instância de VM do Compute Engine e definir o ambiente para usar credenciais de conta de serviço de curta duração para autenticação.
Não é possível usar o ADC para autenticar nos seguintes cenários:
Ao autenticar a CLI gcloud.
Ao usar uma chave de API. As chaves de API só podem ser usadas com APIs específicas.
Para saber como configurar o ADC para ambientes específicos, consulte Configurar o Application Default Credentials.
A seguir
Saiba mais sobre os diferentes métodos de autenticação do Google Cloud.
Para entender como controlar o que um principal pode acessar no Google Cloud, consulte Autorização e controle de acesso.