Proveedor de seguridad SAML en Jitterbit App Builder
La autenticación de inicio de sesión único (SSO) SAML se define en los siguientes documentos:
- Afirmaciones y protocolos para el lenguaje de marcado de afirmaciones de seguridad de OASIS (SAML) V2.0
- SAML versión 2.0 Errata 05
En un escenario de SSO, hay tres roles:
- Principal - El usuario que accede a un servicio restringido.
- Proveedor de servicios (SP) - Proporciona acceso a servicios restringidos.
- Proveedor de identidad (IdP) - Autentica a los usuarios.
App Builder puede configurarse como proveedor de servicios (SP) o proveedor de identidad (IdP) mediante el proveedor de seguridad adecuado. Este documento describe el proveedor de seguridad * SAML*, utilizado para el rol de SP. En este rol, App Builder delega la autenticación a un IdP externo. Los IdP compatibles incluyen:
Para el rol de IdP, consulte Proveedor de identidad SAML.
Flujos
La especificación de inicio de sesión único (SSO) SAML define varios flujos. El proveedor de seguridad SAML admite los siguientes flujos de SSO SAML:
- Iniciado por el proveedor de servicios (SP)
- Iniciado por el proveedor de identidad (IdP)
Iniciado por el proveedor de servicios (SP)
En el flujo iniciado por el proveedor de servicios (PS), un usuario accede a App Builder e intenta acceder a una página restringida. App Builder redirige al usuario al proveedor de identidad (IdP) mediante el enlace de redirección SAML (HTTP). GET
). Una vez autenticado, el IdP redirige al usuario a App Builder mediante el enlace SAML Post (HTTP POST
). App Builder valida la respuesta SAML, asigna el identificador de nombre a una cuenta de usuario local de App Builder y otorga los derechos asociados con la cuenta de usuario.
Tenga en cuenta que, antes de redirigir al usuario al IdP, App Builder registra la URL de la página a la que intentó acceder. Una vez autenticado, App Builder lo redirige a la página solicitada originalmente. Esto permite la creación de enlaces profundos.
Iniciado por el proveedor de identidad (IdP)
En el flujo del proveedor de identidad (IdP), el usuario accede directamente al IdP. Una vez autenticado, se le redirige a App Builder mediante el enlace de publicación SAML (HTTP). POST
). Al igual que con el flujo iniciado por SP, App Builder valida la respuesta SAML, asigna el identificador de nombre a una cuenta de usuario local de App Builder y otorga los derechos asociados con la cuenta de usuario.
Normalmente, App Builder redirigirá al usuario a su página de inicio tras iniciar sesión correctamente. Sin embargo, el IdP puede crear un enlace profundo pasando el URI en el parámetro RelayState de la respuesta SAML. Consulte el parámetro AllowRelayStateRedirects a continuación.
Configuración
Fichas
- Emisor: El emisor de la aserción SAML. Por defecto, la audiencia.
- Audiencia: Restricción de audiencia de la aserción SAML. El valor debe ser una URI sintácticamente válida.
- Destinatario: El destinatario de la aserción SAML. Este valor debe ser una URI sintácticamente válida. El valor predeterminado es la URI del servicio de consumidor de aserciones (p. ej., https://example.com/App Builder/signin- SAML).
Precaución
Por razones heredadas, la Audiencia se establece de forma predeterminada en la URL raíz de la aplicación (p. ej., https://example.com/App Builder/). Se recomienda encarecidamente configurar la Audiencia explícitamente en lugar de usar la predeterminada.
Extremos
Tipo | Descripción |
---|---|
Extremo de metadatos | extremo de conexión de metadatos del servicio de inicio de sesión único (SSO) SAML. Este parámetro es obligatorio si los parámetros Extremo de redirección de solicitud o Certificado de firma no están definidos. |
URI de RelayState | URI de redirección de RelayState permitida para una solicitud iniciada por un proveedor de identidad (IdP) SAML. Consulte el parámetro AllowRelayStateRedirects para obtener más información. |
Extremo de redirección de solicitud | extremo de solicitud de autenticación de inicio de sesión único (SSO) SAML para el enlace de redirección. Este parámetro es obligatorio si el Extremo de metadatos no está definido. |
Certificados
Propósito | Tipo | Formato | Descripción |
---|---|---|---|
Validación de firma | Certificado X.509 |
| Certificado X.509 utilizado para validar las firmas de respuesta de inicio de sesión único (SSO) de SAML. El certificado de validación de firma es necesario si el Punto final de metadatos no está definido. |
Propiedades
El proveedor de seguridad SAML define los siguientes parámetros adicionales:
Parámetro | Predeterminado | Descripción |
---|---|---|
PermitirRedireccionesDeEstadoDeRetransmisión | False | Indica si un inicio de sesión iniciado por un proveedor de identidad (IdP) SAML puede incluir una URI de redirección en el parámetro RelayState. La URI de redirección es la ubicación a la que se redirigirá al usuario después de iniciar sesión. De forma predeterminada, el parámetro RelayState no puede contener una URI de redirección. Establézcalo en True para permitir redirigir URI en el parámetro RelayState. Para protegerse contra ataques de retransmisión abierta, el URI debe coincidir con el extremo_RelayState URI_. |
IgnorarErroresTls | False | Indica si App Builder debe ignorar los errores de certificado HTTPS al realizar solicitudes de canal secundario para recuperar los metadatos del servicio. Esta configuración es solo para fines de configuración y prueba. No la active en un sistema en ejecución. |
Requisito de firma | AssertionOrResponse | Indica si la respuesta SAML, la aserción o ambas deben estar firmadas. Las opciones incluyen: - AssertionOrResponse - Tanto la afirmación como la respuesta deberán estar firmadas. - Assertion - La afirmación deberá estar firmada. - Response Solo se debe firmar la respuesta. La aserción hereda la firma de la respuesta. AssertionAndResponse - Tanto la afirmación como la respuesta deberán estar firmadas. |
LogPII | False Indica que se debe registrar la información de identificación personal (PII). Esta configuración se aplica al iniciar el sistema. |
Reclamos
Las aserciones SAML contienen atributos. Los atributos son pares clave-valor multivalor. App Builder trata los atributos de las aserciones SAML como notificaciones. El nombre del atributo se asigna a un identificador de notificación.
Por ejemplo, dada una afirmación SAML con el siguiente atributo:
<Attribute AttributeName="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name">
<AttributeValue>Arthur.Dent</AttributeValue>
</Attribute>
Mapeo del identificador http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
hacia Name
La propiedad establecerá el nombre de usuario como "Arthur.Dent" al aprovisionar la cuenta.
La siguiente tabla describe las asignaciones de notificaciones predeterminadas:
Identificador | Propósito | Descripción |
---|---|---|
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier | Identificador de nombre | Identificador único e inmutable utilizado para asignar la identidad de externo a un usuario de App Builder. |
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name | Nombre | Nombre de usuario. |
http://schemas.xmlsoap.org/claims/Group | Grupo | Membresía del grupo de seguridad. |
http://schemas.zudy.com/identity/claims/fullname | Nombre completo | Nombre completo. |
http://schemas.zudy.com/identity/claims/displayname | Nombre para mostrar | Nombre descriptivo. |
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress | Dirección de Correo | Dirección de Correo. |
http://schemas.zudy.com/identity/claims/phonenumber | Número de teléfono | Número de teléfono. |
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/thumbprint | Huella digital del certificado X.509. | |
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/x500distinguishedname | Nombre distinguido del certificado X.509. | |
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/dns | Nombre DNS del certificado X.509. |
Integración
Servicio de atención al consumidor de aserciones
El proveedor de seguridad SAML expone un único extremo. Este extremo recibe respuestas SAML. Esto se conoce como Servicio de Consumidor de Aserciones. La URL de un Servicio de Consumidor de Aserciones de App Builder podría ser similar a esta:
https://example.com/App Builder/signin-SAML
La URL se compone de las siguientes partes:
Componente | Descripción |
---|---|
https://example.com/App Builder/ | URL absoluta del directorio raíz de la aplicación App Builder. |
SAML | Nombre del proveedor de seguridad SAML codificado en URL. El valor distingue entre mayúsculas y minúsculas. |
Solución de problemas
Error "La AudienceRestrictionCondition no era válida porque la audiencia especificada no está presente en AudienceUris".
Este error indica que la URI de la audiencia no coincide. Asegúrese de que la propiedad Audience se haya configurado explícitamente. De lo contrario, se usará la URL actual de forma predeterminada, que puede variar según el usuario. El valor distingue entre mayúsculas y minúsculas.
Problemas y limitaciones conocidos
El proveedor de seguridad de inicio de sesión único (SSO) SAML de App Builder tiene las siguientes limitaciones:
- Sólo se podrá validar una única restricción de audiencia.
- El protocolo de resolución de artefactos no es compatible.
- El protocolo de cierre de sesión no es compatible.