Ici je demande TOUTES les infos sur l’objet ayant le nom de famille (sn: surname) “Pratter” (c’est moi :-))
Je me connecte avec l’utilisateur “postfix” “rangé” dans l’unité d’organisation (OU) “mon-service” de “ma-boite.fr”.
Le script me demande alors le mot de passe de cet utilisateur.
Ce qui peut-être intéressant au niveau de spip :
memberOf: est intéressant pour gérer les droits dans un site SPIP.
L'admin LDAP peut créer des groupes et SPIP autorise certaines opérations
aux niveau des rubriques par exemple.
Il faut déjà qu'on implante ça dans le spip "normal", après on verra comment
gérer le ldap et les groupes.
Ici je demande TOUTES les infos sur l'objet ayant le nom de famille
(sn: surname) "Pratter" (c'est moi :-))
Je me connecte avec l'utilisateur "postfix" "rangé" dans l'unité
d'organisation (OU) "mon-service" de "ma-boite.fr".
Le script me demande alors le mot de passe de cet utilisateur.
Voici une partie du résultat :
[...]
Il n'y a pas d'uid ni d'userPassword, ou c'est toi qui les as masqués ?
Est-ce que tu peux regarder / essayer le code que j'ai intégré hier ?
Il faudra probablement que tu rentres "OU=Alex,OU=Personnes,DC=alex,DC=fr"
comme chemin d'accès à l'installation, et que tu utilises ton CN comme login.
Il n'y a pas d'uid ni d'userPassword, ou c'est toi qui les as masqués ?
Est-ce que tu peux regarder / essayer le code que j'ai intégré hier ?
Il faudra probablement que tu rentres "OU=Alex,OU=Personnes,DC=alex,DC=fr"
comme chemin d'accès à l'installation, et que tu utilises ton CN comme login.
Le problème c'est qu'un annuaire LDAP ça s'utilise un peu comme on veut
(LDAP c'est juste le protocole, il ne définit pas comment la base doit
être structurée, i.e. les schémas à utiliser sont libres).
La plupart des services capables de se connecter à un annuaire LDAP
doivent être configurés de manière assez précise :
- le type de connexion au serveur (anonyme ou authentifié)
(en mode anonyme on ne voit en général pas les
userpassword - ça dépend de la config du serveur LDAP ;
pour tester un mot de passe on tente en général de se
connecter à la base avec le login et le mot de passe)
- la base d'interrogation (base DN)
- le filtre de requete à utiliser
- le/les nom(s) du/des champs contenant les infos pour l'appli
concernée (pour SPIP il faut trouver le login, le nom+prénom
et le mail, par exemple)
Par exemple le CN n'est pas forcément le login (il n'est pas forcément
unique). On peut très bien utiliser un champs 'login' voir un champ
'uid'... C'est un peu l'admin qui choisi, et il peut très bien ne pas
suivre un schéma Posix. Quelle enflure cet admin !
En tout cas, le truc vraiment important c'est le filtre. On fait souvent
des choses du genre filter="&((login=%s)(access=spip))" pour que seules
les personnes disposant d'un champ access=spip puissent avoir accès à
SPIP.
En conclusion je pense qu'à moins de se prendre un peu la tête pour pas
grand chose, il serait peut-être plus simple d'avoir un fichier
ldap-config.php3 quelque part où l'administrateur mettrait les bons
paramètres lors de l'installation (une idée : si LDAP est demandé lors
de l'installation, demander à l'admin d'écrire un ldap-config.php3 à
partir d'un modèle ldap-config-dist.php3 ...?).
Bon, maintenant je ne suis pas Monsieur LDAP, je vous dis juste ce que
j'en connais pour m'être amusé avec