|
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. |
Configurar Keycloak (SAML)
Si tu organización utiliza Keycloak Identity Provider (IdP) para la autenticación de usuarios, puedes configurar Rancher para permitir que tus usuarios inicien sesión utilizando sus credenciales de IdP.
Requisitos previos
-
Debes tener un Servidor IdP de Keycloak configurado.
-
En Keycloak, crea un nuevo cliente SAML, con la configuración que se indica a continuación. Consulta la documentación de Keycloak para obtener ayuda.
Valor Valor Sign DocumentsON1Sign AssertionsON1Todos los demás
ON/OFFAjustesOFFClient IDO bien
https://yourRancherHostURL/v1-saml/keycloak/saml/metadatao el valor configurado en elEntry ID Fieldde la configuración de Keycloak de Rancher2Client Name(p.ej. rancher)Client ProtocolSAMLValid Redirect URIhttps://yourRancherHostURL/v1-saml/keycloak/saml/acs1: Opcionalmente, puedes habilitar uno o ambos de estos ajustes. 2: Los metadatos SAML de Rancher no se generarán hasta que se configure y guarde un proveedor SAML.
-
En el nuevo cliente SAML, crea Mapeadores para exponer los campos de los usuarios
-
Añade todos los "Mapeadores de Protocolo Integrados"
-
Crea un nuevo mapeador de "Lista de Grupos" para mapear el atributo de miembro a los grupos de un usuario
-
Obteniendo los Metadatos del IdP
-
Keycloak 5 y anteriores
-
Keycloak 6-13
-
Keycloak 14+
Para obtener los metadatos del IdP, exporta un archivo metadata.xml desde tu cliente de Keycloak.
Desde la pestaña Instalación, elige la opción de formato Descriptor IDPSSOMetadata SAML y descarga tu archivo.
-
Desde la sección Configurar, haga clic en la pestaña Configuración del dominio.
-
Haga clic en la pestaña General.
-
Desde el campo Puntos finales, haga clic en Metadatos del Proveedor de Identidad SAML 2.0.
Verifique que los metadatos del IDP contengan los siguientes atributos:
xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
Algunos navegadores, como Firefox, pueden renderizar/procesar el documento de tal manera que el contenido parezca haber sido modificado y algunos atributos parezcan estar ausentes. En esta situación, utilice los datos de respuesta en bruto que se pueden encontrar utilizando su navegador.
El siguiente es un proceso de ejemplo para Firefox, pero variará ligeramente para otros navegadores:
-
Presione F12 para acceder a la consola de desarrollador.
-
Haga clic en la pestaña Red.
-
Desde la tabla, haga clic en la fila que contiene
descriptor. -
Desde el panel de detalles, haga clic en la pestaña Respuesta.
-
Copie los datos de respuesta en bruto.
El XML obtenido contiene EntitiesDescriptor como el elemento root. Rancher espera que el elemento root sea EntityDescriptor en lugar de EntitiesDescriptor. Así que, antes de pasar este XML a Rancher, siga estos pasos para ajustarlo:
-
Copie todos los atributos de
EntitiesDescriptoralEntityDescriptorque no estén presentes. -
Elimine la etiqueta
<EntitiesDescriptor>del principio. -
Elimine el
</EntitiesDescriptor>del final del XML.
Le quedará algo similar al siguiente ejemplo:
<EntityDescriptor xmlns="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" entityID="https://{KEYCLOAK-URL}/auth/realms/{REALM-NAME}">
....
</EntityDescriptor>
-
Desde la sección Configurar, haga clic en la pestaña Configuración del Dominio.
-
Haga clic en la pestaña General.
-
Desde el campo Puntos finales, haga clic en Metadatos del Proveedor de Identidad SAML 2.0.
Verifique que los metadatos del IDP contengan los siguientes atributos:
xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
Algunos navegadores, como Firefox, pueden renderizar/procesar el documento de tal manera que el contenido parezca haber sido modificado y algunos atributos parezcan estar ausentes. En esta situación, utilice los datos de respuesta en bruto que se pueden encontrar utilizando su navegador.
El siguiente es un proceso de ejemplo para Firefox, pero variará ligeramente para otros navegadores:
-
Presione F12 para acceder a la consola de desarrollador.
-
Haga clic en la pestaña Red.
-
Desde la tabla, haga clic en la fila que contiene
descriptor. -
Desde el panel de detalles, haga clic en la pestaña Respuesta.
-
Copie los datos de respuesta en bruto.
Configurando Keycloak en Rancher
-
En la esquina superior izquierda, haz clic en ☰ > Usuarios y Autenticación.
-
En el menú de navegación de la izquierda, haz clic en Proveedor de Autenticación.
-
Haga clic en Keycloak SAML.
-
Complete el formulario Configurar Cuenta Keycloak. Para obtener ayuda con el llenado del formulario, consulta la referencia de configuración.
-
Después de completar el formulario Configurar una Cuenta Keycloak, haga clic en Habilitar.
Rancher te redirige a la página de inicio de sesión del IdP. Introduzca las credenciales que se utilizan para autenticar en Keycloak IdP y validar la configuración de Keycloak en Rancher.
Es posible que tengas que desactivar tu bloqueador de ventanas emergentes para ver la página de inicio de sesión del IdP.
Resultado: Rancher está configurado para trabajar con Keycloak. Tus usuarios ahora pueden iniciar sesión en Rancher utilizando sus credenciales de Keycloak.
|
Advertencias del Proveedor SAML
|
Referencia de configuración
| Campo | Descripción |
|---|---|
Campo Nombre para Mostrar |
El atributo que contiene el nombre para mostrar de los usuarios. |
Campo Nombre de Usuario |
El atributo que contiene el nombre de usuario/nombre de pila. |
Campo UID |
Un atributo que es único para cada usuario. |
Campo Grupos |
Haz entradas para gestionar la membresía de grupos. |
Campo de ID de entidad |
El ID que debe configurarse como un ID de cliente en el cliente de Keycloak. |
Host de la API de Rancher |
La URL de tu servidor Rancher. |
Clave Privada / Certificado |
Un par de clave/certificado para crear un shell seguro entre Rancher y tu IdP. |
IDP-metadata |
El archivo |
|
Puede generar un par de clave/certificado utilizando un comando openssl. Por ejemplo: openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout myservice.key -out myservice.cert |
Anexo: Solución de problemas
Si experimenta problemas al probar la conexión con el servidor Keycloak, primero verifique la opción de configuración de su cliente SAML. También puedes inspeccionar los registros de Rancher para ayudar a identificar la causa del problema. Los registros de depuración pueden contener información más detallada sobre el error. Por favor, consulta Cómo puedo habilitar el registro de depuración en esta documentación.
No se le redirige a Keycloak.
Cuando haga clic en Autenticar con Keycloak, no se le redirige a su IdP.
-
Verifique la configuración de su cliente Keycloak.
-
Asegúrese de que
Force Post Bindingesté configurado enOFF.
Mensaje prohibido mostrado después del inicio de sesión en el IdP.
Se le redirige correctamente a la página de inicio de sesión de su IdP y puede introducir sus credenciales; sin embargo, recibe un mensaje de Forbidden posteriormente.
-
Revise el registro de borrar de Rancher.
-
Si el registro muestra
ERROR: either the Response or Assertion must be signed, asegúrese de queSign DocumentsoSign assertionsestén configurados enONen su cliente de Keycloak.
HTTP 502 al intentar acceder a /v1-saml/keycloak/saml/metadata.
Esto suele deberse a que los metadatos no se crean hasta que se configura un proveedor SAML. Intente configurar y guardar Keycloak como su proveedor SAML y, a continuación, acceda a los metadatos.
Configuración de Cierre de Sesión Único SAML (SLO)
Rancher supports the ability to configure SAML SLO. Options include logging out of the Rancher application only, logging out of Rancher and registered applications tied to the external authentication provider, or a prompt asking the user to choose between the previous options. The steps below outline configuration from the application GUI:
|
The Log Out behavior configuration section only appears if the SAML authentication provider allows for |
-
Sign in to Rancher using a standard user or an administrator role to configure SAML SLO.
-
In the top left corner, click ☰ > Users & Authentication.
-
In the left navigation menu, click Auth Provider.
-
Under the section Log Out behavior, choose the appropriate SLO setting as described below:
Setting Description Log out of Rancher and not authentication provider
Choosing this option will only logout the Rancher application and not external authentication providers.
Log out of Rancher and authentication provider (includes all other applications registered with authentication provider)
Choosing this option will logout Rancher and all external authentication providers along with any registered applications linked to the provider.
Allow the user to choose one of the above in an additional log out step
Choosing this option presents users with a choice of logout method as described above.
Permisos de grupo SAML y OpenLDAP
When you configure a SAML authentication provider backed by OpenLDAP, the SAML response might return only a subset of the groups that a user belongs to. The exact groups returned depend on the configuration of your external authentication provider.
Rancher assigns user permissions based strictly on the groups provided in the SAML response.
|
Even if you can search for and view specific OpenLDAP groups in the Rancher UI, you cannot use them to assign permissions if they are missing from the SAML response. To assign permissions successfully, verify that your SAML authentication provider is configured to return all necessary OpenLDAP groups. |