Autenticación con ADFS

<< Clic para mostrar Tabla de Contenidos >>

Navegación:  Bizagi Studio > Definición de Seguridad > Seguridad del Portal de Trabajo > Autenticación > Autenticación con SAML >

Autenticación con ADFS

Introducción

Bizagi soporta integración con sistemas de administración de identidad y accesos que cumplen con SAML 2.0, como Microsoft ADFS.

Esta sección es una guía paso a paso de la configuración necesaria, tanto en ADFS como en Bizagi, para tener una autenticación intregrada en Bizagi contra Microsoft ADFS.

 

SAML_ADFS_OV

 

Nótese que para usar SAML 2.0, se requiere que tanto su IdP como proyecto de Bizagi, estén configurados para soportar HTTPS.

Para información introductoria sobre SAML 2.0, refiérase a Autenticación con SAML.

 

Prerrequisitos

Para configurar ADFS, como con cualquier IdP que soporte SAML 2.0, usted necesitará:

 

1. Tener certificados previamente instalados y generados propios.

Dichos certificados se usan en la integración con el propósito de firmar aserciones.

Este paso no depende de Bizagi y no está restringido por ningún requerimiento de Bizagi (por lo general se lleva a cabo por el usuario).

En caso de necesitar guía o un ejemplo de este paso, refiérase a Emitir e instalar certificados.

 

Para continuar con los pasos guías qe se presentan abajo, necesitará haber importado los certificados en su IdP. De dicho ejercicio, debería contar con las siguientes entradas también:

La información del certificado (archivo .p12).

La contraseña para el archivo .p12, como se definió en el momento de exportar las llaves pública y privada.

 

Recuerde que si desea encriptar aserciones, entonces lo anterior es también necesario para el otro certificado.

 

note_pin

Considere que lo anterior implica que necesitará manejar sus certificados instalados (y estar pendiente de su fecha de expiración, o cualquier otro aspecto importante de mantenimiento, como cualquier cambio en sus endpoints de Identidad).

 

2. Tener sus usuarios importados y sincronizados en Bizagi.

Recuerde que cuando integre cualquier Administrador de Identidad (sin importar el que elija), los clientes necesitan sincronizar las cuentas que están autorizadas para acceder al Work Portal de Bizagi.

Sincronizar significa importar o aqctualizar los identificadores primarios de las cuentas (dominio y username generalmente, y en algunos casos e-mail).

Recuerde qe las contraseñas no se almacenan cuando se integra con un Administrador de Identidad.

 

Cuando haya verificado que hay al menos una importación inicial de sus usuario a Bizagi, puede proseguir (utilizando el Work Portal y su menú de administración):

 

125Users13

 

note_pin

En Bizagi, los identificadores únicos para los usuarios son: e-mail o la combiación dominio-username.

Los ejemplos de una autenticación basada en SAML que se dan a continuación usan el e-mail como identificador de los usuarios.

 

3. Una versión instalada, completamente configurada y soportada de ADFS

Bizagi soporta ADFS versión 3.0.

Si desea usar una versión diferente, que soporte SAML 2.0, se recomienda revisarlo primero con nuestro equipo de soporte.

 

Lo que debe hacer

Los siguientes pasos enumerados describen lo que se necesia hacer, tanto en Bizagi como en ADFS:

 

1. Establecer en Bizagi las configuraciones referentes a la especificación de SAML.

2. Configurar Bizagi como Proveedor de Servicios en ADFS.

 

Procedimiento

Siga estos pasos:

 

1. Establecer en Bizagi las configuraciones que hacen referencia a la especifricación de SAML.

Haga esto usando el Management Console de Bizagi, poniendo como ambiente objetivo el que necesita para aplicar esta configuración (desarrollo, pruebas o producción).

Alternativamente y solo para el ambiente de desarrollo, puede usar Bziagi Studio.

 

1.1. Abra Bizagi Management Console y abra su proyecto de Bizagi.

 

UsingStudio01

 

 

1.2. Ubique el módulo de Seguridad y dé clic en la opción de Autenticación.

Luego seleccione Autenticación federada de la lista desplegable en el panel a la derecha, y seleccione SAML v2.0:

 

SAML_Bizagiparams1

 

Dé clic en actualizar.

Saldrá un mensaje de confirmación y note que los parámetros adicionales aparecene bajo el item de Autenticación.

 

note_pin

Si aplicó este cambio para un ambiente que no sea desarrollo, entonces necesita asegurarse de que el mismo cambio sea realizado exactamente en su ambiente de desarrollo.

Para hacerlo, siga los mismos pasos mientras usa el Management Console.

 

1.3. Proceda a configurar los parámetros opcioanles como se describe más adelante, asegurándose de hacer clic en Actualizar para cada uno que sea modificado.

Note que los valores de los parámetros son sensibles a las mayúsculas y por lo tanto debe asegurarse de introducirlos correctamente.

 

Llene o establezca estas configuraciones como se describe:

Permitir encripción de aserciones: Puede seleccionar esta opción. Si lo hace, asegúrese de configurar el Certificado de Encripción y la contraseña del certificado de encripción.

Permitir trazas de autenticación en la base de datos: Puede seleccionar esta opción para definir que la aplicación web debe registrar todos los eventos de auteticación (visto desde el Work Portal), de acuerdo a sus requerimientos de auditoría y expectativas.

Certificado de encripción: Use el boton Navegar para subir el certificado digital (en formato P12, contiene las llaves pública y privada) que se va a utilizar para encriptar las aserciones generadas en Bizagi.

Contraseña del certificado de encripción: escriba la contraseá del certificado digital utilizado para la encripción de aserciones.

Esta contraseña debe coincidir con la que definió en el momento de exportar la información del certficado en formato P12.

Forzar autenticación: Puede seleccionar esta opción para prevenir capacidades de SSO (Single Sign On - Inicio de Sesión Único) de tal manera que cuando los usuarios intentan entrar a Bizagi, las credenciales son explícitamente pedidas. Puede usarlo de acuerdo a sus necesidades y expectativas de autenticación.

Ruta del archivo de metadata del IdP: Escriba la ruta donde se encuentra el archivo de metadata de ADFS. Esta ruta es tipicamente una URL. Dicha URL en ADFS se encuenta en:

https://[mi_servidorADFS]/FederationMetadata/2007-06/FederationMetadata.xml

Considere que debe reemplazar el valor adecuado para [mi_servidorADFS].

Time-out de sesiones inactivas: defina los minutos para los que una sesión expire. De acuerdo a sus requerimientos y expectativas de autenticación (por ejemplo, 5 minutos).

Nombre de la organización: Escriba el nombre de su organización. Dicha información se incluye en los mensajes de solicitud enviados por Bizagi.

URL de la organización: Escriba la URL del sitio web de su organización. Dicha información se incluye en los mesajes de solicitud que envía Bizagi.

Protocolo de Binding para SLO de SAML: Se recomienda seleccionas POST de tal manera que haya soporte de mensajes más largos.

Protocolo de Binding para SSO de SAML: Se recomienda seleccionar POST de tal manera que haya soporte para mensajes más largos.

URL del proveedor de servicios: Escriba la URL completa (incluyendo el nombre del proyecto) del SP. Esto significa entrar la URL del Work Portal de Bizagi.

Para Bizagi PaaS, dicha URL usa el formato:

https://[environment]-[project]-[company].bizagi.com/

Para proyectos locales, dicha URL usa el formato:

https://[server]/[project]

Recuerde que la URL anterior es sensible a mayúsculas y que [Environment] - se debe dejar en blanco cuando se está en ambiente de producción

 

Contraseña del certificado de firmas: escriba la contraseña del certificado digital usado para firmar aserciones.

Esta contraseá debe coincidir con la que definió en el momento de exportar la información del certificado en formato P12.

Algoritmo de firma: Seleccione SHA1 o SHA256.

Certificado de firma: Use el botón Navegar para subir el certificado digital (en formato P12, contiene las llaves pública y privada) que se van a utilizar para firmar aserciones generadas por Bizagi.

Dirección de correo de contacto técnico: Provea una dirección de correo electrónico de un contacto de su corporación, para asuntos técnicos.

 

SAML_Bizagiparams2

 

Cuando haya terminado, revise los cambios que se han aplicado.

 

note_pin

Es posible que los cambios de autenticación no se reflejen de inmediato; en cuyo caso, usted puede necesitar reiniciar los servicios de Bizagi.

 

1.4. Reinicie sus servicios de Bizagi.

Para proyectos locales, esto significa ejecutar un IISReset.

Recuerde que cualquier cambio en el tipo de autenticación, o cualquier configuración, no se refleja de inmedatio a no ser que la caché de la aplicación sea actualizada explicitamente.

 

1.5. Proceda a buscar la ubicación del archivo de metadata que Bziagi genera basado en configuraciones previas.

Para configurar ADFS a través de estos pasos de manera más fácil, dicho archivo de metadata de Bizagi se cescargará en una ruta local que luego se usa de input para ADFS.

 

Note que puede encontrar el archivo de metadata buscándolo como:

https://[environment]-[project]-[company].bizagi.com/saml2/metadata.xml?mode=preview

 

Proceda a descargar el archivo poniendo en la barra de búsqueda del navegador la siguiente URL:

https://[environment]-[project]-[company].bizagi.com/saml2/metadata.xml?mode=attachment

 

2. Configurar Bizagi como Proveedor de Servicios en ADFS

Realice esto entrando a las opciones de administración de ADFS.

 

2.1. En su servidor ADFS, abra la consola para su adminsitración.

 

2.2. Inicie la creación de un tercero de confianza.

Puede hacer esto desde las opciones de tercero de confianza (Relying party trust) que le permitirá usar su asistente de configuración con un clic derecho.

 

ADFS_1

 

Hagal click en Iniciar.

 

ADFS_2

 

2.3. Seleccione la fuente de datos.

Para configurar el tercero como se describe, seleccione Importar datos del tercero desde un archivo para navegar al archivo de metadata generado por Bizagi.

 

ADFS_3

 

2.4. Seleccione el archivo de metadata correspondiente.

Al dar click en Navegar asegúrese de localizar el archivo de Bizagi metadata.xml.

 

ADFS_4

 

Dé clic en Siguiente al terminar.

 

2.5. Ingrese un nombre único.

Dé un nombre para desplegar esta configuración y para su conveniencia.

 

ADFS_5

 

Dé clic en Siguiente al terminar.

 

2.6. Saltar autenticación multi-factor.

Seleccione la opción No deseo configurar autenticación multi-factor para el tercero de confianza y dé clic en Siguiente cuando haya terminado.

 

ADFS_6

 

Dé clic Siguiente cuando haya terminado.

 

2.7. Seleccione la autorización de emisión.

Seleccione la opción Permitir el acceso a todos los usuarios del tercero y dé clic en Siguiente cuando haya terminado.

 

ADFS_7

 

Se le presentará un resumen de la información a establecer para el tercero de confianza, inluyendo la que viene del archivo de metadata de Bizagi.

Dé clic en Siguiente cuando haya terminado.

También puede revisar el algoritmo establecido (use SHA1 o SHA256), asegúrese de que coincida con el que haya seleccionado en Bizagi (lo puede revisar en la vista Avanzada).

 

2.8. Abra el editor de reglas de recogida.

Antes de cerrar la configuración actual, asegúrese de seleccionar la opción Abrir el editor de reglas de recogida para el tercero de confianza cuando se cierre el asistente.

 

ADFS_8

 

Luego puede dar clic en Cerrar.

 

2.9. Defina una nueva regla de recogida dando click en Añadir regla.

 

ADFS_9

 

 

2.10. Seleccione el template de Send Claims Using a Custom Rule.

 

ADFS_10

 

Dé click en Siguiente cuando lo haya hecho.

 

2.11. Cree las siguientes dos reglas:

 

Regla 1

 

Rule name: email

Custom rule: c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname", Issuer == "AD AUTHORITY"] => issue(store = "Active Directory", types = ("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"), query = ";mail;{0}", param = c.Value);

 

ADFS_12

 

Regla 2

 

Rule name: nameid

Custom rule: c:[Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"] => issue(Type = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", Issuer = c.Issuer, OriginalIssuer = c.OriginalIssuer, Value = c.Value, ValueType = c.ValueType, Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/format"] = "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress");

 

ADFS_14

 

Al terminar, verá sus reglas como se muestra en la siguiente imagen:

 

ADFS_13

 

Es posible que las reglas no sean reconocidas inmediatamente. De ser el caso, elimine la regla, vuélvala a crear y reinicie el servidor ADFS.

 

En este punto tendrá configurado ADFS para usar SAML 2.0 como autenticación integrada con Bizagi!

Deberá realizar los pasos siguientes en caso de que haya usado certificados auto-firmados.

 

Pasos adicionales para certificados auto-firmados

Si emitió e instaló certificados auto-firmados para su ADFS (para firmar y encriptar mensajes), entonces deberá realizar lo siguiente:

1.Acceda a su servidor ADFS y abra la consola PowerShell.

2.Entre el siguiente comando:

Get-AdfsRelyingPartyTrust -Identifier [relying_party_trust] | Set-AdfsRelyingPartyTrust

-SigningCertificateRevocationCheck None -EncryptionCertificateRevocationCheck None

Considere que debe cambiar [relying_party_trust] de acuerdo al nombre único dado en la configuración anterior (cuando registro Bizagi como tercero de confianza).