web-dev-qa-db-fra.com

Un moyen facile de tester les informations d'identification d'un utilisateur LDAP

Existe-t-il un moyen simple de tester les informations d'identification d'un utilisateur par rapport à une instance LDAP? Je sais comment écrire un programme Java qui prend le "DN utilisateur" et le mot de passe, et le compare à l'instance LDAP. Cependant, y a-t-il un moyen plus facile? En particulier, une méthode qui non seulement authentifie l'utilisateur, mais répertorie également tous les rôles de l'utilisateur.

52
user1888243

ldapwhoami -vvv -h <hostname> -p <port> -D <binddn> -x -w <passwd>, où binddn est le nom distinctif de la personne dont vous authentifiez les informations d'identification.

En cas de succès (informations d'identification valides), vous obtenez Result: Success (0). En cas d'échec, vous obtenez ldap_bind: Invalid credentials (49).

63
Yuvika

Utilisez ldapsearch pour vous authentifier. La version opends peut être utilisée comme suit:

ldapsearch --hostname hostname --port port \
    --bindDN userdn --bindPassword password \
    --baseDN '' --searchScope base 'objectClass=*' 1.1
13
Terry Gardner

Vous devriez consulter le navigateur LDAP de Softerra ( la version gratuite de l'administrateur LDAP), qui peut être téléchargé ici:

http://www.ldapbrowser.com/download.htm

J'ai beaucoup utilisé cette application pour tous mes développements Active Directory, OpenLDAP et Novell eDirectory, et elle a été inestimable.

Si vous souhaitez simplement vérifier si une combinaison nom d'utilisateur/mot de passe fonctionne, il vous suffit de créer un "profil" pour le serveur LDAP, puis de saisir les informations d'identification à l'étape 3 du processus de création:

enter image description here

En cliquant sur "Terminer", vous lierez efficacement le serveur à l'aide des informations d'identification, du mécanisme d'authentification et du mot de passe que vous avez spécifiés. Vous serez invité si la liaison ne fonctionne pas.

8
X3074861X

L'authentification est effectuée via une simple commande ldap_bind qui prend le DN de l'utilisateur et le mot de passe. L'utilisateur est authentifié lorsque la liaison est réussie. Habituellement, vous obtenez le DN de l'utilisateur via un ldap_search basé sur l'ID utilisateur ou l'adresse de messagerie de l'utilisateur.

Obtenir les rôles des utilisateurs est quelque chose de différent puisqu'il s'agit d'un ldap_search et dépend de l'emplacement et du mode de stockage des rôles dans le ldap. Mais vous pourrez peut-être récupérer les rôles lors de la recherche par tour utilisée pour rechercher le DN de l'utilisateur.

1
heiglandreas

Notez que si vous ne connaissez pas votre DN complet, vous pouvez également utiliser votre nom d'utilisateur ou email habituel avec -U

ldapsearch -v -h contoso.com -U [email protected] -w 'MY_PASSWORD' -b 'DC=contoso,DC=com' '(objectClass=computer)'
1
turiyag