|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Étudiant Inscription : juillet 2011 Messages : 3 ![]() |
Bonjour,
dans le cadre de mon stage je dois effectuer une duplication d'un annuaire ldap vers un autre avec quelques modifications au passage. Donc j'ai un tldapinput à partir duquel je recupere les données à traiter, ensuite j'ai un tmap pour les modifications à faire et j'ai enfin un tldapoutput pour remplir les données vers un nouveau annuaire ldap. mon probleme est que je n'arrive pas à extraire à partir du ldap source le userPassword(il est crypté en sha), donc je sais pas comment proceder afin de copier le bon mot de passe( c'est à dire le mot de passe non crypté) vers le ldap destinaire et ne pas copier un mot de passe crypté. Si quelqu'un a une idée je suis preneur, car là je bloque depuis ce matin. merci d'avance. |
|
|
00
|
|
|
#2 |
|
Invité de passage
![]() Étudiant Inscription : juillet 2011 Messages : 3 ![]() |
salut,
j'ai reussi à resoudre mon probleme. en effet avec talend le mot de passe "userPassword" d'une entrée d'un ldap est considérée comme un string, alors qu'en realité le serveur ldap retourne un byte[] lorsqu'on tente de le recuperer avec un tldapinput. De ce fait au lieu d'avoir le mot de passe en sortie on à plutot l'adresse en memoire (par exemple B@145254). Donc comme je pouvais pas modifier le code fourni par talend, j'ai fait une routine qui se connecte à mon annuaire puis recupere le userPassword en byte[] avant de le convertir en string; c'est ce string que j'utilise dans mon tmap pour remplir l'annuaire cible. voici un bout du code que j'ai fait et cela marche nickel ... byte[] motDePasse = (byte[])(attrs.get("userPassword").get()); String password= new String(motDePasse,"UTF-8"); return password; ... merci |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Étudiant Inscription : juillet 2011 Messages : 3 ![]() |
salut,
Sur le post precedent le mot de passe que je rempli est celui crypté bien sur et non le decrypté( le haschage en sha n'est pas censé etre reversible). Par contre en recuperant le mot de passe crypté sous forme de string que l'on rempli dan le ldap cible et non pas l'adresse d'un byte[] comme je l'avais au début ( exemple :B@142578), on arrive à avoir en fin de compte le meme mot de passe dans les deux annuaires. il suffit de le verifier avec un browser de ldap en tapant le mot de passe et en faisant un verify. merci |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com