Ejemplo de configuración SAML con Active Directory Federation Services (ADFS)
Esta pagina de documentación describe los pasos de configuración para habilitar la autenticación SAML en Cyberwatch mediante el uso de un Proveedor de Identidad Microsoft ADFS.
Constituye un ejemplo simplificado para establecer una configuración mínima para el funcionamiento del servicio SAML.
Requisitos previos
El procedimiento de ejemplo supone los requisitos siguientes:
- un servidor Windows 2019 funcional
- una instancia de Active Directory en la que el atributo “email” de los usuarios este definido
- un certificado SSL para la configuración del lado de ADFS
- ADFS instalado en su servidor Windows
Estos elementos pueden adaptarse a su entorno. El procedimiento funcionara por ejemplo de forma similar con un servidor Windows 2016 en lugar de un servidor Windows 2019.
Obtencion del certificado del IDP
Antes que nada, recuperar el certificado del IDP, que se indicara en Cyberwatch en el paso 5).
Para ello, descargar el archivo XML de metadatos del IDP desde la URL: https://[URL_IDP]/federationmetadata/2007-06/federationmetadata.xml
El archivo obtenido debe contener dos certificados contenidos en campos <X509Certificate>. Extraer el primer certificado contenido en la sección <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> del XML.
Conservar este certificado. Se utilizara en el siguiente paso para la configuracion SAML en Cyberwatch.
Configuracion SAML en Cyberwatch
Comenzar configurando la parte SAML en Cyberwatch desde el menu Administracion > Proveedor de identidad.
- En el campo “Formato del nombre de identificacion”, introducir
urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress - En el campo “Texto del boton de conexion”, introducir el valor deseado, por ejemplo
Conexion ADFS. Se utilizara como etiqueta del boton de inicio de sesion SAML en la pagina de autenticacion de Cyberwatch - En el campo “SP Entity ID”, nombrar el identificador de confianza de su IDP, por ejemplo
CYBERWATCH - OPCIONAL Es posible completar el campo “IDP Entity ID” con el valor del campo
entityIDextraido de los metadatos del IDP, generalmente en la formahttp://[URL_IDP]/adfs/services/trust - En el campo “URL objetivo SSO IDP”, introducir la URL de autenticacion SSO de ADFS. Debe tomar la forma
https://[URL_IDP]/adfs/ls - Para el “Certificado IDP”, copiar el certificado exportado en el paso anterior
- Guardar la configuracion
Una vez guardada la configuracion, la URL de metadatos SP Cyberwatch pasa a estar disponible y ofrece un enlace para descargar el archivo XML de metadatos de la aplicacion Cyberwatch denominado saml_metadata. Descargarlo; se utilizara para automatizar parte de la configuracion en ADFS.
OPCIONAL - Configuracion de atributos en Cyberwatch
Mostrar los detalles de configuracion de atributos
La configuracion de atributos es opcional. Permitira gestionar automaticamente la asignacion de roles de usuarios, grupos, direccion de correo del usuario, etc. y otros atributos especificos de Cyberwatch como el acceso a todos los activos o el acceso a Kibana.
Los elementos siguientes muestran ejemplos de configuracion de estos elementos en el contexto de un uso de estos atributos con SAML ADFS.
Configuracion de roles
El campo “Atributo de roles” permite definir un atributo en el que basarse para asignar automaticamente roles a los usuarios SAML en Cyberwatch.
Segun el valor de este atributo, se asignara a los usuarios un rol entre Administrador, Administrador del sistema, Administrador de seguridad o Auditor en funcion del valor del atributo definido en la configuracion de Cyberwatch para cada uno de estos roles.
En este ejemplo, usaremos los grupos de Active Directory de los usuarios para definir su rol en Cyberwatch.
- Para “Atributo de roles”, introducir el valor
http://schemas.xmlsoap.org/claims/Group - Para “Administrador”, introducir el valor
cbw_admin - Para “Administrador del sistema”, introducir el valor
cbw_admin_sys - Para “Administrador de seguridad”, introducir el valor
cbw_admin_secu - Para “Auditor”, introducir el valor
cbw_audit
Con esta configuracion, un usuario que tenga uno de los grupos LDAP indicados como valor recibira el rol asociado a ese valor.
Un usuario LDAP que no pertenezca a ninguno de los grupos especificados recibira el rol de Auditor.
Un usuario LDAP que pertenezca a varios de estos grupos recibira el rol con mas privilegios.
Configuracion de grupos
El campo “Atributo de grupos” permite definir un atributo en el que basarse para asignar automaticamente grupos a los usuarios SAML en Cyberwatch.
En el campo “Atributo de grupos”, introducir el valor http://schemas.xmlsoap.org/claims/Group.
Un usuario que se conecte con SAML se asignara automaticamente a los grupos AD de los que forma parte, con la condicion de que esos grupos existan en Cyberwatch.
Es necesario que los grupos se creen previamente en Cyberwatch y que sus nombres sean identicos a los nombres de los grupos AD/LDAP.
Acceso a todos los activos / Acceso a Kibana
El funcionamiento para el “Acceso a todos los activos” o para el “Acceso a Kibana” es identico.
Consiste en definir un atributo en el que basarse para otorgar automaticamente el acceso a todos los activos o el acceso a Kibana a los usuarios SAML.
Siempre con el ejemplo de los grupos LDAP, es posible basarse en el atributo http://schemas.xmlsoap.org/claims/Group.
Asi, podriamos tener:
| Nombre del acceso | Atributo | incluido en |
| Acceso a todos los activos | http://schemas.xmlsoap.org/claims/Group | cbw_all_assets |
| Acceso a Kibana | http://schemas.xmlsoap.org/claims/Group | cbw_kibana |
Atributos Direccion de correo, Descripcion y Nombre completo
Estos tres atributos funcionan de la misma manera. Permiten definir un atributo SAML cuyo valor se usara para completar respectivamente la direccion de correo, la descripcion y el nombre completo del usuario.
Estos elementos pueden requerir configuraciones complementarias en las reglas de reclamacion del lado ADFS.
Configuracion en ADFS
Creacion de una confianza de parte
Desde el servidor ADFS, abrir la consola llamada “Administracion AD FS”.
Agregar una confianza de parte siguiendo los pasos a continuacion:
- Abrir la carpeta “AD FS” en el menu de navegacion de la consola
- Clic derecho en “Confianzas de parte”
- Seleccionar “Agregar una confianza de parte…”, se abre el asistente de Agregar confianza de parte
- En el paso “Bienvenido” del asistente, elegir la opcion “Soporte de reclamaciones”
- En el paso “Seleccionar una fuente de datos”, seleccionar “Importar los datos relativos a la parte de confianza desde un archivo” e importar el archivo
saml_metadatagenerado anteriormente desde Cyberwatch - En el paso “Introducir el nombre completo”, introducir un nombre que permita identificar facilmente la parte de confianza, por ejemplo
Cyberwatch SAML - En el paso “Seleccionar una directiva de control de acceso”, seleccionar “Permitir a todos” u otra opcion que desee configurar
- El paso “Listo para agregar la confianza” permite simplemente verificar los elementos configurados si lo desea
- En el paso “Finalizar”, marcar la opcion “Configurar una directiva de emision de reclamaciones para esta aplicacion” y validar
Creacion de reglas de reclamacion
Una vez creada la confianza de parte, la adicion de reglas de reclamacion permitira enviar a Cyberwatch la informacion necesaria para la autenticacion.
Nuestro ejemplo propone crear dos reglas que seran suficientes para que la autenticacion SAML funcione, segun el procedimiento siguiente:
- En la confianza de parte
Cyberwatch SAMLrecien creada, clic derecho en “Editar la directiva de emision de reclamaciones…” - Se abre una ventana que permite crear “Reglas de transformacion de emision”
- Hacer clic en “Agregar una regla…”
- En el paso “Elegir el tipo de regla”, seleccionar “Enviar atributos LDAP como reclamaciones”
En el paso “Configurar la regla de reclamacion”:
- nombrar la regla de reclamacion
- seleccionar el almacen de atributos “Active Directory”
- en el menu “Mapeo de atributos LDAP a tipos de reclamaciones salientes”, seleccionar
E-Mail-Addressespara el atributo LDAP yDireccion de correopara el tipo de reclamacion saliente - para la gestion de permisos en Cyberwatch, seleccionar por ejemplo otra entrada
Token-Groups - Nombres no calificadospara el atributo LDAP yGrupopara el tipo de reclamacion saliente - confirmar la creacion de la regla
Agregar una nueva regla, esta vez seleccionando
Transformar una reclamacion entrantepara el modelo de regla. En el paso de configuracion de la regla:- nombrar la regla de reclamacion
- seleccionar
Direccion de correopara el campo “Tipo de reclamacion entrante” - dejar
No especificadopara el “Formato de ID de nombre entrante” - seleccionar
ID de nombrepara el campo “Tipo de reclamacion saliente” - seleccionar
Direccion de correopara el campo “Formato de ID de nombre saliente” - seleccionar la opcion
Pasar todos los valores de reclamacion - validar la regla
La configuracion en ADFS deberia ser valida.
Verificacion del funcionamiento y troubleshooting
Abrir una nueva ventana de navegacion privada y dirigirse a la pagina de autenticacion de Cyberwatch.
Un nuevo boton azul Conexion ADFS (segun el valor indicado en el paso 1) de la configuracion en Cyberwatch) deberia estar disponible.
Hacer clic en este boton. Si las configuraciones en ADFS y Cyberwatch son validas, el navegador lo redirige a la pagina de autenticacion de ADFS.
Introducir las credenciales de su cuenta LDAP para autenticarse en el servicio SAML ADFS. El navegador lo redirige y lo autentica en la aplicacion Cyberwatch con su usuario.
Verifique que no tenga ya una cuenta local/LDAP creada en Cyberwatch usando la misma direccion de correo que la usada para la autenticacion SAML, o obtendra un error al intentar conectarse.
Ayuda para troubleshooting
Pueden ser necesarias etapas de troubleshooting; estas son posibles mediante la visualizacion de las solicitudes SAML.
La visualizacion de estas solicitudes suele hacerse con una extension de navegador como SAML-tracer, por ejemplo.