Conectar a Nets eID Broker con OpenID Connect
FoxIDs puede conectarse a Nets eID Broker con OpenID Connect y así autenticar usuarios finales con MitID y otras credenciales compatibles con Nets eID Broker.
Cómo configurar Nets eID Broker en
- entorno de prueba usando Nets eID Broker test
- entorno de producción usando el portal de administración de Nets eID Broker
Es posible solicitar el número CPR solo una vez en el primer inicio de sesión y no en los siguientes.
Puede probar el login de Nets eID Broker test con la aplicación web de ejemplo en línea (docs del ejemplo) haciendo clic en
Log iny luegoNets eID Broker TEST.
Consulte la configuración de ejemplo de Nets eID Broker en FoxIDs Control: https://control.foxids.com/test-corp
Obtenga acceso de lectura con el usuarioreader@foxids.comy la contraseñagEh#V6kSw, luego seleccione el entornoProductiony la pestañaAuthentication.
Configurar Nets eID Broker test como OpenID Provider (OP)
Esta guía describe cómo conectar un método de autenticación FoxIDs a Nets eID Broker test en el entorno de prueba.
Se aceptan todos los URI de redirección y por lo tanto todos los clientes pueden conectarse sin registro previo.
Esta conexión utiliza el flujo OpenID Connect Authorization Code con PKCE, que es el flujo OpenID Connect recomendado.
Crear un método de autenticación OpenID Connect en FoxIDs Control Client
- Agregue el Name
- Agregue la authority de prueba de Nets eID Broker
https://pp.netseidbroker.dk/open el campo Authority - En la lista Scopes agregue
mitidpara usar MitID y opcionalmente el scopessnpara solicitar el número CPR (considere solicitar el número CPR solo una vez) - Seleccione Show advanced
- Opcionalmente agregue un Additionally parameter con el nombre
idp_valuesy p. ej. el valormitidpara mostrar el IdP MitID o p. ej. el valormitid_erhvervpara mostrar el IdP MitID Erhverv. - Agregue el secreto de prueba de Nets eID Broker
rnlguc7CM/wmGSti4KCgCkWBQnfslYr0lMDZeIFsCJweROTROy2ajEigEaPQFl76Py6AVWnhYofl/0oiSAgdtg==en el campo Client secret - Agregue el client id de prueba de Nets eID Broker
0a775a87-878c-4b83-abe3-ee29c720c3e7en el campo Optional customer SP client ID - Seleccione Read claims from the UserInfo Endpoint instead of the access token or ID token
- Haga clic en Create
Eso es todo, ya terminó.
El nuevo método de autenticación ahora se puede seleccionar como método de autenticación permitido en un registro de aplicación.
La aplicación puede leer las claims del método de autenticación. Puede agregar opcionalmente un*en la lista Issue claims del registro de aplicación para emitir todas las claims a su aplicación. O definir un scope para emitir claims.
Configurar Nets eID Broker como OpenID Provider (OP)
Esta guía describe cómo conectar un método de autenticación FoxIDs a Nets eID Broker en el entorno de producción.
Nets le concede acceso al portal de administración de Nets eID Broker. La documentación de Nets eID Broker.
Esta conexión utiliza el flujo OpenID Connect Authorization Code con PKCE, que es el flujo OpenID Connect recomendado.
1 - Comience creando un cliente API en el portal de administración de Nets eID Broker
- Navegue a Services & Clients
- Seleccione el Service Provider
- Cree o seleccione un Service
- Haga clic en Add new client
- Agregue un nombre de cliente
- Seleccione Web
- Haga clic en Create
- Copie el Client ID
- Haga clic en Create new Client Secret
- Seleccione Based on password
- Agregue un nombre para el nuevo client secret
- Haga clic en Generate on server
- Copie el Secret
- Haga clic en la pestaña IDP
- Seleccione MitID y haga clic en
Add to pre-selected login options, opcionalmente seleccione otros - Haga clic en la pestaña Advanced
- Establezca PKCE en Active
2 - Luego cree un método de autenticación OpenID Connect en FoxIDs Control Client
- Agregue el Name
- Agregue la authority de Nets eID Broker
https://netseidbroker.dk/open el campo Authority - Copie las dos URL:
Redirect URLyPost logout redirect URL - En la lista Scopes agregue
mitidpara usar MitID y opcionalmente el scopessnpara solicitar el número CPR (considere solicitar el número CPR solo una vez) - Seleccione Show advanced
- Opcionalmente agregue un Additionally parameter con el nombre
idp_valuesy p. ej. el valormitidpara mostrar el IdP MitID o p. ej. el valormitid_erhvervpara mostrar el IdP MitID Erhverv. - Agregue el secreto de Nets eID Broker en el campo Client secret
- Agregue el client id de Nets eID Broker en el campo Optional customer SP client ID
- Seleccione Read claims from the UserInfo Endpoint instead of the access token or ID token
- Haga clic en Create
3 - Regrese al portal de administración de Nets eID Broker
- Haga clic en la pestaña Endpoints
- Agregue las dos URL del cliente del método de autenticación FoxIDs:
Redirect URLyPost logout redirect URLen los camposLogin redirectsyLogout redirects.
Eso es todo, ya terminó.
El nuevo método de autenticación ahora se puede seleccionar como método de autenticación permitido en un registro de aplicación.
La aplicación puede leer las claims del método de autenticación. Puede agregar opcionalmente un*en la lista Issue claims del registro de aplicación para emitir todas las claims a su aplicación. O definir un scope para emitir claims.
Solicitar el número CPR solo una vez
Es posible permitir que FoxIDs guarde el número CPR del usuario en usuarios externos. Entonces a los usuarios solo se les solicita su CPR la primera vez que inician sesión.
Para que esto ocurra configuraremos el método de autenticación Nets eID Broker para iniciar sesión sin solicitar un número CPR y crear un perfil que sí solicite el número CPR.
En el primer inicio de sesión FoxIDs iniciará posteriormente la autenticación con el perfil para obtener el número CPR y guardar la relación sub del usuario con el número CPR en una claim en un usuario externo.
En el método de autenticación Nets eID Broker.
A) Primero cree un perfil
- Incluya solo el scope
mitiden la lista Scopes - Seleccione Show advanced
- Seleccione la pestaña Profiles
- Haga clic en Add Profile
- Agregue un Name p. ej.,
Request CPR - Agregue
ssnen la lista Scopes - Haga clic en Update - Imported before you continue!

b) Luego comience a crear usuarios externos
- Seleccione la pestaña Create External Users
- Agregue
suben el campo Link claim type - Seleccione Yes en Optional create/provision external users automatically
- Seleccione Yes en Overwrite received claims

c) Configurar transformaciones de claims
- En la sección Create user claim transforms en la pestaña Create External Users
- Agregue las claims
mitid.has_cprydk.cpren Include claims from authentication method - Haga clic en Add claim transform y haga clic en Match claim
- En la transformación de claim
- Agregue
_local:cpr_existen el campo New claim - Seleccione Add claim, if not match en Action
- Agregue
dk.cpren el campo Select claim - Agregue
falseen el campo New value
- Haga clic en Add claim transform y haga clic en Concatenate
- En la transformación de claim
- Agregue
_local:request_cpren el campo New claim - Seleccione Add claim en Action
- Agregue
mitid.has_cpry_local:cpr_existen la lista Concatenate claims - Agregue
[{0},{1}]en el campo Concatenate format string
- Haga clic en Add claim task y haga clic en Match claim and value and start authentication
- En la transformación de claim
- Seleccione If match en Action
- Agregue
_local:request_cpren el campo Select claim - Agregue
[true,false]en el campo Match value - Seleccione el perfil
Request CPRde este método de autenticación en Authentication method
- Haga clic en Add claim transform y haga clic en Match claim
- En la transformación de claim
- Seleccione Remove claim en Action
- Agregue
mitid.has_cpren el campo Remove claim
- Haga clic en Update

Scope and claims
Puede crear opcionalmente un scope en el registro de aplicación con las claims de Nets eID Broker como Voluntary claims. El scope puede usarse luego por un cliente OpenID Connect u otro método de autenticación FoxIDs actuando como cliente OpenID Connect.
El nombre del scope puede ser, por ejemplo, nets_eid_broker
Las claims más utilizadas de Nets eID Broker:
idpidp_identity_idloamitid.uuidmitid.has_cprdk.cprmitid.agemitid.date_of_birthmitid.identity_namemitid.transaction_id