Bonjour
je viens soliciter votre aide car j'ai epuisé toutes les idées que je pouvais avoir.
Mon problème est simple je cherche à recuperer le mot de passe d'une personne dans un annuaire ldap pour pouvoir le comparer avec le mot de passe récupéré depuis une application.
Le mot de passe récupéré de l'application est evidament crypté en MD5 et je recupere le userPassword de l'utilisateur que je veux effectué, sauf que le mot de passe retourné n'est pas celui attendu :
un exemple sera plus parlant
Schéma de l'utilisateur dans l'annuaire :
employeeNumber=T1,ou=techncien,dc=frii,dc=com
ou T1 est l'identifiant de m'on utilisateur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 public void mapFromAttributes(Attributes attrs) throws javax.naming.NamingException { byte[] bb = (byte[])(attrs.get("userPassword").get()); String test = (attrs.get("userPassword").get().toString()); try{ //Cryptage du mot de passe youhou MessageDigest sha = MessageDigest.getInstance ("md5"); sha.reset(); sha.update("youhou".getBytes("utf-8")); byte[] digest = sha.digest(); String passwd2 = new String(Base64.encode(digest)); //mise sur la meme base que le ci-dessus String passwd = new String(Base64.encode(bb)); System.out.println("ICI methode : "+passwd2); System.out.println("ICI methode : "+passwd); }catch (NoSuchAlgorithmException e){System.out.println(e);} catch (UnsupportedEncodingException x){System.out.println(x);} } }
mot de passe MD5 de l'application : Jpt7v27CtaprbubCBLSM8g==
Ce que me retourne l'annuaire : e01ENX1KcHQ3djI3Q3RhcHJidWJDQkxTTThnPT0=
Hors quand je vais dans le phpldapadmin de mon annuaire et que je vérifie le mot de passe il m'affiche ce md5 : Jpt7v27CtaprbubCBLSM8g==
J'ai essayé la recupération de trois maniére differente et j'arrive toujours a ce résultat.
Plus inquietant avant j'interpretais le mot de passe en String sauf que si je regarde le mot de passe sous cette forme celui change a chaque requete ...
Exemple :
Premiére requete : [B@b179c3
Deuxieme requete : [B@f14f7d
Cela fait de nombreuse heure que je suis sur ce problème et mes recherches sur internet ne m'ont apportées aucune solution.
Je vous remercie de l'aide que vous pourrez m'apporter.
Juste une précision la récupération des autres information ( nom prenom etc ... ) fonctionne parfaitement.
Partager