Propósito
Esta guía explica cómo configurar el inicio de sesión único (SSO) con SAML 2.0 en Anjana.
También describe la configuración opcional pero recomendada para la Provisión de Usuarios, que permite a Anjana consultar y listar los usuarios con acceso desde su proveedor de identidad (IdP).
Cómo funciona: dos partes de la configuración
Esta integración tiene dos partes independientes configuradas en paralelo:
-
Autenticación SAML (el "Login"): permite a un usuario iniciar sesión. Se configura en su IdP (Azure, Google, AWS) y en la sección
security.authentication.saml2de Anjana. -
Provisión de usuarios (la "Lista de usuarios"): permite a Anjana acceder a la API de su proveedor (con permisos de administrador) para obtener la lista de usuarios asignados. Se configura en la sección
security.provisioningde Anjana.
La clave del proveedor (ej. devazure) enlaza ambas configuraciones.
Configuración base de Zeus
Antes de configurar su proveedor de identidad, defina las propiedades globales para el servicio zeus en Anjana.
1. Propiedades globales de la aplicación
Esta propiedad define la URL pública base donde se aloja zeus.
app:
# La Host donde se aloja el microservicio de zeus
base-url: https://dominio-anjana.com
# Puerta de enlace a la api pública del microservicio de Zeus
gateway: /gateway/
2. Plantilla de configuración de seguridad
En el fichero application.yml de zeus, encontraremos dos secciones principales dentro de security:
security:
# ===============================================
# SECCIÓN 1: PROVISIÓN DE USUARIOS (OPCIONAL)
# ===============================================
provisioning:
providers:
# Todo los proveedores de tipo Azure deberán ir dentro de este atributo
azure-graph:
# La clave 'azuread' es un ejemplo. Use un nombre único
# por cada proveedor que configure.
azuread:
# ... aquí irán las credenciales de la API que obtendrá de su IdP
# (Ver las guías específicas más abajo)
# Todo los proveedores de tipo Google Workspace deberán ir dentro de este atributo
google:
devgcp:
# ... aquí irán las credenciales de la API que obtendrá de su IdP
# (Ver las guías específicas más abajo)
# Todo los proveedores de tipo AWS IAM IC deberán ir dentro de este atributo
aws-iam-ic:
devaws:
# ... aquí irán las credenciales de la API que obtendrá de su IdP
# (Ver las guías específicas más abajo)
# ===============================================
# SECCIÓN 2: AUTENTICACIÓN SAML (LOGIN)
# ===============================================
authentication:
saml2:
# Rutas base para los endpoints de SAML.
# Se recomienda no cambiar estos valores por defecto.
# P.D.: la generación de dichas url consistirá en app.base_url + "/saml2/" + {ruta}
acs-location-path: /sso/{registrationId}
authenticate-path: /authenticate/{registrationId}
providers:
# La clave 'azuread' debe ser IDÉNTICA a la clave usada en 'provisioning'
azuread:
# Nombre del proveedor para mostrar
name: <name>
# Identificador de la applicación de SAML2 en el proveedor
entityId: <entityID>
# URL/Ruta de fichero donde se recupera el metadata para procesar correctamente la autentificación
idpMetadataUri: <URL/Path>
Guía de configuración por proveedor
Encuentre a continuación las instrucciones para su proveedor de identidad.
https://anjanadata.atlassian.net/wiki/pages/createpage.action?spaceKey=doc&title=%2825.2-es%29%20SAML%202.0%20-%20AZURE&linkCreation=true&fromPageId=310739024 https://anjanadata.atlassian.net/wiki/pages/createpage.action?spaceKey=doc&title=%2825.2-es%29%20SAML%202.0%20-%20GCP&linkCreation=true&fromPageId=310739024 https://anjanadata.atlassian.net/wiki/pages/createpage.action?spaceKey=doc&title=%2825.2-es%29%20SAML%202.0%20-%20AWS%20IAM&linkCreation=true&fromPageId=310739024
Paso final: reinicio
Tras actualizar su application.yml con la configuración de SAML y provisión para sus proveedores, reinicie el microservicio Zeus para aplicar los cambios.