Bonjour Alexandre,

Effectivement, la méthode n'est pas optimale. L'idée d'une authentification LDAP est que c'est le serveur LDAP qui fait le calcul et la comparaison des hash.
Pour cela, l'enchaînement à suivre est du style :
1. Récupérer le login/mdp du user
2. Se connecter au LDAP avec le compte d'administration pour trouver le DN de l'utilisateur grâce à son login. Si la recherche échoue, c'est que le login/mdp du user est incorrect
3. Se déconnecter du LDAP
4. Se connecter au LDAP avec le DN de l'utilisateur précédemment trouvé et le mdp du user. Si la connexion échoue, c'est que le couple login/mdp du user est incorrect.

Grâce à cette méthode tu es indépendant de l'algo de hash utilisé par ton LDAP et tu n'as pas besoin de récupérer l'attribut userPassword.

Bon courage à toi!



Le 9 septembre 2014 16:51, Alexandre <infos@opendoc.net> a écrit :
Bonjour à tous,

je me permets de vous solliciter, j'essaie de réaliser une "authentification" ldap avant de lancer des traitements dans un script (en bash). Je n'utilise peut-être pas la bonne technique, mais voilà ce que je souhaiterai faire :

1. faire saisir login/passord au user
2. récupérer les infos sur le ldap
3. via un traitement, être capable de pouvoir comparer les 2 hash (si c'est possible)

La saisie c'est pas bien compliqué, ensuite je vais chercher les infos :

---
ldapsearch -D "cn=admin,dc=entreprisetartempion,dc=fr" -w password -p 389 -h serveurldap -b "dc=entreprisetartempion,dc=fr" -s sub "uid=jeanclaudedusse" -LLL userPassword

dn: cn=jean claude dusse,ou=people,dc=entreprisetartempion,dc=fr
userPassword:: e0NSWVBUfSQxJFhiREZKYXRoJHRrc2xEdHNWaTRzaVUvb0xBVkxISDE=
---

un petit coup de décode en base 64:

---
echo 'e0NSWVBUfSQxJFhiREZKYXRoJHRrc2xEdHNWaTRzaVUvb0xBVkxISDE=' |base64 -d; echo
{CRYPT}$1$XbDFJath$tkslDtsVi4siU/oLAVLHH1
---

Je suis content mais je n'arrive a générer le hash de mon password pour pouvoir le comparer.

Ca sent la question stupide, mais vu que je suis bloqué, je me permets de vous déranger '')

Alex.
_______________________________________________
Liste de diffusion du FRsAG
http://www.frsag.org/



--
Florent Bacci