Introdução ao serviço de identidade do GKE
O Serviço de identidade do GKE é um serviço de autenticação que permite levar suas soluções de identidade atuais para autenticação em vários ambientes do GKE Enterprise. Os usuários podem fazer login e usar os clusters do GKE na linha de comando ou no Console do Google Cloud. Tudo isso usando o provedor de identidade atual.
Se você já usa ou quer usar os IDs do Google para fazer login nos seus clusters do GKE em vez de um provedor OIDC ou LDAP, consulte Como se conectar a clusters registrados com o gateway do Connect.
Provedores de identidade compatíveis
O GKE Identity Service é compatível com provedores de identidade usando os seguintes protocolos:
- OpenID Connect (OIDC). Fornecemos instruções específicas para a configuração de alguns provedores OpenID conhecidos, incluindo a Microsoft, mas você pode usar qualquer provedor que implemente o OIDC.
- Protocolo leve de acesso a diretórios (LDAP). É possível usar o GKE Identity Service para fazer a autenticação usando LDAP com o Active Directory ou um servidor LDAP.
- Linguagem de marcação para autorização de segurança (SAML) É possível usar o serviço de identidade do GKE para autenticação usando SAML.
Tipos de cluster compatíveis
Protocolo | GKE no VMware | GKE em bare metal | GKE na AWS | GKE no Azure | Clusters anexados ao EKS | GKE |
---|---|---|---|---|---|---|
OIDC | ||||||
LDAP | ||||||
SAML |
Outros tipos de clusters anexados não podem ser usados com o serviço de identidade do GKE.
Como funciona
Com o GKE Identity Service, os usuários fazem login nos clusters configurados usando o nome de usuário e a senha comuns da organização. A forma como isso funciona depende do tipo de provedor de identidade usado.
OIDC
Com os provedores de OIDC, o próprio GKE Identity Service é registrado como um aplicativo cliente para o provedor de identidade e, em seguida, configurado para cada cluster pelo administrador do cluster.
Quando um usuário quiser fazer login em um cluster pela linha de comando, ele precisará primeiro executar um comando gcloud anthos auth login
e inserir os detalhes de login para o provedor de identidade. Isso recupera um token de identidade do provedor. O token é adicionado ao arquivo kubeconfig
e é usado ao fazer solicitações com kubectl
ao cluster. O servidor da API Kubernetes usa o GKE Identity Service para validar o token de ID e permitir (ou negar) o acesso ao cluster. O GKE Identity Service também pode recuperar informações de assinatura do grupo de segurança do provedor de identidade.
Os administradores do cluster podem adicionar um controle de acesso mais detalhado usando o controle de acesso baseado em papéis (RBAC, na sigla em inglês) do Kubernetes, se necessário.
Os usuários também podem fazer login com o OIDC no Console do Google Cloud. Nesse caso, ele é direcionado para a IU do provedor de identidade para fornecer os detalhes de login antes de retornar ao Console do Google Cloud para continuar visualizando e gerenciando os recursos do cluster.
LDAP
Com os provedores LDAP, o GKE Identity Service é configurado para cada cluster pelo administrador do cluster, incluindo o fornecimento de credenciais de cliente LDAP para o GKE Identity Service.
Quando um usuário quiser fazer login em um cluster pela linha de comando, ele precisará primeiro executar um comando gcloud anthos auth login
e inserir os detalhes de login para o provedor de identidade. A solicitação vai para o GKE Identity Service, que consulta o servidor LDAP e retorna os atributos do usuário em um token de curta duração (STS, na sigla em inglês). Assim, as credenciais LDAP do usuário não precisam ser armazenadas localmente em texto simples. O token é adicionado ao arquivo kubeconfig
e é usado ao fazer solicitações com kubectl
ao cluster. O servidor da API Kubernetes usa o GKE Identity Service para receber as informações de usuário e grupo do token e permitir (ou negar) o acesso ao cluster. Por padrão, o token dura uma hora antes de o usuário precisar fazer login novamente.
Os administradores do cluster podem adicionar um controle de acesso mais detalhado usando o controle de acesso baseado em papéis (RBAC, na sigla em inglês) do Kubernetes, se necessário.
Opções de configuração
Dependendo do tipo e do ambiente do cluster, os administradores do cluster podem configurar o GKE Identity Service em cada cluster individualmente ou no nível da frota do projeto.
Configuração por cluster
É possível configurar o GKE Identity Service em um cluster por cluster para clusters do GKE no local (VMware e bare metal), no Azure e na AWS. Consulte os guias a seguir para mais detalhes:
Configuração do OIDC
- Configurar provedores OIDC do GKE Identity Service
- Configurar clusters para o GKE Identity Service com o OIDC
- Configurar o acesso do usuário para o GKE Identity Service
Configuração LDAP
- Configurar provedores LDAP do GKE Identity Service
- Configurar clusters do GKE Identity Service com LDAP
- Configurar o acesso do usuário para o GKE Identity Service
Configuração de SAML
- Configurar provedores SAML do GKE Identity Service
- Configurar clusters do GKE Identity Service com SAML
- Configurar o acesso do usuário ao serviço de identidade do GKE por um processo de autenticação alternativo
Configuração no nível da frota
Uma frota no Google Cloud é um grupo lógico de clusters que permite ativar a funcionalidade e atualizar a configuração nesses clusters. Para tipos de cluster compatíveis, é possível configurar o GKE Identity Service para os clusters na frota do projeto. A configuração no nível da frota permite aplicar de maneira centralizada a configuração de autenticação a vários clusters, em que a configuração é mantida pelo Google Cloud.
Os seguintes tipos de cluster são compatíveis com a configuração no nível da frota:
- GKE no VMware, versão 1.8.2 ou mais recente
- GKE em Bare Metal, versão 1.8.3 ou mais recente
- GKE no Azure
- GKE na AWS executando o Kubernetes 1.21 ou mais recente
- Clusters do GKE no Google Cloud com o Identity Service para GKE ativado.
O seguinte tipo de cluster e ambiente é compatível com a configuração no nível da frota como um recurso Pré-GA:
- Clusters anexados do Amazon Elastic Kubernetes Service (Amazon EKS)
Consulte os seguintes detalhes da configuração:
A seguir
- Se você é um administrador da plataforma ou um administrador do cluster e quer configurar clusters para usar o GKE Identity Service, siga os guias de configuração apropriados acima.
- Se você é um desenvolvedor ou outro usuário de cluster e quer acessar clusters do GKE usando sua identidade atual, consulte Acessar clusters usando o GKE Identity Service.