Accès LDAP avec identification
Bonjour,
J'ai écris précédemment en PHP (pour faire plaisir à mon Chef :aie:) 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 :ptdr:) :
Code:
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 ); |
Voulant porter ce script vers le langage JAVA (autant faire bien ;)), j'arrive à pointer sur l'annuaire avec le code suivant :
Code:
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); |
... 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:
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 :
Code:
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); |
Doù peut bien venir le problème ? Merci pour votre aide.
A+ ;)