|
Este documento ha sido traducido utilizando tecnología de traducción automática. Si bien nos esforzamos por proporcionar traducciones precisas, no ofrecemos garantías sobre la integridad, precisión o confiabilidad del contenido traducido. En caso de discrepancia, la versión original en inglés prevalecerá y constituirá el texto autorizado. |
Usando tokens de API
|
Deprecation of v3 API tokens
Rancher v2.13 introduced a new token resource in the Starting with Rancher v2.14.1:
|
Rancher v2.8.0 introdujo el API de Kubernetes de Rancher que se puede usar para gestionar recursos de Rancher a través de kubectl. Esta página cubre información sobre los tokens de API utilizados con el Rancher CLI, archivos kubeconfig, Terraform y el navegador de API v3.
Por defecto, algunos tokens de API a nivel de clúster se generan con un tiempo de vida infinito (ttl=0). En otras palabras, los tokens de API con ttl=0 nunca expiran a menos que los invalides. Los tokens no se invalidan al cambiar una contraseña.
Puedes desactivar los tokens de API eliminándolos o desactivando la cuenta de usuario.
Eliminando tokens
Para eliminar un token:
-
Ve a la lista de todos los tokens en la vista de API de Rancher en
https://<Rancher-Server-IP>/v3/tokens. -
Accede al token que deseas eliminar por su ID. Por ejemplo,
https://<Rancher-Server-IP>/v3/tokens/kubectl-shell-user-vqkqt -
Haz clic en Eliminar.
La siguiente es una lista completa de tokens generados con ttl=0:
| Testigo | Descripción |
|---|---|
|
Acceso a la shell |
|
Token para el despliegue de agentes |
|
Token para Compose |
|
Token para el despliegue del gráfico de Helm |
|
Token para drenar (Rancher utiliza |
Configurando TTL en Tokens de Kubeconfig
Los administradores pueden establecer un tiempo de vida global (TTL) en los tokens de Kubeconfig. Cambiar el TTL predeterminado de kubeconfig se puede hacer navegando a la configuración global y estableciendo kubeconfig-default-token-ttl-minutes a la duración deseada en minutos. A partir de Rancher v2.8, el valor predeterminado de kubeconfig-default-token-ttl-minutes es 43200, lo que significa que los tokens expiran en 30 días.
|
Esta configuración es utilizada por todos los tokens de kubeconfig excepto aquellos creados por la CLI para generar tokens de kubeconfig. |
Desactivar Tokens en Kubeconfigs Generados
Establece la configuración kubeconfig-generate-token a false. Esta configuración instruye a Rancher a no generar automáticamente un token cuando un usuario hace clic en descargar un archivo kubeconfig. Cuando esta configuración está desactivada, un kubeconfig generado hace referencia a Rancher CLI para recuperar un token de corta duración para el clúster. Cuando este kubeconfig se utiliza en un cliente, como kubectl, se necesita tener instalado el Rancher CLI para completar la solicitud de inicio de sesión.
Hashing de Token
Puede habilitar el hashing de tokens, donde los tokens pasan por un hash unidireccional utilizando el algoritmo SHA256. Este es un proceso no reversible: una vez habilitado, esta función no se puede desactivar. Primero deberías evaluar esta configuración en un entorno de prueba y/o hacer copias de seguridad antes de habilitarla.
Esta función afecta a todos los tokens que incluyen, pero no se limitan a, los siguientes:
-
Tokens de Kubeconfig
-
Tokens Bearer, claves/llamadas de API
-
Tokens utilizados por operaciones internas
Configuraciones de Token
Estas configuraciones globales afectan el comportamiento de los tokens de Rancher.
| Valor | Descripción |
|---|---|
TTL en minutos en un token de sesión de autenticación de usuario. |
|
TTL en minutos en un token de sesión de autenticación de usuario, sin actividad del usuario. |
|
TTL por defecto aplicado a todos los tokens de kubeconfig, excepto a los tokens generados por Rancher CLI. |
|
TTL máximo para todos los tokens, excepto aquellos controlados por |
|
Si es verdadero, genera automáticamente tokens cuando un usuario descarga un kubeconfig. |
auth-user-session-ttl-minutes
Duración del tiempo de vida (TTL) en minutos, utilizada para determinar cuándo expira un token de sesión de autenticación de usuario. Cuando expira, el usuario debe iniciar sesión y obtener un nuevo token. Esta configuración no se ve afectada por auth-token-max-ttl-minutes. Los tokens de sesión se crean cuando un usuario inicia sesión en Rancher.
auth-user-session-idle-ttl-minutes
Tiempo de vida (TTL) sin actividad del usuario para los tokens de sesión de inicio de sesión, en minutos.
Por defecto, auth-user-session-idle-ttl-minutes se establece en el mismo valor que auth-user-session-ttl-minutes (por compatibilidad hacia atrás). Nunca debe exceder el valor de auth-user-session-ttl-minutes.
kubeconfig-default-token-ttl-minutes
Duración del tiempo de vida (TTL) en minutos, utilizada para determinar cuándo expira un token de kubeconfig. Cuando el token ha expirado, la API rechaza el token. Esta configuración no puede ser mayor que auth-token-max-ttl-minutes. Esta configuración se aplica a los tokens generados en un archivo kubeconfig solicitado, excepto para los tokens generados por Rancher CLI. A partir de Rancher v2.8, la duración por defecto es 43200, lo que significa que los tokens expiran en 30 días.
auth-token-max-ttl-minutes
Tiempo de vida (TTL) máximo en minutos permitido para los tokens de autenticación. Si un usuario intenta crear un token con un TTL mayor que auth-token-max-ttl-minutes, Rancher establece el TTL del token al valor de auth-token-max-ttl-minutes. Se aplica a todos los tokens de kubeconfig y tokens de API. A partir de Rancher v2.8, la duración por defecto es 129600, lo que significa que los tokens expiran en 90 días.
kubeconfig-generar-token
Cuando es verdadero, los kubeconfigs solicitados a través de la interfaz de usuario contienen un token válido. Cuando es falso, los kubeconfigs contienen un comando que utiliza el Rancher CLI para solicitar al usuario que inicie sesión. El CLI luego recupera y almacena en caché un token para el usuario.
cli/kubectl.adoc#_autenticación_con_kubectl_y_tokens_de_kubeconfig_con_ttl[El CLI luego recupera y almacena en caché un token para el usuario].