-
[LDAP] connexion LDAP
Je travaille sur la connexion à un annuaire LDAP via Java.
J'utilise pour cela le package netscape.ldap, et tout fonctionne correctement, jusqu'à ce que je me mette aux connexions sécurisées.
Je dois obligatoirement sécuriser tous mes échanges, et je n'ai besoin que de lire des informations sur le serveur LDAP utilisé.
La connexion s'effectue correctement, mais tout plante dès l'authentification, malgré des identifiants corrects...
Quelqu'un a peut etre deja eu à résoudre ce genre de problème...?
[Modéré par Didier] : ajout de tag dans le titre - Les règles du forum Java
-
N'ayant pas eu de réponse, je réduis un peu le problème :
Comment établir une connexion sécurisée à un annuaire LDAP ?
Peut être que le package java que j'utilise n'est pas adapté...
-
Retournons plutot au point de départ, c'est peut être de là que vient mon problème :
Quelle bibliothèque utiliser pour se connecter à un annuaire LDAP ?
Et dans quel package je peux la trouver ?
-
J'ai du faire une connexion LDAP récemment mais non sécurisée. J'ai utilisé le package de netscape aussi.
Il faut faire attention dans ton login à ne pas mettre juste le pseudo mais bien pseudo@DOMAIN
Par exemple si ton domaine c'est corporation.net et ton pseudo abertaud faut mettre abertaud@corporation.net
Maintenant si ça doit être sécurisé, je ne sais pas trop. Peut-être que tu pourrais faire un utilisateur lambda dans ton LDAP (une sorte d'invité) pour permettre à ton applic de se connecter et de ne pas le faire de manière sécurisé.
-
Merci pour ta réponse
Quand tu parles ce DOMAIN, tu veux parler de la base (genre ou=Security,dc=umich,dc=edu) ?
Ou tu parles d'autre chose ?
-
Dans ton cas le domaine serait umich.edu.
L'attribut dc veut dire domainComponent et donc en général tu en as 2 pour faire ABCDEF.COM
-
Le truc c'est que les connexions se font en mode anonyme.
Quand j'utilise le logiciel freeware LDAP Browser v2.6, cette authentification anonyme fonctionne dans les deux mode (sécurisé ou non sécurisé)
Par contre, mon appli ne fonctionne qu'en mode non sécurisé.
Dès que je teste le passage par le port 636, je peux faire :
LDAPConnection ldap = new LDAPConnection();
ldap.connect("ldap.itd.umich.edu",636);
et la ligne suivante renvoie une exception :
ldap.authenticate(3,login,passwd);
Pourtant dès que je change le 636 en 689, tout fonctionne correctement
-
-
C'est peut-être ça qui foire alors. Il faut peut-être passer par un compte anonyme.
Moi j'ai aussi eu le cas du port qui n'était pas correct. J'ai du passer sur le port 3268, va-t'en savoir pourquoi. C'est peut-être pcq je me connecte sur un Active Directory. De plus, je n'ai jamais su faire une connexion anonyme je pense. J'étais obligé de passer par un compte existant mais ça, ça dépend de la configuration de ton annuaire.
-
Mais je pensais que de filer des identifiants vide ("" et non null) permettait le passage par un compte anonyme...
C'est pas comme ca que cela fonctionne ?
-
La je ne serais pas trop te répondre parce que je pense que ca dépend de l'implémentation LDAP choisie. Par exemple, Active Directory, je ne crois pas que ca marche, par contre OpenLDAP bien.
Essaye avec le compte "anonymous" et pareil pour le mot de passe.
-
Mauvaise nouvelle : les identifiant ("anonymous","anonymous") sont incorrects ; ils ne permmettent pas la connexion à l'annuaire LDAP.
La seule chose qui permet l'acces en mode non sécurisé (port 389), c'est le login vide (""), couplé avec à priori (d'apres mes tests) n'importe quel mot de passe non nul.
Mais Dès que je passe par le port 636, l'authentification échoue...
-
Bon ok, SLDAP c'est un peu la misère, mais j'ai pas le choix, chuis obligé de sécuriser mes echanges.
Un petit effort, j'implore votre aide ;-)
-
Dernière journée de tentative.
Quel package utiliser pour des connexions LDAP sécurisées ?
-
tu as essayé avec jndi ?
il y a un tutoriel assez complet sur
http://java.sun.com/products/jndi/tutorial
notamment sur le chiffrement SSL des messages
-
J'ai contourné le probleme en utilisant des echanges intranet. DU coup, plus besoin de sécuriser.
Par contre, JNDI est de loin une bien meilleure solution que le package de netscape que j'avais utilisé au départ.
Pour les besoins que j'en ai eu en tout cas.
Merci à tous ceux qui se sont penchés sur le sujet