Saltar al contenido principal
Auth0 le permite crear conexiones de (IdP).

Requisitos previos

Antes de comenzar:
  • Registre su aplicación en Auth0.
    • Seleccione un tipo de aplicación adecuado.
    • Agregue una URL de callback permitida de {https://yourApp/callback}.
    • Asegúrese de que los tipos de concesión de su aplicación incluyan los flujos adecuados.
  • Decida el nombre de esta conexión empresarial
    • La URL de retorno (también llamada URL del Assertion Consumer Service) pasa a ser: https://{yourDomain}/login/callback?connection={yourConnectionName}
    • El ID de entidad pasa a ser: urn:auth0:{yourTenant}:{yourConnectionName}

Pasos

Para conectar su aplicación a un proveedor de identidad SAML, debe:
  1. Introducir la URL de retorno y el ID de entidad en el IdP (para obtener más información, consulte Opciones de configuración del proveedor de identidad SAML).
  2. Obtener el certificado de firma del IdP y convertirlo a Base64.
  3. Crear una conexión empresarial en Auth0.
  4. Habilitar la conexión empresarial para su aplicación de Auth0.
  5. Configurar asignaciones (innecesario en la mayoría de los casos).
  6. Probar la conexión.

Obtenga el certificado de firma del IdP

Con SAML Login, Auth0 actúa como proveedor de servicios, por lo que deberá obtener un certificado de firma X.509 del IdP de SAML (en formato PEM o CER); más adelante, lo cargará en Auth0. Los métodos para obtener este certificado varían, así que consulte la documentación de su IdP si necesita ayuda adicional.

Convertir el certificado de firma a Base64

Puede usar la o el para cargar el certificado de firma X.509. Si usa la Management API, debe convertir el archivo a Base64. Para ello, use una sencilla herramienta en línea o ejecute el siguiente comando en Bash: cat signing-cert.crt | base64.

Cifrado de aserciones

Si tus aserciones SAML están cifradas, debes configurar valores adicionales para tu conexión a fin de indicarle a Auth0 cómo debe gestionar el descifrado.

Crear una conexión empresarial en Auth0

A continuación, deberá crear y configurar una conexión empresarial SAML en Auth0, y cargar su certificado de firma X.509. Esta tarea puede realizarse mediante el Dashboard de Auth0 o la Management API.

Crear una conexión empresarial con el Dashboard

  1. Vaya a Auth0 Dashboard > Authentication > Enterprise, busque SAML y seleccione el icono +.
    Dashboard - Conexiones - Enterprise
  2. Introduzca los detalles de la conexión y seleccione Crear:
CampoDescripción
Nombre de la conexiónIdentificador lógico de la conexión; debe ser único para su inquilino y coincidir con el nombre que se usa al configurar la Post-back URL y el Entity ID en el IdP. Una vez establecido, este nombre no se puede cambiar.
URL de inicio de sesiónURL de inicio de sesión único de SAML.
Certificado de firma X.509Certificado de firma (codificado en PEM o CER) que recuperó antes del IdP durante este proceso.
Habilitar cierre de sesiónCuando está habilitado, se puede establecer una URL de cierre de sesión específica. De lo contrario, se usa de forma predeterminada la URL de inicio de sesión.
URL de cierre de sesión (opcional)URL de cierre de sesión único de SAML.
Atributo de ID de usuario (opcional)Atributo del token SAML que se asignará a la propiedad user_id en Auth0.
Modo de depuraciónCuando está habilitado, se generarán registros más detallados durante el proceso de autenticación.
Firmar solicitudCuando está habilitado, la solicitud de autenticación SAML se firmará. (Asegúrese de descargar y proporcionar el certificado correspondiente para que el IdP de SAML pueda validar la firma de las aserciones).
Algoritmo de firma de solicitudAlgoritmo que Auth0 usará para firmar las aserciones SAML.
Algoritmo de resumen de firma de solicitudAlgoritmo que Auth0 usará para el resumen de la firma de la solicitud.
Vinculación de protocoloVinculación HTTP compatible con el IdP.
Plantilla de solicitud (opcional)Plantilla que da formato a la solicitud SAML.
Configurar ajustes de SAML
3. En la vista Provisioning, configure cómo se crean y actualizan los perfiles de usuario en Auth0.
CampoDescripción
Sincronizar atributos del perfil de usuario en cada inicio de sesiónCuando está habilitado, Auth0 sincroniza automáticamente los datos del perfil del usuario en cada inicio de sesión, lo que garantiza que los cambios realizados en el origen de la conexión se actualicen automáticamente en Auth0.
Sincronizar perfiles de usuario usando SCIMCuando está habilitado, Auth0 permite sincronizar los datos del perfil de usuario mediante SCIM. Para obtener más información, consulte Configure Inbound SCIM.
  1. En la vista Login Experience, configure cómo inician sesión los usuarios con esta conexión.
CampoDescripción
Home Realm DiscoveryCompara el dominio de correo electrónico de un usuario con los dominios del Proveedor de identidad proporcionados. Para obtener más información, consulte Configure Identifier First Authentication
Mostrar botón de conexiónEsta opción muestra las siguientes opciones para personalizar el botón de conexión de su aplicación.
Nombre visible del botón (Opcional)Texto que se usa para personalizar el botón de inicio de sesión de Universal Login. Cuando se establece, el botón muestra: “Continuar con {Nombre visible del botón}”.
URL del logotipo del botón (Opcional)URL de la imagen que se usa para personalizar el botón de inicio de sesión de Universal Login. Cuando se establece, el botón de inicio de sesión de Universal Login muestra la imagen como un cuadrado de 20 px por 20 px.
Los campos opcionales solo están disponibles con Universal Login. Los clientes que usan Classic Login no verán el botón Add, Nombre visible del botón ni URL del logotipo del botón.
  1. Si tiene los permisos administrativos adecuados para completar la integración, haga clic en Continuar para conocer los parámetros personalizados necesarios para configurar su IdP. De lo contrario, proporcione la URL indicada a su administrador para que pueda ajustar la configuración requerida.

Crear una conexión empresarial con la Management API

También puede usar la Management API para crear su conexión SAML. Al hacerlo, puede optar por especificar manualmente cada campo de configuración de SAML o, en su lugar, indicar un documento de metadatos SAML que contenga los valores de configuración.

Crear una conexión con los valores especificados

Realice una llamada POST al endpoint Create a Connection. Asegúrese de reemplazar los valores de marcador de posición MGMT_API_ACCESS_TOKEN, CONNECTION_NAME, SIGN_IN_ENDPOINT_URL, SIGN_OUT_ENDPOINT_URL y BASE64_SIGNING_CERT por su de Management API, el nombre de la conexión, la URL de inicio de sesión, la URL de cierre de sesión y el certificado de firma codificado en Base64 (en formato PEM o CER), respectivamente.
ValorDescripción
MGMT_API_ACCESS_TOKENToken de acceso para la Management API con el scope create:connections.
CONNECTION_NAMEEl nombre de la conexión que se va a crear.
SIGN_IN_ENDPONT_URLURL de inicio de sesión único de SAML para la conexión que se va a crear.
SIGN_OUT_ENDPOINT_URLURL de cierre de sesión único de SAML para la conexión que se va a crear.
BASE64_SIGNING_CERTCertificado de firma X.509 (codificado en PEM o CER) que obtuvo del IdP.
O, en JSON:
{
	"strategy": "samlp",
  	"name": "CONNECTION_NAME",
  	"options": {
    	"signInEndpoint": "SIGN_IN_ENDPOINT_URL",
    	"signOutEndpoint": "SIGN_OUT_ENDPOINT_URL",
    	"signatureAlgorithm": "rsa-sha256",
    	"digestAlgorithm": "sha256",
    	"fieldsMap": {
     		...
    	},
    	"signingCert": "BASE64_SIGNING_CERT"
  	}
}

Crear una conexión mediante metadatos SAML

En lugar de especificar cada campo de la configuración de SAML, puede indicar un documento de metadatos SAML que contenga los valores de configuración. Al indicar un documento de metadatos SAML, puede proporcionar el contenido XML del documento (metadataXml) o la URL del documento (metadataUrl). Si proporciona la URL, el contenido se descarga solo una vez; la conexión no se reconfigurará automáticamente si el contenido de la URL cambia en el futuro.
Proporcione el contenido del documento de metadatos
Use la opción metadataXml para proporcionar el contenido del documento:
Proporcione la URL de un documento de metadatos
Use la opción metadataUrl para indicar la URL del documento: Cuando se proporciona la URL, el contenido se descarga solo una vez; la conexión no se reconfigura automáticamente si el contenido de la URL cambia en el futuro.
Actualice la información de una conexión existente con la URL de metadatos
Este proceso solo funcionará si la conexión se creó manualmente con metadataUrl.
Si tiene una implementación B2B y federa con Auth0 mediante su propio proveedor de identidad SAML, es posible que necesite actualizar la información de la conexión almacenada en Auth0, como cambios en el certificado de firma, cambios en la URL del endpoint o nuevos campos de aserción. Auth0 lo hace automáticamente para las conexiones ADFS, pero no para las conexiones SAML. Puede crear un proceso por lotes (cron job) para realizar una actualización periódica. El proceso puede ejecutarse cada pocas semanas y realizar una llamada PATCH al endpoint /api/v2/connections/CONNECTION_ID, pasando un cuerpo que contenga {options: {metadataUrl: '$URL'}}, donde $URL es la misma URL de metadatos con la que creó la conexión. Use la URL de metadatos para crear una nueva conexión temporal y luego comparar las propiedades de la conexión antigua y la nueva. Si hay alguna diferencia, actualice la nueva conexión y luego elimine la conexión temporal.
  1. Cree una conexión SAML con options.metadataUrl. El objeto de conexión se completará con la información de los metadatos.
  2. Actualice el contenido de los metadatos en la URL.
  3. Envíe un PATCH al endpoint /api/v2/connections/CONNECTION_ID con {options: {metadataUrl: '$URL'}}. Ahora el objeto de conexión se actualiza con el nuevo contenido de los metadatos.
Si usa el parámetro options, sobrescribirá todo el objeto options. Asegúrese de que todos los parámetros estén presentes.

Especifique un ID de entidad personalizado

Para especificar un ID de entidad personalizado, use la Management API para reemplazar el valor predeterminado urn:auth0:YOUR_TENANT:YOUR_CONNECTION_NAME. Establezca la propiedad connection.options.entityID cuando se cree la conexión por primera vez o al actualizar una conexión existente. El siguiente ejemplo de JSON puede usarse para crear una nueva conexión SAML mediante la URL de metadatos del IdP de SAML y, al mismo tiempo, especificar un ID de entidad personalizado. El ID de entidad sigue siendo único, ya que se crea con el nombre de la conexión.
{
  "strategy": "samlp", 
  "name": "{yourConnectionName}", 
  "options": { 
    "metadataUrl": "https://saml-idp/samlp/metadata/uarlU13n63e0feZNJxOCNZ1To3a9H7jX",
    "entityId": "urn:your-custom-sp-name:{yourConnectionName}"
  }
}

Habilitar la conexión empresarial para su aplicación de Auth0

Para usar su nueva conexión empresarial SAML, primero debe habilitar la conexión en sus aplicaciones de Auth0.

Configurar asignaciones

Si está configurando una conexión empresarial SAML para un servidor PingFederate no estándar, debe actualizar las asignaciones de atributos.
Seleccione la vista Mappings, introduzca las asignaciones entre {} y seleccione Guardar.
Configurar asignaciones de SAML
Asignaciones para servidores PingFederate no estándar:
{
    "user_id": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier",
    "email": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier"
}
Asignaciones para Circle
{
  "email": "EmailAddress",
  "given_name": "FirstName",
  "family_name": "LastName"
}
Asignar una de estas dos claims a un atributo de usuario
{
  "given_name": [
    "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname",
    "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name"
  ]
}
Cómo asignar el identificador de nombre a un atributo del usuario
{
  "user_id": [
    "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier",
    "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn",
    "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name"
  ]
}

Pruebe la conexión

Ahora puede probar la conexión.

Configurar la revocación global de tokens

Este tipo de conexión admite un endpoint de revocación global de tokens, que permite a un proveedor de identidad compatible revocar las sesiones de usuario de Auth0, revocar los y activar el cierre de sesión por canal secundario para las aplicaciones que usan un canal secundario seguro. Esta función se puede usar con Universal Logout en Okta Workforce Identity. Para obtener más información e instrucciones de configuración, consulta Universal Logout.

Más información