Saltar al contenido principal
Para usar las funciones de Highly Regulated Identity, debe tener un Enterprise Plan con el complemento Highly Regulated Identity. Consulte Auth0 Pricing para obtener más información.
Para ayudar a los clientes a configurar su inquilino de Auth0 de modo que cumpla con uno de los perfiles de Financial-grade API (FAPI), el modelo de aplicación incluye una propiedad compliance_level que se puede establecer en uno de cinco valores:
  • null o undefined: No se requiere ningún nivel de cumplimiento. Este es el valor predeterminado.
  • fapi1_adv_mtls_par: El cliente quiere que este cliente se comporte de acuerdo con el perfil FAPI1 Advanced mediante mTLS y PAR.
  • fapi1_adv_pkj_par: El cliente quiere que este cliente se comporte de acuerdo con el perfil FAPI1 Advanced mediante Private Key JWT y PAR.
  • fapi2_sp_pkj_mtls: El cliente quiere que este cliente se comporte de acuerdo con el perfil de seguridad FAPI 2.0 mediante Private Key JWT y mTLS Token Sender-Constraining.
  • fapi2_sp_mtls_mtls: El cliente quiere que este cliente se comporte de acuerdo con el perfil de seguridad FAPI 2.0 mediante mTLS Client Authentication y mTLS Token Sender-Constraining.
El cumplimiento de un perfil FAPI requiere varios cambios de configuración. Establecer compliance_level garantiza que ninguna solicitud de autorización pueda completarse correctamente a menos que tanto la solicitud como la configuración cumplan con el estándar seleccionado. Por ejemplo, los niveles de cumplimiento fapi1_adv_pkj_par y fapi1_adv_mtls_par requieren PAR. Si se selecciona cualquiera de estos niveles de cumplimiento, PAR es obligatorio independientemente del valor de la configuración require_pushed_authorization_requests. Intentar una autorización sin usar PAR da como resultado la siguiente respuesta de error:
{
  “error”: “invalid_request”,
  "error_description": "Las solicitudes de autorización enviadas son requeridas por el nivel de cumplimiento configurado" 
}
En algunos casos, establecer un nivel de cumplimiento también modifica el comportamiento de Auth0. Por ejemplo, los niveles de cumplimiento fapi1_adv_pkj_par y fapi1_adv_mtls_par hacen que Auth0 incluya un claim s_hash en el devuelto, que contiene un hash SHA256 del valor de state. Esto permite que los tokens de ID actúen como una firma desacoplada. Las siguientes tablas resumen las reglas de validación adicionales y los cambios en el comportamiento de Auth0 que habilita cada nivel de cumplimiento:
Validaciónfapi1_adv_pkj_parfapi1_adv_mtls_parfapi2_sp_pkj_mtlsfapi2_sp_mtls_mtls
Impide el uso de tokens de acceso en los parámetros de consulta de la URL al llamar a /userinfo. En su lugar, los tokens de acceso deben incluirse en el encabezado Authorization.YYYY
Requiere PAR.YYYY
Requiere PKCE con el método de desafío S256.YYYY
Impide el uso de comodines en los callbacks permitidos en un cliente.YYNN
Exige el uso de JAR.YYNN
Asegura que la carga útil de JAR esté firmada con el algoritmo PS256.YYNN
Asegura que la carga útil de JAR contenga la claim nbf y que no tenga una antigüedad superior a 60 minutos.YYNN
Asegura que la carga útil de JAR contenga la claim exp y que no sea posterior en más de 60 minutos a la claim nbf.YYNN
Asegura que el cliente haya establecido la propiedad oidc_conformant en true.YYYY
Requiere el uso de encabezados x-fapi-*YYNN
Requiere el uso de Private Key JWT para la autenticación del cliente.YNYN
Requiere el uso de mTLS para la autenticación del cliente.NYNY
Tipos de respuesta permitidos.code id_tokencode id_tokencodecode
Requiere que la claim aud coincida exactamente con el emisor en la aserción de Private Key JWT.NN/AYN/A
Requiere el parámetro redirect_uri en las solicitudes de autorización enviadas.NNYY
Comportamiento actualizado de Auth0fapi1_adv_pkj_parfapi1_adv_mtls_parfapi2_sp_pkj_mtlsfapi2_sp_mtls_mtls
Añade la claim s_hash a los ID tokens.YYNN
Cuando se solicita el scope profile, la claim update_at contiene una marca de tiempo Unix conforme a OIDC en lugar de una cadena.YYYY
Devuelve solo códigos de error conformes a OIDC. En algunos casos, Auth0 puede devolver códigos de error adicionales, pero habilitar este nivel de cumplimiento garantiza que Auth0 solo use códigos de error definidos en los estándares de OpenID.YYYY
Devuelve el emisor como parámetro iss en las respuestas de código.NNYY
Reduce la vigencia máxima del código de autorización a 60 segundos.NNYY

Configurar el cumplimiento de FAPI para un cliente

Para hacerlo desde el Auth0 Dashboard:
  1. Vaya a Auth0 Dashboard > Applications.
  2. Seleccione la aplicación.
  3. Seleccione la pestaña configuración de la aplicación.
  4. Abra la sección Advanced Settings.
  5. En la pestaña OAuth, seleccione FAPI Compliance Enforcement Level.
Las opciones para configurar el cumplimiento de FAPI son:
  • None: No se requiere ningún nivel de cumplimiento. Esta es la opción predeterminada.
  • FAPI 1 Advanced profile using Private Key JWT and PAR: El cliente quiere que esta aplicación se comporte de acuerdo con el perfil avanzado de FAPI 1 mediante Private Key JWT y PAR.
  • FAPI 1 Advanced profile using mTLS and PAR: El cliente quiere que esta aplicación se comporte de acuerdo con el perfil avanzado de FAPI 1 mediante mTLS y PAR.
  • FAPI 2.0 Security Profile with Private Key JWT and certificate binding: El cliente quiere que esta aplicación se comporte de acuerdo con el perfil de seguridad de FAPI 2.0 mediante Private Key JWT Client Authentication y mTLS Token Sender-Constraining.
  • FAPI 2.0 Security Profile with mTLS and certificate binding: El cliente quiere que esta aplicación se comporte de acuerdo con el perfil de seguridad de FAPI 2.0 mediante mTLS Client Authentication y mTLS Token Sender-Constraining.

Más información