Dans ce tutoriel, je vais vous expliquer comment effectuer une liaison Active Directory (LDAP) avec Keycloak.
La liaison avec l’annuaire Active Directoy va permettre aux utilisateurs de s’authentifier avec leur compte Active Directory à travers Keycloak.
En plus de permettre l’authentification, cela éviter également de devoir créer les utilisateurs dans Keycloak.
Avant de commencer, je vous conseille de créer un compte utilisateur dédié à cette liaison, pour cette liaison j’ai créé un compte utilisateur nommer keycloak :
Configurer la liaison Active Directory avec Keycloak
Aller sur l’interface de Keycloak dans le royaume où vous souhaitez configurer cette liaison.
Dans le menu de navigation cliquer sur User federation 1.
Cliquer sur Add LDAP providers 1.
Dans la partie General options, nommer le connecteur 1 et sélectionner le fournisseur Active Directory 2.
On va maintenant configurer l’adresse du serveur Active Directory, dans la partie Connection and authentification, commencer par entrer l’adresse du Active Directory 1 sous la forme ldap://ip-server ou ldap://fqdn et cliquer sur le bouton Test connection 2.
La connexion au serveur Active Directory est valide.
Il faut maintenant configurer le compte pour la connexion à l’Active Directory, pour cela il faut rentrer la base DN du compte utilisateur 1 et le mot de passe 2. Cliquer suite sur Test authentification 3.
La connexion fonctionne depuis Keycloak vers l’Active Directory.
On va maintenant configurer la parte LDAP searching and updating, ici je souhaite seulement synchroniser les utilisateurs qui se trouve dans OU Utilisateurs.
Voici les paramètres à configurer :
- 1 Edit mode : READ_ONLY
- 2 Users DN : base de DN de l’emplacement pour la synchro des utilisateurs dans l’Active Directory
- 3 Username LDAP attribute : attribut Active Directory qui va être utilisé comme identifiant (sAMAccountName / UserPrincipalName)
Dans la partie Synchronization setting, passer à On Import users 1 et Sync Registrations 2.
La configuration est terminée, cliquer sur le buton Save en bas de page.
La liaison Active Directory est ajoutée 1>.
Synchroniser les utilisateurs de l’Active Directory
Cliquer sur le nom de la connexion 1.
Depuis cette page, on a accès aux paramètres de liaison avec l’Active Directory et à différente actions comme la synchronisation des comptes utilisateurs, cliquer sur Action 1 puis sur Sync all users 2.
On a le résultat de la synchronisation qui s’affiche en haut à droit en notification, on peut voir sur la capture que 4 utilisateurs ont été ajoutées.
Tester la connexion depuis un compte Active Directory
Pour tester la liaison avec le fournisseur, je vais me connecter avec le compte Iron Man à un client sur Keycloak qui est GLPI.
Sur la capture ci-dessous, je suis connecté à GLPI avec IR (Iron Man).
Sur Keycloak, dans les sessions du client, on peut voir la session de l’utilisateur.
Gestion des utilisateurs synchronisé dans Keycloak depuis l’Active Directory
Si on va dans la liste des utilisateurs, cette liste est vide comme on peut le voir :
SI on fait une recherche, le résultat comprend les utilisateurs qui sont dans l’annuaire Active Directory.
En cliquant sur l’utilisateur on accède aux détails :
Vous savez maintenant comme ajouter un annuaire Active Directory comme fournisseur dans Keycloak.