Descripción general del proceso de autenticación
- Autenticarse en el proveedor de identidad de terceros
- Obtener del proveedor de identidad de terceros el dato de autenticación SAML del usuario
- Enviar el dato de autenticación SAML al Servidor de aplicaciones
- Recibir un ticket de autenticación del Servidor de aplicaciones
La cuenta de usuario debe existir en la base de datos de FlexiCapture y debe tener todos los permisos necesarios.
Implementación
Obtener dato SAML
Envíe dato SAML al Servidor de aplicaciones de FlexiCapture 12
https://<Application Server>/Flexicapture12/Server/Saml. El nombre del campo que contiene el dato SAML debe ser SAMLResponse.
https://<ApplicationServer>/Flexicapture12/Server/Saml?Tenant=MyTenantName
Para que la autenticación funcione, debe haber un usuario registrado en el Servidor de aplicaciones cuyo login coincida con el identificador del dato SAML. Se utilizará como login el valor del campo /samlp:Response/saml:Assertion/saml:Subject/saml:NameID.
El Servidor de aplicaciones devuelve una respuesta como esta:
<ticket> es el ticket de autenticación de FlexiCapture 12. Puede usar este ticket para realizar llamadas a todas las interfaces del Servidor de aplicaciones que requieran autenticación. Las solicitudes a los servicios web de FlexiCapture deben realizarse mediante la autenticación de FlexiCapture (direcciones que comienzan por https://<ApplicationServer>/flexicapture12/Server/FCAuth/ o https://<ApplicationServer>/flexicapture12/Server/MobileApp/).
Use el ticket autenticado de FC 12
FlexiCaptureTmpPrn) o un encabezado Authorization: Bearer. Ejemplo:
FlexiCaptureTmpPrn) como en el encabezado AuthTicket. La siguiente solicitud debe realizarse con el ticket actualizado (los tickets caducan después de cierto tiempo).
Configurar un certificado de confianza en el Servidor de aplicaciones
AllowMixedModeCertificateValidation en la configuración <appSettings> del archivo Web.config. Si este parámetro está establecido en true, la comprobación se realizará con el certificado agregado a la carpeta Trusted Root Certification Authorities del almacén de certificados Equipo local del equipo en el que se ejecuta el Servidor de aplicaciones.
Si no se agregan certificados a la base de datos, la comprobación se realizará con el certificado ubicado en la carpeta Trusted Root Certification Authorities, y el parámetro AllowMixedModeCertificateValidation se ignorará.
Descargue el proyecto y los materiales complementarios: SAML_Example.zip