Fédération d’utilisateurs LDAP / Active Directory¶
Pourquoi fédérer ?¶
La fédération LDAP permet à Keycloak d’utiliser un annuaire existant comme source d’utilisateurs, notamment LDAP ou Microsoft Active Directory. Elle évite de dupliquer les mots de passe et facilite l’administration centralisée. Selon le mode configuré, Keycloak peut lire les comptes à la demande, synchroniser des données, ou importer les utilisateurs dans sa base. Les détails (édition, options et libellés d’interface) varient selon la version.
La fédération n’est pas une sauvegarde de l’annuaire ni une migration automatique de toutes ses politiques. Il faut valider la connectivité, la stratégie de compte, l’usage TLS, les droits de lecture et la compatibilité des attributs.
Comment fonctionne la connexion ?¶
Lors d’une connexion, Keycloak retrouve le compte correspondant dans le fournisseur, vérifie le mot de passe au moyen de l’intégration configurée, puis applique ses propres flux, politiques et attributions. Les mots de passe LDAP ne sont normalement pas copiés comme des mots de passe lisibles vers Keycloak. Si une configuration permet le stockage/import de compte, il faut vérifier précisément les implications et le comportement d’édition.
sequenceDiagram
actor U as Utilisateur
participant B as Navigateur
participant K as Keycloak
participant L as LDAP / Active Directory
U->>B: Saisit son identifiant et son mot de passe
B->>K: Soumet le formulaire d'authentification
K->>K: Recherche le compte via fournisseur LDAP
K->>L: Recherche d'utilisateur (compte de liaison si configuré)
L-->>K: DN et attributs correspondants
K->>L: Vérification des identifiants selon le mode configuré
L-->>K: Résultat d'authentification
K->>K: Résout groupes, rôles et mappers, puis applique le flux
K-->>B: Session et retour OIDC / SAML si authentification réussie
Synchronisation, mappers et groupes¶
- Import / synchronisation : les opérations de synchronisation peuvent importer ou mettre à jour des comptes et attributs dans Keycloak. Une synchronisation périodique peut être activée ; les noms précis des actions dépendent de la version. Définir quelle source fait autorité pour chaque attribut.
- Mappers LDAP : associent les attributs et groupes LDAP à des champs Keycloak. Vérifier les noms d’attribut, le DN de base, filtres, types et règles de lecture/écriture.
- Groupes : un mapper peut refléter l’appartenance à des groupes. Limiter les groupes ou la branche synchronisés si l’annuaire est vaste. Tester les changements et suppressions.
- Comptes de liaison : si utilisés, ils doivent avoir des droits minimaux. Les secrets de liaison sont sensibles.
Mise en place prudente¶
Dans la console d’administration du realm, ajouter un fournisseur LDAP, renseigner l’hôte et le DN de base, définir l’authentification/bind appropriée, puis tester la connexion et la recherche avant toute synchronisation importante. En production, protéger LDAP avec TLS (LDAPS ou StartTLS selon l’architecture et les options prises en charge), valider les certificats, contrôler les ports réseau et éviter l’envoi d’identifiants en clair. Utiliser un environnement de préproduction et une sauvegarde avant import massif.
Après la configuration, tester au moins : compte existant et inexistant, mot de passe invalide, compte désactivé, attribut manquant, appartenance à un groupe, panne de l’annuaire, et modification/suppression d’un utilisateur. Vérifier les journaux Keycloak sans y exposer des secrets. Pour les comptes authentifiés par un IdP distant plutôt que par annuaire, lire courtage d’identité.