Se connecter à Microsoft Entra ID avec OpenID Connect
FoxIDs peut être connecté à Microsoft Entra ID avec OpenID Connect et ainsi authentifier les utilisateurs finaux dans un tenant Microsoft Entra ID.
Il est possible de connecter une application Microsoft Entra ID single tenant et multitenant en tant que méthode d’authentification sur FoxIDs via OpenID Connect.
Un cas plus complexe consiste à lire les revendications depuis l’access token.
Si vous configurez des App roles, elles sont retournées dans la revendication roles.
Vous pouvez tester la connexion Microsoft Entra ID avec l’exemple d’application web en ligne (docs de l’exemple) en cliquant sur
Log inpuisMicrosoft Entra ID. Consultez la configuration d’exemple Microsoft Entra ID dans FoxIDs Control : https://control.foxids.com/test-corp Obtenez l’accès en lecture avec l’utilisateurreader@foxids.comet le mot de passegEh#V6kSw, puis sélectionnez l’environnementProductionet l’ongletAuthentication.
Configurer single tenant
Ce chapitre décrit comment configurer une connexion Microsoft Entra ID single tenant avec le flux OpenID Connect Authorization Code et PKCE, qui est le flux OpenID Connect recommandé.
1 - Commencez par créer une méthode d’authentification OpenID Connect dans FoxIDs Control Client
- Ajoutez le nom
- Sélectionnez show advanced
- Sélectionnez le modèle de liaison d’URL avec tildes

Il est maintenant possible de lire Redirect URL et Front channel logout URL.
2 - Allez ensuite sur Azure Portal et créez l’application Microsoft Entra ID
- Ajoutez le nom
- Sélectionnez single tenant
- (C’est une application Web) Ajoutez le
Redirect URLde la méthode d’authentification FoxIDs - Cliquez sur Register
- Copiez l’Application (client) ID
- Copiez le Directory (tenant) ID
- Allez à l’onglet Authentication et ajoutez le
Front channel logout URLde la méthode d’authentification FoxIDs, cliquez sur save - Allez à l’onglet Certificates & secrets et cliquez sur New client secret puis ajoutez le secret
- Optionnellement, utilisez un certificat client au lieu d’un secret
- Copiez la valeur du client secret (pas l’ID du secret)
- Allez à l’onglet Token configuration et cliquez sur Add optional claims. Puis sélectionnez ID (pour ajouter des revendications à l’ID token) et sélectionnez
email,family_name,given_name,ipaddr,preferred_usernameet cliquez deux fois sur Add.
3 - Revenez à la méthode d’authentification FoxIDs dans FoxIDs Control Client
- Ajoutez l’authority, qui est
https://login.microsoftonline.com/{Microsoft Entra ID tenant ID}/v2.0(par ex.https://login.microsoftonline.com/82B2EBAE-5864-4C9F-8F78-40CB172BC7E1/v2.0) - Ajoutez l’ID client Microsoft Entra ID comme custom SP client ID
- Ajoutez les scopes
profileetemail(éventuellement d’autres scopes) - Ajoutez la valeur du client secret Microsoft Entra ID comme client secret
- Optionnellement, sélectionnez show advanced, changez la méthode d’authentification client en
private key JWTet chargez le certificat client
- Optionnellement, sélectionnez show advanced, changez la méthode d’authentification client en
- Sélectionnez utiliser les revendications depuis l’ID token
- Ajoutez les revendications qui seront transférées de la méthode d’authentification vers les enregistrements d’applications. Par ex.
preferred_username,email,name,given_name,family_name,oid,ipaddret éventuellement la revendicationaccess_tokenpour transférer l’access token Microsoft Entra ID aux enregistrements d’applications. - Sélectionnez
Nodans Front channel logout session required - Cliquez sur create
C’est tout, vous avez terminé.
Il est possible de voir les revendications retournées par l’application Microsoft Entra ID dans le journal FoxIDs en modifiant les paramètres de journalisation pour journaliser les revendications et éventuellement journaliser le message complet puis décoder les JWT reçus
La nouvelle méthode d’authentification peut maintenant être sélectionnée comme méthode d’authentification autorisée dans un enregistrement d’application. L’enregistrement d’application peut lire les revendications de la méthode d’authentification. Il est possible d’ajouter la revendication access_token pour inclure l’access token Microsoft Entra ID comme revendication dans l’access token émis.
Configurer multitenant
Ce chapitre décrit comment configurer une connexion Microsoft Entra ID multitenant avec le flux OpenID Connect Authorization Code et PKCE.
La configuration multitenant diffère légèrement de la configuration single tenant.
1 - Le portail Microsoft Entra ID
- Lors de la création de l’application, sélectionnez multitenant
2 - La méthode d’authentification FoxIDs dans FoxIDs Control Client
- Ajoutez l’authority
https://login.microsoftonline.com/common/v2.0 - Sélectionnez edit issuer
- Modifiez l’issuer en
https://login.microsoftonline.com/{Microsoft Entra ID tenant ID}/v2.0(par ex.https://login.microsoftonline.com/82B2EBAE-5864-4C9F-8F78-40CB172BC7E1/v2.0), où vous ajoutez l’ID tenant Microsoft Entra ID. Vous pouvez éventuellement ajouter plusieurs issuers et ainsi faire confiance à plusieurs tenants Azure. Ou vous pouvez utiliser le joker*sans rien d’autre pour accepter tous les issuers, l’issuer accepté est ajouté dans la revendicationauth_method_issuer.
Lire les revendications depuis l’access token
Si vous souhaitez lire les revendications depuis l’access token, vous devez ajouter une application Microsoft Entra ID supplémentaire pour une ressource (API). La première application Microsoft Entra ID est un client.
1 - Dans Azure Portal
- Créez l’application de ressource Microsoft Entra ID
- Exposez un scope depuis l’application ressource et accordez au client l’accès au scope de l’application ressource
2 - Allez ensuite dans FoxIDs Control Client
- Sélectionnez show advanced
- Sélectionnez edit issuer
- Ajoutez l’issuer de l’access token
https://sts.windows.net/{Microsoft Entra ID tenant ID}/(par ex.https://sts.windows.net/82B2EBAE-5864-4C9F-8F78-40CB172BC7E1/), où vous ajoutez l’ID tenant Microsoft Entra ID - Ajoutez le scope de l’application ressource comme scope dans le client de la méthode d’authentification FoxIDs
- Lisez les revendications depuis l’access token en ne sélectionnant pas l’utilisation des revendications depuis l’ID token
Ainsi, l’access token est émis par le même OP (IdP) et est donc accepté.
App roles
Si vous configurez des App roles dans l’application Microsoft Entra ID sous l’onglet App roles.
Les rôles sont retournés dans la revendication roles de l’ID token pour les utilisateurs affectés au rôle.
Si vous lisez les revendications depuis l’access token, les rôles doivent être définis dans l’application Microsoft Entra ID pour une ressource (API).
Dans FoxIDs Control Client
- Les rôles sont retournés dans une revendication
rolesqui peut être changée en revendicationrole(sans le s) en ajoutant une transformation map claims. Écrivezroledans new claim, définissez l’action sur replace claim et écrivezrolesdans select claim - Ajoutez la revendication
roleaux revendications qui seront transférées de la méthode d’authentification vers les enregistrements d’applications
N’oubliez pas d’ajouter également la revendication
roledans l’enregistrement d’application pour qu’elle soit émise vers l’application.