Autenticación con PingFederate

<< 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 PingFederate

Introducción

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

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

 

SAML_PingF_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 PingFederate, 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 PingFederate.

Bizagi soporta PingFederate versión 8.

El ejemplo de este artículo (y el de la certificación oficinal) se trabaja con la versión 8.4.3.

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

 

Lo que debe hacer

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

 

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

2. Configurar Bizagi como Proveedor de Servicios en PingFederate.

 

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 PingFederate. Esta ruta es tipicamente una URL. Dicha URL en PingFederate se encuenta en:

https://myfederateserver/FederationMetadata/2007-06/FederationMetadata.xml

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 PingFederate 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 PingFederate.

 

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 PingFederate

Realice esto entrnado en las opciones de administrador de PingFederate.

 

2.1. Entre con derechos de administrador a su servidor de PingFederate.

 

2.2. Acceda a menú de Configuración del IdP y ubice la sección de conexiones de SP.

 

2.4. Dé click en Crear nuevo en Tipo de Conexión, y asegúrese de seleccionar SAML 2.0 como Perfil de Navegador.

 

PingFederate1

 

2.4. Seleccione la opción Navegador SSO en la pestaña de Opciones de Conexión:

 

PingFederate2

2.6. Use la opción de cargar metadata en la pestaña Importar metadata.

De esta manera, podrá buscar el archivo de metadata de Bizagi para mayor configuración.

 

PingFederate3

 

2.6. Defina que el Modo de trazas esté en Estándar en la pestaña Información General:

Dé clic cuando haya terminado.

 

PingFederate4

 

2.8 Configure el perfil de Navegador Web y HTTP para el intercambio de mensajes.

Para hacerlo, haga clic en Configurar SSO de Navegador.

 

2.9. Seleccione las opciones SP-initiated SSO y SP-initiated SLO en la pestaña de perfiles SAML.

 

PingFederate5

 

Dé clic en Siguiente cuando termine.

 

2.10. Vaya a la pestaña Línea de tiempo de aserciones para establecer el valor en minutos de las aserciones emitidas:

Minutos antes

Minutos después

Puede dejar los valores por defecto o cambiarlos de acuerdo a sus políticas.

 

PingFederate5

 

De clic en Siguiente cuando termine.

 

2.11. Haga clic en Configurar creación de aserciones en la pestaña Creación de aserciones, para definir la información a incluir en las respuestas.

 

2.12. Seleccione el mapeo Estándar en la pestaña de mapeo de identidades.

 

PingFederate6

 

2.13. Defina el atributo a tomar como base en el contrato, en la pestaña Contrato de atributos.

Hágalo escribiendo lo siguiente en SAML_SUBJECT:

domain\username ó

username@domain

 

Considere que SAML_SUBJECT tiene un formato diferente, entonces configurelo para usar el correo y extienda el contrato para usar el atributo Email:

urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress

 

2.14. Clic en Mapear nueva instancia de adaptador en la pestaña Mapeo de fuentes de autenticación.

 

2.15. En el mapeo de adaptadores de IdP, establezca un nuevo adaptador para la conexión, dándo clic en Manejar instancias de adaptadores (ubicada en la pestaña de Instancias de adaptadores):

 

PingFederate8

 

Note que puede escoger crear uno nuevo o seleccionar uno existente.

 

PingFederate9

 

2.16. Vaya a la pestaña Mapeo de Aserciones y seleccione Use only Adapter Contract values in the SAML assertion:

 

PingFederate10

 

Dé clic en Siguiente cuando haya terminado.

 

2.17. Seleccione Adaptador en la primera lista desplegable (fuente) y Mail en la segunda (Value), tanto para SAML_SUBJECT como para la pestaña Cumplimiento de Contrato de Atributos.

 

PingFederate11

 

Note que en caso de que el contrato haya sido extendido en el paso 2.13. con el atributo Email, deberá seleccionar las mismas opciones de la lista desplegable (Adaptador y luego Mail) pero para el campo que aparecerá como Email.

 

2.18. Salte la configuración presentada en la pestaña Criterios de Emisión.

Simplemente haga clic en Siguiente.

 

2.19. Dé clic en Establecer Configuraciones de Protocolo en la sección Navegador SSO y revise la información de protocolo.

La siguiente configuración debe estar automáticamente llena basada en el archivo de metadata de Bizagi.

Si está revisando esta sección o si desea hacer cambios, considere:

En la pestaña Allowable SAML Bindings, solo pueden estar los valores POST y REDIRECT.

En la pestaña Signature Policy, se recomienda que fuerce las aserciones para que sean firmadas con la firma requerida para solicitudes Authn.

En la pestaña Encryption Policy se requiere que la opción The Entire Assertion sea seleccionada para encripción (en vez de Allow Encryption in SLO Messages from the SP pues no es soportada).

 

2.20. Haga clic en Configurar Credenciales en la pestaña Credenciales y ubica la sección con el mismo nombre. Defina las medidas de seguridad de los mensajes intercambiados entre PingFederate y Bizagi.

 

2.21. Navegue hasta el certificado para firmar aserciones que se envían a Bizagi, en la pestaña Configuraciones de Firmas digitales.

 

PingFederate12

Luego seleccione SHA1 o SHA256 como algoritmo. Recuerde que esta configuración debe coincidir con la seleccionada en Bizagi.

 

2.22. Defina como validar los certificados cuando Bizagi envíe mensajes.

Para ello, vaya a Manejar Configuraciones de verificación de firma.

 

2.23. Seleccione UNANCHORED en la pestaña Trust Model (para que soporte certificados auto-firmados).

 

2.24. Vaya a las Configuraciones de verificación de Certificados y seleccione la llave pública como empleada por Bizagi para firmas.

Note que si esta llave no es seleccionable de la lista desplegable, entonces puede usar el botón Manejar Certificados para importarlo.

 

PingFederate13

 

2.25. Solo si le ha permitido a Bizagi que encripte las aserciones, entonces necesitará seleccionar el certificado y algoritmo para ello y realice este paso y el siguiente.

Para ello, vaya a Seleccionar certificado XML de Encripcioón y busque el certificado.

 

Luego seleccione AES-128 como el Algoritmo de Encripción de Bloques y RSA-OAEP como Algoritmo de transporte de llaves.

Recuerde que si su certificado no está en la lista desplegable, lo puede importar.

 

PingFederate14

 

2.26. Vaya a la pestaña Seleccionar llaves de descripción y busque el certificado a usar por Bizagi para encriptar mensajes enviados al IdP.

Recuerde que si su certificado no sale en la lista, lo puede importar.

 

PingFederate15

 

 

2.27. Finalmente, asegúrese que el estado de la conexión esté Activo (en la página de resumen).

 

PingFederate16

 

Guarde los cambios y salga cuando haya terminado.

 

Paso adicional

Recuerde que cuando configuró Bizagi, la ruta del archivo de metadata del IdP se dejó en blanco.

Por lo tanto, deberá primero obtener el archivo de metadata de PingFederate.

 

Una vez obtenido, proceda a Bizagi y configure el valor que se muestra:

 

SAML_Bizagiparams2PingF

 

Asegúrese de guardar los cambios.

En este momento ya habrá configurado la integración de PingFederate usando SAML 2.0 para autenticación con Bizagi!