Le principe général est le suivant :
En identification ldap, postgres délègue à l'annuaire l'identification (et que l'identification). Les droits restent gérés dans postgres, y compris les dates d'expiration des comptes, etc.
Pour configurer ça, il faut modifier le fichier /etc/postgresql/9.x/main/pg_hba.conf. La configuration est lue dans l'ordre, cela veut dire que dès qu'une condition est remplie, la lecture du fichier s'arrête.
Pour que l'identification fonctionne comme décrite précédemment, on devrait donc avoir :
# "local" is for Unix domain socket connections only local all all peer # IPv4 local connections:host all all 127.0.0.1/32 md5# Connexions pour les serveurs webhost all all adresse_serveur1/32 md5 host all all adresse_serveur2/32 md5# Connexions pour les applis specifiques host base_de_donnees login_specifique [plage_adresse_CIDR|adresse_ip|0.0.0.0/0] md5# Connexions ldap pour les autres usageshost all all [plage_adresse_CIDR|adresse_ip|0.0.0.0/0] ldap ldapserver=ldap.societe.com ldapprefix="uid=" ldapsuffix=",ou=people,o=societe,c=fr" ldaptls=1Il est conseillé d'inhiber l'identification IPV6, sinon cela peut poser des problèmes si le protocole est prioritaire dans une machine et que tout ne soit pas configuré “tip-top”.
Un reload du service postgres suffit, en principe, pour faire prendre en compte la config.