Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

LDAP - Probleme avec l'authentification

1 réponse
Avatar
MickBim
Bonjour à tous

Je développe actuellement un module LDAP pour une plateforme dédiée à
l'enseignement.

Sur cette plateforme peuvent sont inscrits des utilsateurs normaux,
mais aussi des utilisateurs provenant d'un annuaire LDAP. Dans ce
dernier cas, les utilisateurs sont recupérés automatiquement à partir
d'un annuaire LDAP.

J'ai réussi à les récupérer non sans mal, mais un nouveau problème me
bloque.
En effet, quand un utilisateur provenant d'un annuaire LDAP veut se
connecter à la plateforme, je dois vérifier si celui-ci existe
toujours sur l'annuaire.
Donc je dois me connecter à l'annuaire et faire un bind avec son login
(DN) et mot de passe. Or, quand je fais celà, PHP me retourne une
erreur sur ldap_bind (not enought credential, erreur 50).
Je suppose que cette erreur provient d'un mauvais access list (je
teste avec un annuaire OpenLDAP) car en se loggant avec le compte
Manager de l'annuaire, le bind s'effectue normalement.
L'authentification anonyme est bien entendue désactivée, sinon le bind
marcherait dans tous les cas.

J'avais pensé au départ à me connecter à l'annuaire avec le compte
Manager pour ensuite vérifier si l'utilisateur était toujours présent
mais le problème est que la méthode de cryptage du mot de passe n'est
pas toujours là même ainsi que le type d'annuaire auquel se connecter
(OpenLDAP, Active Directory, etc...)

Quelq'un aurait-il un access list qui marcherait dans mon cas ou bien
une solution différente ?

Merci d'avance

1 réponse

Avatar
fred girard
Si ton appli fait son authentification via plusieurs ldap de structure
et crypt différents (ce qui tu avoueras est pas très très carré;)) tu
devras soit te faire un fichier de config pour annuaire avec la methode
de crypt correpondante pour le bind de tel ou tel ldap, soit faire une
recherche ldap sur les entrées cn mais sans vérifier le pssword....Entre
nous le fichier de config me parait plus adapté si tu connais a l'avance
(j'espere pour toi) le type de crypt, sinon.....je vois pas comment.
MickBim wrote:
Bonjour à tous

Je développe actuellement un module LDAP pour une plateforme dédiée à
l'enseignement.

Sur cette plateforme peuvent sont inscrits des utilsateurs normaux,
mais aussi des utilisateurs provenant d'un annuaire LDAP. Dans ce
dernier cas, les utilisateurs sont recupérés automatiquement à partir
d'un annuaire LDAP.

J'ai réussi à les récupérer non sans mal, mais un nouveau problème me
bloque.
En effet, quand un utilisateur provenant d'un annuaire LDAP veut se
connecter à la plateforme, je dois vérifier si celui-ci existe
toujours sur l'annuaire.
Donc je dois me connecter à l'annuaire et faire un bind avec son login
(DN) et mot de passe. Or, quand je fais celà, PHP me retourne une
erreur sur ldap_bind (not enought credential, erreur 50).
Je suppose que cette erreur provient d'un mauvais access list (je
teste avec un annuaire OpenLDAP) car en se loggant avec le compte
Manager de l'annuaire, le bind s'effectue normalement.
L'authentification anonyme est bien entendue désactivée, sinon le bind
marcherait dans tous les cas.

J'avais pensé au départ à me connecter à l'annuaire avec le compte
Manager pour ensuite vérifier si l'utilisateur était toujours présent
mais le problème est que la méthode de cryptage du mot de passe n'est
pas toujours là même ainsi que le type d'annuaire auquel se connecter
(OpenLDAP, Active Directory, etc...)

Quelq'un aurait-il un access list qui marcherait dans mon cas ou bien
une solution différente ?

Merci d'avance