Bonjour,
J'ai écris précédemment en PHP (pour faire plaisir à mon Chef) un script qui lit l'annuaire de l'entreprise.
Les paramètres de connexion sont de cette forme (j'ai changé les identifiants dans l'exemple) :
Voulant porter ce script vers le langage JAVA (autant faire bien
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 $rootLogin = "admin"; $rootPassword = "toto"; $ldapServer = "192.168.2.15"; $ldapPort = 389; $dcName == "entreprise"; $rootDn = "cn=$rootLogin,ou=Users,dc=$dcName,dc=org"; $ds = ldap_connect ( $ldapServer, $ldapPort );), j'arrive à pointer sur l'annuaire avec le code suivant :
... par contre j'obtiens l'exception "javax.naming.AuthenticationException: [LDAP: error code 49 - Invalid Credentials]" dès que j'essaie de m'identifier auprès de l'annuaire LDAP avec ce code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Hashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); env.put(Context.PROVIDER_URL,"ldap://192.168.2.15:389"); DirContext dircontext = new InitialDirContext(env);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Hashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); env.put(Context.PROVIDER_URL,"ldap://192.168.2.15:389"); env.put(Context.SECURITY_AUTHENTICATION, "simple"); env.put(Context.SECURITY_PRINCIPAL, "cn=admin,ou=Users,dc=entreprise,dc=org"); env.put(Context.SECURITY_CREDENTIALS, "toto"); DirContext dircontext = new InitialDirContext(env);
J'ai aussi essayé l'exemple d'Oracle et la même exception s'affiche :
Doù peut bien venir le problème ? Merci pour votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Hashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); env.put(Context.PROVIDER_URL, "ldap://192.168.2.15:389/o=ENTREPRISE"); // Authenticate as S. User and password "mysecret" env.put(Context.SECURITY_AUTHENTICATION, "simple"); env.put(Context.SECURITY_PRINCIPAL, "cn=admin. User, ou=Users, o=ENTREPRISE"); env.put(Context.SECURITY_CREDENTIALS, "toto"); // Create the initial context DirContext ctx = new InitialDirContext(env);
A+![]()
Partager