Integración de inicio de sesión con Keycloak (SSO) en ¡Hola! Suite
Introducción
La integración de inicio de sesión único (SSO) con Keycloak le permite utilizar una solución sólida de código abierto para administrar la autenticación y los permisos centralizados. ¡Hola! Suite se conecta a Keycloak a través de OAuth 2.0, brindando control avanzado sobre grupos, permisos y creación automática de usuarios.
Acceso al formulario
Ruta: Menú (Integraciones > Keycloak > Instalar)
Parámetros de configuración
| Parámetro | Descripción |
|---|---|
| ID de cliente | Identificador de la aplicación registrada en Keycloak |
| Secreto de cliente | Clave secreta de aplicación para autenticación segura |
| URL para autenticación | Punto final para la redirección de inicio de sesión inicial (URI de redirección) |
| URL para intercambio de tokens | Punto final OAuth 2.0 para intercambiar código por token de acceso |
| URL del recurso | Punto final para buscar información de usuario autenticado |
| Campo de identificación de usuario | Atributo devuelto por el punto final del recurso utilizado para identificar al usuario (por ejemplo, “correo electrónico”) |
| Alcances (opcional) | Alcances de OAuth que debe solicitar la aplicación |
| ClaimName (opcional) | Ruta en el JSON de la respuesta que indica el grupo/equipo del usuario para asignar permisos a ¡Hola! |
| Creación de nuevos usuarios (opcional) | Permite crear automáticamente usuarios no existentes en ¡Hola! Suite con permisos asignados |
| Permiso predeterminado (opcional) | Permiso predeterminado asignado cuando no se encuentra la asignación de grupo o falla |
| Asignación de permisos (opcional) | Relaciona los permisos de Keycloak con ¡Hola! Suite grupos/permisos para un control detallado |
Cómo configurar
1. Prepara la capa de llaves
Registrar una nueva aplicación (cliente) en Keycloak.
Configurar URI de redireccionamiento para la dirección ¡Hola! Suite.
Definir los alcances necesarios para la autenticación e información del usuario.
2. Obtenga puntos finales de OAuth 2.0
URL para autenticación: URL donde ¡Hola! Suite redireccionará para que el usuario inicie sesión (ejemplo:
https://seu-keycloak/auth/realms/seu-reino/protocol/openid-connect/auth).URL para intercambio de token: Punto final para intercambiar el código de autorización del token (ejemplo:
https://seu-keycloak/auth/realms/seu-reino/protocol/openid-connect/token).URL del recurso: Punto final para recuperar información del usuario autenticado (ejemplo:
https://seu-keycloak/auth/realms/seu-reino/protocol/openid-connect/userinfo).
3. Configurar ¡Hola! Suite
En el menú Integraciones > Keycloak > Instalar, complete los campos obligatorios: ID de cliente, Secreto de cliente, URL y campo de identificación de usuario (ej:
email).Opcionalmente, rellenar campos avanzados para controlar permisos y creación de usuarios.
Cómo funciona el inicio de sesión
El usuario accede a ¡Hola! Suite y hace clic en “Entrar con Keycloak”.
El sistema redirige a Keycloak, donde el usuario inicia sesión.
Después de la autenticación, Keycloak devuelve un token de acceso a ¡Hola! Suite.
¡Hola! Suite utiliza el token para consultar los datos del usuario e identificar su correo electrónico y sus grupos.
Si la opción de creación automática está activa y el usuario es nuevo, se creará en el sistema con los permisos asignados.
En caso contrario, sólo se concederá el acceso si el usuario ya está registrado con los permisos correctos.
Notas importantes
Creación automática de usuarios: Utilice esta funcionalidad con precaución, asignando permisos mínimos por defecto para evitar riesgos de seguridad.
ClaimName y mapeo: El mapeo correcto de grupos a través de ClaimName es esencial para garantizar que a los usuarios se les otorguen los permisos adecuados en ¡Hola! Suite.
Campos obligatorios: Sin URL correctas o ID de cliente/secreto válido, la autenticación fallará.
Seguridad: Mantenga los secretos protegidos y supervise el acceso con regularidad. ---## Consideraciones finales
La integración de Keycloak con ¡Hola! Suite es la solución tradicional y poderosa para empresas que buscan control de acceso granular y autenticación unificada. Con las configuraciones correctas, garantizas una experiencia segura y escalable para tu equipo.