Bonjour,

On Tue, 09 Sep 2014 16:51:32 +0200
Alexandre <in...@opendoc.net> wrote:
>| 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 '')

La façon correct d'authentifier un utilisateur, à mon sens est de faire un
ldap_bind avec son dn et son mdp en clair, à charge pour ldap de répondre OK
ou NOK.

Sinon, pour faire exactement ce que tu veux, il faut que tu te serves du
prefix ({CRYPT}), du salt (XbDFJath) et de l'info sur l'encodage (le $1$ au
debut) pour savoir comment hasher ton mdp en clair.

Quelques liens la dessus:
http://www.splitbrain.org/blog/2008-07/28-working_with_password_hashes_in_php
http://wiki2.dovecot.org/Authentication/PasswordSchemes


Manuel 

--
______________________________________________________________________
Manuel Guesdon - OXYMIUM
_______________________________________________
Liste de diffusion du FRsAG
http://www.frsag.org/

Répondre à