|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Nouveau Membre du Club
![]() Inscription : mai 2007 Messages : 157 ![]() |
Salut
je travaille sur un projet d'intranet et j'aimerais que l'authentification se base sur l'active directory mais le problème c'est que je suis perdu entre les fonctions ldap. Voici mon code : Code :
merci de votre aide |
||
|
|
00
|
|
|
#2 | ||
|
Membre éclairé
![]() Ingénieur développement logiciels Inscription : mars 2007 Messages : 274 ![]() |
Je pense que tu as déjà un soucis au niveau de ton
ldap_bind prend en 2eme argument un DN ( ex :CN=Nom Prenom ,OU=Personnel,DC=mon service,DC=ma compagnie ) Pour de l'authentification LDAP j'utilise une méthode particulière en 5 étapes : 1ère étape : Formulaire avec demande du Login Windows et Mot de passe Windows 2ème étape : Connexion à l'AD avec un utilisateur spécifique et fixe ( un utilisateur fantome n'existant que pour ca et ayant juste des droit en lecture dans mon exemple l'utilisateur TEST) 3ème étape : Recherche dans l'AD du DN correspondant au Login Windows 4ème étape : Essaie de connection a l'AD avec le DN trouvé et le Mot de passe Windows 5ème étape : déconnexion Et voila en gros ce que cela donne : Code :
Niveau fonction : ldap_connect : engage une connexion avec le server ldap ldap_bind : se connecte au server ldap avec un identifiant mot de passe ldap_search : fait une recherche sur le server ldap ldap_fet_entry : récupère dans un array les résultats d'une recherche ldap_unbind : se déconnecte J'espère que ca t'aidera, il faut s'y connaitre un peu en LDAP et adresse LDAP pour manier ceci.
|
||
|
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Inscription : mai 2007 Messages : 157 ![]() |
merci francoisIT c'est très gentil de ta part
pour la 2ème étape, si je comprends bien, il doit se connecter en tant que admin pour checker si un user existe ou pas. merci de votre aide. |
|
|
00
|
|
|
#4 |
|
Membre éclairé
![]() Ingénieur développement logiciels Inscription : mars 2007 Messages : 274 ![]() |
Non pas forcement en admin, mais il suffit d'un utilisateur quelconque ( Il doit pouvoir se connecter a l'AD via LDAP et avoir un acces en lecture a l'annuaire, ce qui est le cas de la plupart des comptes ) .
|
|
|
00
|
|
|
#5 | |||
|
Nouveau Membre du Club
![]() Inscription : mai 2007 Messages : 157 ![]() |
Citation:
voici le code : Code :
|
|||
|
|
00
|
|
|
#6 | ||
|
Membre éclairé
![]() Ingénieur développement logiciels Inscription : mars 2007 Messages : 274 ![]() |
Pour les attributs, le mieux à faire c'est :
Tu va voir tout ce qu'il te génère et comment récupérer l'information que tu veux. Attention c'est un peu le bordel .Et attention tu as mis $indo au lieu de $info sur ton poste. Sur mon AD l'attribut displayName se récupère comme ceci : Code :
|
||
|
|
00
|
|
|
#7 | |||
|
Nouveau Membre du Club
![]() Inscription : mai 2007 Messages : 157 ![]() |
Citation:
|
|||
|
|
00
|
|
|
#8 |
|
Membre éclairé
![]() Ingénieur développement logiciels Inscription : mars 2007 Messages : 274 ![]() |
Ca fait toujours plaisir d'aider quelqun
|
|
|
00
|
|
|
#9 | |
|
Nouveau Membre du Club
![]() Inscription : mai 2007 Messages : 157 ![]() |
Citation:
bon le problème c'est que j'ai pas bien saisi la structure du tableau renvoyé par la fonction ldap_get_entries. merci de votre aide |
|
|
|
00
|
|
|
#10 | |
|
Nouveau Membre du Club
![]() Inscription : mai 2007 Messages : 157 ![]() |
Citation:
une petite aide svp parce que c'est très important pour moi. et puis, j'ai defini un array et je teste si un user existe dans ce tableau, affiche cette interface sinon affiche celle la mais je trouve cette sulution n'est pas pratique parc que si un user est ajouté, je dois modifier le code de nouveau. merci de votre aide. |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com