Gerenciar identidade com o serviço de identidade do GKE

O GKE na AWS é compatível com o OpenID Connect (OIDC) e o AWS IAM como um mecanismo de autenticação para interagir com a API Kubernetes de um cluster. 101}usando o serviço de identidade do GKE. O serviço de identidade do GKE é um serviço de autenticação que permite trazer as soluções de identidade existentes para autenticação em vários ambientes. 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.

Para uma visão geral de como o serviço de identidade do GKE funciona, consulte Introdução ao serviço de identidade do GKE.

Se você já usa ou quer usar as identidades do Google para fazer login nos clusters do GKE, recomendamos usar o comando gcloud containers aws clusters get-credentials para autenticação. Saiba mais em Conectar e autenticar seu cluster.

Autenticação do OpenID Connect

Antes de começar

  1. Para usar a autenticação OIDC, os usuários precisam ser capazes de se conectar ao plano de controle do cluster. Consulte Conectar-se ao plano de controle do cluster.

  2. Para autenticar pelo Console do Google Cloud, você precisa registrar cada cluster que quer configurar com sua frota de projeto. Para o GKE na AWS, isso será automático depois que você criar um pool de nós.

  3. Para permitir que os usuários se autentiquem pelo Console do Google Cloud, verifique se todos os clusters que você quer configurar estão registrados com a frota do projeto. Para o GKE na AWS, isso será automático depois que você criar um pool de nós.

Processo de configuração e opções

  1. Registre o GKE Identity Service como um cliente com o provedor OIDC seguindo as instruções em Como configurar provedores para o GKE Identity Service.

  2. Escolha uma destas opções de configuração de cluster:

  3. Para configurar o acesso do usuário aos clusters, incluindo o controle de acesso baseado em papéis (RBAC, na sigla em inglês), siga as instruções em Como configurar o acesso do usuário para o GKE Identity Service.

Acessar clusters

Depois de configurar o GKE Identity Service em um cluster, os usuários podem fazer login em clusters usando a linha de comando ou o console do Google Cloud.

Autenticação do IAM na AWS

O suporte do IAM da AWS no GKE na AWS usa o Serviço de identidade do GKE.

Antes de começar

Para usar a autenticação do IAM da AWS, os usuários precisam ser capazes de se conectar ao plano de controle do cluster. Consulte Conectar-se ao plano de controle do cluster.

Processo de configuração e opções

Para configurar o cluster para permitir a autenticação do IAM da AWS em uma determinada região da AWS, faça o seguinte:

  1. Edite o recurso ClientConfig no cluster:

    kubectl --kubeconfig=KUBECONFIG_PATH edit ClientConfigs default -n kube-public
    

    Substitua KUBECONFIG_PATH pelo caminho para o arquivo kuneconfig do cluster, por exemplo, $HOME/.kube/config.

    Um editor de texto carrega o recurso ClientConfig do cluster. Adicione o objeto spec.authentication.aws conforme mostrado abaixo. Não modifique nenhum dado padrão que já tenha sido gravado.

    apiVersion: authentication.gke.io/v2alpha1
    kind: ClientConfig
    metadata:
      name: default
      namespace: kube-public
    spec:
      authentication:
      - name: NAME
        aws:
          region: AWS_REGION
    

    Substitua:

    • NAME: um nome arbitrário desse método de autenticação (por exemplo, "aws-iam").
    • AWS_REGION: a região da AWS em que as informações do usuário são recuperadas. Ele precisa corresponder à região configurada na CLI da AWS dos usuários.
  2. Para permitir que os usuários do cluster usem o AWS IAM, siga Como configurar o acesso do usuário para o Anthos Identity Service.

Acessar clusters

Depois de configurar o GKE Identity Service em um cluster, os usuários podem fazer login em clusters usando a linha de comando ou o console do Google Cloud.

Para saber como fazer login em clusters registrados com a identidade do IAM da AWS, consulte Como acessar clusters usando o Anthos Identity Service.