Configura un método de autenticación para el acceso de los usuarios

Este documento está dirigido a los administradores de clústeres que ya configuraron sus clústeres para GKE Identity Service. Se proporcionan instrucciones para configurar y administrar el acceso de los usuarios a estos clústeres configurados para los desarrolladores de tu organización y otros usuarios.

Existen dos tipos de métodos de autenticación que puedes usar para configurar el acceso de los usuarios a tus clústeres:

  • Configura con acceso FQDN (recomendado): Con este enfoque, los usuarios pueden autenticarse directamente en el servidor de GKE Identity Service a través del nombre de dominio completamente calificado (FQDN) del servidor de la API de Kubernetes del clúster. Para obtener más información, consulta Configura el acceso FQDN.
  • Configura con acceso basado en archivos: con este enfoque, generas un archivo de configuración de acceso y lo distribuyes a los usuarios del clúster. Luego, los usuarios pueden acceder a los clústeres configurados con los comandos de autenticación de gcloud mediante este archivo. Para obtener más información, consulta Configura el acceso basado en archivos.

Configura el acceso a FQDN (recomendado)

En esta sección, se explica cómo configurar el acceso del usuario mediante la generación de la URL (FQDN) para que un servidor la use en la autenticación. El flujo de autenticación permite que el usuario acceda con su IdP y le proporciona al usuario un token que se agrega a su archivo kubeconfig para acceder al clúster. Este enfoque de autenticación solo es compatible con clústeres locales (Google Distributed Cloud) en VMware y equipos físicos, a partir de la versión 1.29. No se admiten otros tipos de clústeres. Si necesitas configurar la autenticación para clústeres locales con una versión de software compatible anterior o para otros tipos de clústeres, sigue las instrucciones a fin de configurar el acceso basado en archivos.

Antes de compartir el FQDN con los usuarios, asegúrate de que tú o el administrador de tu plataforma hayan seguido la setup adecuada, incluida la configuración de DNS para el FQDN y proporcionar el FQDN como parte del registro en tu proveedor de identidad si es necesario.

Comparte el FQDN con los usuarios

En lugar de un archivo de configuración, los administradores de clústeres pueden compartir el FQDN del servidor de la API de Kubernetes del clúster con los usuarios. Los usuarios pueden usar este FQDN para acceder al clúster. El formato de URL para el acceso es APISERVER-URL, en el que la URL contiene el FQDN del servidor de la API.

Un formato de ejemplo de una APISERVER-URL es https://apiserver.company.com.

Configura las opciones del servicio de identidad

Con esta opción de configuración, puedes configurar la duración del ciclo de vida del token. El IdentityServiceOptions en la CR de ClientConfig tiene un parámetro sessionDuration que te permite configurar la vida útil del token (en minutos). El parámetro sessionDuration tiene un límite inferior de 15 minutos y un límite máximo de 1,440 minutos (24 horas).

Este es un ejemplo de cómo se ve en la CR de ClientConfig:

spec:
    IdentityServiceOptions:
      sessionDuration: INT

en la que INT es la duración de la sesión en minutos.

Configura el acceso basado en archivos

Como alternativa al acceso al FQDN, los administradores de clústeres pueden generar un archivo de configuración de acceso y distribuirlo a los usuarios del clúster. Se recomienda usar esta opción si configuras la autenticación en un clúster con una versión o un tipo que no admite el acceso FQDN. Este archivo permite que los usuarios accedan a los clústeres desde la línea de comandos con el proveedor elegido. Este enfoque de autenticación solo es compatible con proveedores de OIDC y LDAP.

Genera la configuración de acceso

Console

(Solo Configuración a nivel de la flota)

Copia el comando de gcloud que se muestra y ejecútalo para generar el archivo.

gcloud

Si configuraste el clúster con la CLI de gcloud o si necesitas volver a generar el archivo, ejecuta el siguiente comando para generar el archivo:

gcloud anthos create-login-config --kubeconfig=KUBECONFIG

En él, KUBECONFIG es la ruta de acceso del archivo kubeconfig del clúster. Si hay varios contextos en kubeconfig, se usa el contexto actual. Es posible que debas restablecer el contexto actual en el clúster correcto antes de ejecutar el comando.

Puedes ver los detalles de referencia completos de este comando, incluidos los parámetros opcionales adicionales, en la guía de referencia de la CLI de Google Cloud.

El nombre predeterminado para el archivo de configuración de acceso es kubectl-anthos-config.yaml, que es el nombre que la CLI de Google Cloud espera cuando usa el archivo para acceder. Si deseas cambiar esto a un nombre no predeterminado, consulta la sección relevante en Distribuye la configuración de acceso.

Para obtener información sobre la solución de problemas relacionados con el acceso de los usuarios, consulta Soluciona problemas de acceso de los usuarios.

Distribuye la configuración de acceso

Las siguientes son algunas formas de distribuir el archivo de configuración:

  • Aloja el archivo en una URL a la que se pueda acceder. Los usuarios pueden especificar esta ubicación con la marca --login-config cuando se ejecuta gcloud anthos auth login, lo que permite que la CLI de Google Cloud obtenga el archivo.

    Considera alojar el archivo en un host seguro. Consulta la marca --login-config-cert de la CLI de gcloud si deseas obtener más información sobre el uso de certificados de PEM para el acceso HTTPS seguro.

  • Proporciona de forma manual el archivo a cada usuario, con información sobre dónde guardarlo en su máquina local: la CLI de Google Cloud espera encontrar el archivo en una ubicación predeterminada específica del SO. Si el archivo tiene una ubicación o un nombre no predeterminados, tus usuarios deben usar la marca --login-config para especificar la ubicación del archivo de configuración cuando ejecutan comandos en el clúster. Las instrucciones para que los usuarios guarden el archivo se encuentran en Accede a los clústeres con GKE Identity Service.

  • Usa las herramientas internas para enviar el archivo de configuración de autenticación a la máquina de cada usuario. La CLI de Google Cloud espera encontrar el archivo en las siguientes ubicaciones, según el SO del usuario:

    Linux

    $HOME/.config/google/anthos/kubectl-anthos-config.yaml

    macOS

    $HOME/Library/Preferences/google/anthos/kubectl-anthos-config.yaml

    Windows

    %APPDATA%\google\anthos\kubectl-anthos-config.yaml