Accede con un nombre de dominio completamente calificado (FQDN)
GKE Identity Service te permite acceder a los clústeres configurados desde la línea de comandos con un nombre de usuario y una contraseña de un proveedor de identidad de terceros. Sigue las instrucciones de esta página si el administrador de tu clúster eligió permitirte autenticarte directamente en el servidor de GKE Identity Service con un nombre de dominio completamente calificado (FQDN). Para los proveedores de SAML, el acceso solo es compatible a través de este enfoque de autenticación.
Este enfoque de autenticación solo es compatible con clústeres locales (Google Distributed Cloud) en VMware y en equipos físicos, a partir de la versión 1.29. No se admiten otros tipos de clústeres.
La versión de la CLI de gcloud
necesaria para acceder con el FQDN proporcionado es la versión mínima 477.0.0.
Flujo de trabajo de acceso
Estos son los pasos del flujo de trabajo cuando un usuario accede con el enfoque de acceso FQDN:
- Iniciar acceso: El usuario ejecuta el comando
gcloud anthos auth login --server APISERVER-URL
para iniciar el proceso de acceso. - Selección del proveedor de identidad: El usuario recibe una lista de usuarios proveedores de identidad. El usuario selecciona el proveedor en el que se almacenan sus credenciales.
Autenticación con proveedor de identidad: El proceso de autenticación difiere según el protocolo del proveedor de identidad que elijas:
- OIDC: Se redirecciona al usuario a la página de acceso del proveedor de OIDC. Después de un acceso correcto, el proveedor envía un código al servicio de identidad de GKE, que lo intercambia por un token de acceso a través de una comunicación de canal secundario.
- SAML: Se redirecciona al usuario a la página de acceso del proveedor de SAML. Después de un acceso correcto, el proveedor envía directamente un token (aserción) a GKE Identity Service para evitar una devolución de llamada adicional.
- LDAP: En lugar de redireccionar a un proveedor externo, GKE Identity Service muestra una página de acceso en la que el usuario ingresa sus credenciales de LDAP, que se verifican directamente con el servidor LDAP.
Verificación de tokens y generación del archivo kubeconfig: el servicio de identidad de GKE verifica el token recibido (o aserción), crea un token nuevo para el usuario devuelve un archivo kubeconfig que contiene este token.
Acceso al clúster: El usuario puede acceder al clúster con los comandos de
kubectl
. El clientekubectl
envía automáticamente el token desde el archivo kubeconfig con cada solicitud.Validación de token y autorización de RBAC: El servidor de la API de Kubernetes recibe el token, GKE Identity Service verifica este token y recupera las reclamaciones del usuario (nombre de usuario y grupos). Después de una validación exitosa, el servidor de la API ejecuta el control de acceso basado en roles (RBAC). para determinar los recursos a los que el usuario está autorizado a acceder.
Accede con certificados SNI de confianza
Los certificados de SNI simplifican el acceso al clúster, ya que aprovechan los certificados de confianza
que ya están presentes en los dispositivos corporativos. Los administradores pueden especificar este certificado cuando
se crea el clúster. Si tu clúster usa un certificado de SNI de confianza en el clúster
use el comando de esta sección con el FQDN que proporcione su
acceda al clúster y reciba un token de acceso. También puedes
usar un archivo kubeconfig
seguro en el que se almacene el token después de la autenticación exitosa
Ejecuta el siguiente comando para autenticarte en el servidor:
gcloud anthos auth login --server APISERVER-URL --kubeconfig OUTPUT_FILE
Reemplaza lo siguiente:
- APISERVER-URL: El FQDN del servidor de la API de Kubernetes del clúster.
- OUTPUT_FILE: usa esta marca si tu archivo
kubeconfig
se encuentra en una ubicación que no sea la predeterminada. Si se omite esta marca, los tokens de autenticación se agregan al archivokubeconfig
en la ubicación predeterminada. Por ejemplo:--kubeconfig /path/to/custom.kubeconfig
Accede con certificados emitidos por la AC del clúster
Como usuario, si no usas un certificado SNI de confianza a nivel de clúster, la autoridad certificadora (AC) del clúster emite el certificado que usa el servicio de identidad. Los administradores distribuyen este certificado de la AC a los usuarios. Ejecuta el siguiente comando con el certificado de la AC del clúster para acceder a tu clúster:
gcloud anthos auth login --server APISERVER-URL --kubeconfig OUTPUT_FILE --login-config-cert CLUSTER_CA_CERTIFICATE
Autenticación multidispositivo
La autenticación multidispositivo te permite acceder a los clústeres de Google Distributed Cloud (GDC) desde dispositivos que no tienen un navegador instalado. Puedes iniciar el proceso de autenticación en tu dispositivo principal (que no tiene un navegador instalado) y completarlo en un dispositivo secundario instalado con un navegador.
Sigue estos pasos para la configuración de la autenticación multidispositivo.
Accede a tu dispositivo principal
Ejecuta el siguiente comando para autenticarte en el servidor de tu dispositivo principal. Especifica el argumento
--no-browser
para indicar que el dispositivo desde el que necesitas acceder a tu clúster no tiene un navegador instalado.gcloud anthos auth login --server APISERVER-URL --kubeconfig OUTPUT_FILE --no-browser
GKE Identity Service muestra un comando que debes usar cuando accedas desde el segundo dispositivo. Este es un ejemplo de cómo se ve el comando:
You are authorizing gcloud CLI without access to a web browser. Please run the following command on a machine with a web browser and copy its output back here. gcloud auth login --server APISERVER-URL --kubeconfig OUTPUT_FILE --remote-bootstrap="URL_TO_COPY_ON_THE_SECOND_DEVICE" Enter the output of the above command:
Copia el comando
gcloud
.Accede a los clústeres en el segundo dispositivo
Antes de acceder desde el segundo dispositivo, verifica que tengas el navegador instalado y que tengas conectividad de red al servidor de la API de Kubernetes. Ejecuta el comando que copiaste del paso anterior en el segundo dispositivo.
gcloud auth login --server APISERVER-URL --kubeconfig OUTPUT_FILE --remote-bootstrap="URL_TO_COPY_ON_THE_SECOND_DEVICE"
Cuando se intenta acceder desde este dispositivo, se muestra un mensaje de advertencia. Sigue el proceso de autenticación estándar como se muestra en el navegador. Después de una autenticación exitosa, recibirás un código único. Copia este código.
WARNING: The following line enables access to your Cluster resources. ONLY COPY IT TO A MACHINE YOU TRUST AND RUN 'gcloud auth login --server APISERVER-URL --kubeconfig OUTPUT_FILE --no-browser' EARLY ON. Or_mHYQFm90efgJdwhajx0KeC_WXkuvBPuWv_83nFX9J_Eawm3tQcBpxBBWszj6Ix8dAWCgc1QjJBrlt67bzIYIBTexU7dc_ggtkMTNkG7wCIGYZ75zfg9P1gBshP33STe0ks-AoVonzk01YekMbyNugeYSO18CBwFhaDDSMABq4PI-clgbaSh8CPqrvDKRLenbvfD9BSK6SW945I0bOgPURxNzUX4sICWcvFozhQdLYICuwRM0AgarNFwoeh-0wbJGyRqUjq2NJbaYdf-VCaByiZaGPR2B1QVGXO7deKGtUnk1_tTFOnB6sJQvT6UJ8Ge5nkR38rqBeeGkYdlVIBTXShENG80An1Ve524xZupSzCHNSVTJqYg
Completa el acceso en tu dispositivo principal
Pega el código copiado del paso anterior en el mensaje de tu dispositivo principal.
Enter the code you received on the other device: Or_mHYQFm90efgJdwhajx0KeC_WXkuvBPuWv_83nFX9J_Eawm3tQcBpxBBWszj6Ix8dAWCgc1QjJBrlt67bzIYIBTexU7dc_ggtkMTNkG7wCIGYZ75zfg9P1gBshP33STe0ks-AoVonzk01YekMbyNugeYSO18CBwFhaDDSMABq4PI-clgbaSh8CPqrvDKRLenbvfD9BSK6SW945I0bOgPURxNzUX4sICWcvFozhQdLYICuwRM0AgarNFwoeh-0wbJGyRqUjq2NJbaYdf-VCaByiZaGPR2B1QVGXO7deKGtUnk1_tTFOnB6sJQvT6UJ8Ge5nkR38rqBeeGkYdlVIBTXShENG80An1Ve524xZupSzCHNSVTJqYg
Tu dispositivo usa este código para generar una credencial que se guarda en un archivo
kubeconfig
. Este archivo habilita el acceso al clúster en tu dispositivo principal. Cuando accedas, se mostrará el siguiente mensaje:You are logged in! Context is stored under the name '{cluster-name}'