# serveur_openldap Annuaire interne OpenLDAP (slapd Debian), socle d'identité pour `client_ldap` et fédération applicative (Keycloak). ## Rôle - Préconfigure slapd via **debconf** (installation non interactive) : domaine, organisation, backend MDB. - Installe `slapd`, `ldap-utils`, `python3-ldap`. - Mot de passe admin depuis **Vault**. - Crée les unités organisationnelles de base (`ou=people`, `ou=groups`). ## Identité - Domaine `chezlepro.internal` → base DN **`dc=chezlepro,dc=internal`** (dérivée). - Admin : `cn=admin,dc=chezlepro,dc=internal`. ## Secret requis (Vault) ```yaml serveur_openldap_admin_password: "{{ vault_openldap_admin }}" ``` À placer dans un `group_vars/serveur_openldap/vault.yml` chiffré. Sans lui, le rôle refuse de s'exécuter (assertion explicite). ## Variables principales | Variable | Défaut | Rôle | | --- | --- | --- | | `serveur_openldap_domaine` | `chezlepro.internal` | Domaine → base DN | | `serveur_openldap_organisation` | `Chezlepro Inc` | Organisation | | `serveur_openldap_ou` | `[people, groups]` | OU de base créées | ## Notes / limites - Le préseed debconf configure slapd à l'**installation initiale**. Reconfigurer un slapd déjà installé (changer domaine/mot de passe) nécessite `dpkg-reconfigure slapd` manuel (non automatisé ici pour éviter une purge accidentelle de la base). - TLS (LDAPS) : hors périmètre du socle — viendra avec les certificats de `serveur_step_ca`. - Entrées utilisateurs/groupes : gérées ailleurs (identité / `client_ldap`). ## Prérequis - Collection `community.general` (`ldap_entry`) + `python3-ldap` sur la cible.