Método de autenticación OpenID Connect
Un método de autenticación OpenID Connect de FoxIDs conecta FoxIDs a un OpenID Provider (OP) o Identity Provider (IdP) externo. El proveedor externo autentica al usuario, mientras FoxIDs actúa como Relying Party (RP) y pone la identidad resultante a disposición de los registros de aplicaciones seleccionados.
Se pueden configurar varios métodos de autenticación OpenID Connect y seleccionarlos en los registros de aplicaciones. Las funciones principales incluyen discovery y actualizaciones automáticas de claves de firma, Authorization Code Flow con PKCE, autenticación de cliente, fuentes de reclamaciones configurables, reenvío y transformación de reclamaciones.
Configuración
En FoxIDs Control:
- Selecciona el entorno que debe confiar en el proveedor externo.
- Abre Authentication y haz clic en Add authentication.
- Selecciona Connect to OpenID Provider. Este tipo estándar se muestra sin activar Show all options.
- Configura el proveedor y haz clic en Create.

Ejemplo de Google
Este ejemplo se conecta a Google con la siguiente authority:
https://accounts.google.com
Configura el método de autenticación con:
- Un Name descriptivo.
- La authority de Google en Authority.
- Los scopes
profileyemail. FoxIDs incluye automáticamente el scope obligatorioopenid. - Use PKCE activado.
- El client secret emitido por Google.
*en Forward claims para reenviar todas las reclamaciones recibidas.- Read claims from the ID token instead of the access token activado en Show advanced.
Los scopes necesarios y la necesidad de scopes adicionales varían entre proveedores. Configura únicamente los scopes que requiera el proveedor externo y los necesarios para la información del usuario que utilicen tus aplicaciones.
Copia la Redirect URL que muestra FoxIDs y regístrala como redirect URI autorizada en el proveedor externo. Google también emite un client ID para el cliente OAuth. Activa Show advanced e introduce este valor en Optional custom SP client ID. Si no se configura un client ID personalizado, FoxIDs usa el nombre del método de autenticación como client ID.

Discovery y actualizaciones automáticas
Al crear el método de autenticación, FoxIDs lee el documento OpenID Connect discovery del proveedor en:
https://accounts.google.com/.well-known/openid-configuration
FoxIDs lee el issuer, las claves de firma y los endpoints compatibles, incluidos los endpoints authorization, token, UserInfo y end-session cuando están presentes. Vuelve a abrir el método de autenticación para revisar el issuer, las claves y los endpoints descubiertos.

FoxIDs vuelve a leer discovery periódicamente y aplica futuros cambios en los endpoints y las claves de firma. Si discovery continúa sin estar disponible y las actualizaciones automáticas se detienen, actualiza el método de autenticación en FoxIDs Control o mediante la Control API para reiniciarlas. El intervalo de actualización puede cambiarse en Show advanced.
FoxIDs Control crea métodos de autenticación actualizados automáticamente a partir de discovery. La Control API también admite configuraciones mantenidas manualmente en las que el issuer, las claves y los endpoints se proporcionan directamente y no se llama a discovery.
Reclamaciones y reenvío
De forma predeterminada, FoxIDs valida el ID token y lee las reclamaciones del usuario desde el access token externo. En Show advanced, la fuente de reclamaciones puede cambiarse por:
- Read claims from the ID token instead of the access token.
- Read claims from the UserInfo Endpoint instead of the access token or ID token.
La opción UserInfo usa el access token externo para llamar al endpoint UserInfo descubierto. Las dos alternativas son mutuamente excluyentes en FoxIDs Control.

El método de autenticación reenvía las reclamaciones predeterminadas y las indicadas en Forward claims a los registros de aplicaciones. Añade * para reenviar todas las reclamaciones recibidas; este es el valor predeterminado. Las reclamaciones transferidas de forma predeterminada son sub, sid, acr y amr.
Añade access_token para que el access token externo esté disponible en los registros de aplicaciones. Si el proveedor externo devuelve un refresh token, añade también refresh_token para reenviarlo. Normalmente, un refresh token solo se devuelve al usar Authorization Code Flow y el scope específico del proveedor necesario para el acceso sin conexión, como offline_access.
Las reclamaciones se pueden seleccionar, renombrar, combinar o modificar de otras formas mediante transformaciones y tareas de reclamaciones. Una reclamación creada por una transformación permanece local en el método de autenticación salvo que se incluya en Forward claims o se utilice *.
Autenticación de cliente y PKCE
El método de autenticación utiliza Authorization Code Flow con PKCE de forma predeterminada. El método predeterminado de autenticación de cliente en el endpoint token es client secret post.
Activa Show advanced para seleccionar client secret basic o private key JWT. Con private key JWT, importa el certificado de cliente después de crear el método de autenticación y registra la clave pública correspondiente en el proveedor externo.

El proveedor determina qué métodos de autenticación de cliente y opciones de PKCE admite. Utiliza la configuración más sólida compatible con ambas partes.
Perfiles
Los perfiles permiten que un método de autenticación OpenID Connect ofrezca variantes alternativas de inicio de sesión sin duplicar toda la configuración del proveedor. Un perfil conserva la configuración base del método de autenticación y puede:
- Añadir scopes específicos del proveedor a los scopes configurados en el método de autenticación.
- Añadir parámetros a la solicitud authorization o sustituir parámetros adicionales con el mismo nombre configurados en el método de autenticación.
Abre el método de autenticación, activa Show advanced, selecciona la pestaña Profiles y haz clic en Add Profile. Asigna al perfil un Name descriptivo y un Technical name único y, a continuación, configura los scopes y parámetros adicionales.
El ejemplo siguiente añade prompt=login, que solicita al OpenID Provider externo que vuelva a autenticar al usuario. El valor custom_scope muestra dónde se puede añadir un scope específico del proveedor. Sustitúyelo por un scope compatible con el proveedor u omítelo si no se necesita ningún scope adicional.

En un registro de aplicación, el propio método de autenticación y cada perfil están disponibles como selecciones independientes. Puedes permitir el método base, uno o varios perfiles, o ambos. Cuando se selecciona el método base, no se aplica ninguna configuración de perfil. Cuando se selecciona un perfil, FoxIDs combina sus scopes y parámetros adicionales con la configuración base.
Configuración avanzada del proveedor
Las siguientes opciones están disponibles en Show advanced:
- Optional custom SP client ID sustituye el nombre del método de autenticación utilizado como client ID. Úsalo cuando el proveedor emita o requiera un client ID específico.
- Edit issuers sustituye el issuer obtenido mediante discovery por una lista explícita. Esto admite proveedores que emiten tokens desde varios issuers con las mismas claves de firma.
*acepta cualquier issuer y solo debe utilizarse cuando esa confianza sea intencionada. El issuer aceptado se añade a la reclamaciónauth_method_issuer. - Party binding pattern cambia el formato de la URL de callback de FoxIDs para la interoperabilidad con el proveedor. FoxIDs usa de forma predeterminada el patrón de paréntesis
.../(auth-method)/...; también se admiten el patrón de virgulillas.../~auth-method~/...y el patrón de puntos.../.auth-method./.... - Response type, response mode, el intervalo de actualización de discovery y la configuración de cierre de sesión y confianza proporcionan control adicional del protocolo.
El issuer y las claves de firma que se muestran después de la creación permanecen en modo de solo lectura mientras se utiliza el issuer descubierto. Activa Edit issuers únicamente cuando el proveedor requiera una configuración de issuer diferente de discovery.
Guías prácticas
- Conectar IdentityServer
- Conectar Microsoft Entra ID
- Conectar Azure AD B2C
- Conectar Amazon Cognito
- Conectar Google
- Conectar Facebook
- Conectar Signicat
- Conectar Nets eID Broker