|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 14 ![]() |
Bonjours,
Je souhaiterais vous demander un petit coup de main car pour mon stage(que je fait actuellement) une erreur se produit dans mon script et je n'arrive pas à la resoudre voila: mon script a pour fonction d'identifier un utilisateur par rapport a son groupe et son mot de passe hors lorsque la fonction ldap_compare arrive une erreur apparait qui est la suivante : "Compare : Insufficient Access....." J'ai essayer de m'identifer (grace a Ldap_bind) en tenmp que "superutilisateur" mais l'erreur apparait toujours pourriez vous m'aider pour regler ce probleme Merci d'avance!!! Laurent MERLET |
|
|
00
|
|
|
#2 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 14 ![]() |
Bon puisque apparement personne ne peut m'aider j'ai une autre question pour resoudre mon probleme estt -il possible d'obtenir l'attribut userPassword d'une personne car malgres tous mes essaie je narrive malheureusement pas a récupéré cet attribut.
|
|
|
00
|
|
|
#3 |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Ceci est probablement dû aux droits (ACL) qui ne vous permettent pas d'y avoir accès.
|
|
|
00
|
|
|
#4 | |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 14 ![]() |
Citation:
|
|
|
|
00
|
|
|
#5 |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Certainement, mais cela est spécifique à l'annuaire utilisé.
Une ACL (Access Control List) définit qui (OpenLDAP permet : un utilisateur authentifié, anonyme, qui se connecte avec telle ip, qui a tel DN, etc) accède à quoi (quel(s) objet(s), quels attributs de l'objet, en lecture et/ou en écriture, ...). On trouve parfois également sa forme dynamique, accolée aux objets, appelée ACI (Access Control Information). |
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 14 ![]() |
ok je vois maintenant, mais ya t'il un moyen de modifier cela ????? et comment ???
Si tu connais la réponse bien sur |
|
|
00
|
|
|
#7 | ||
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Citation:
Citation:
|
||
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 14 ![]() |
Désoler je ne vous avais pas prévenus de l'aplication que j'utilise et c'est bien open LDAP et pour le fichier sladp.conf je ne peut pas avoir acces a ce fichier ce qui est conpréhensible puisque je suis stagiaire.
Mais en tous cas je te remercie pour tes idées. |
|
|
00
|
|
|
#9 |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Avec quel utilisateur LDAP vous connectez-vous ? Le même utilisateur pour toutes vos opérations ou celui de l'utilisateur qui se connecte ?
A priori vous êtes dans le premier cas et vu les messages d'erreur que vous obtenez vous êtes plutôt limités. Vous devriez faire une demande à votre tutorant pour qu'il revoit les ACL en conséquence ou vous attribue un autre compte. Toutefois, il serait certainement préférable d'avoir un annuaire de test dans un premier temps pour ne pas interférer avec l'existant et vous permettrait de le configurer selon vos propres besoins (il existe un portage - non officiel - de OpenLDAP pour Windows). |
|
|
00
|
|
|
#10 | ||
|
Invité de passage
![]() Inscription : mai 2007 Messages : 14 ![]() |
Bin en faite le but de mon projet est de créer un systeme de sécurité pour les application intranet en php permettant de verifier quel compte utilisateur est connecter de vérifier s'il fait partie du groupe profs et ainsi de rentré si celui ci en fait bien partie.
Pour aboutir a cela en faite j'ai céer un petit formulaire permettant a l'utilisateur de rentré son login et son mot de passe ainsi je verifie si son login est dans le group profs et ensuite si celui ci en fa bien partie je récupere le mot de passe et le crypt au format de open ldap et la intervient ma fonction ldap_compare ou je verifie donc la chaine de caractere ( mot de passe crypter saisi par l'utilisateur sur le formulaire) avec le mot de passe enregistrer dans l'annuaire. Dans un premier je me connectais avec la fonction ldap_bind en utilisateur anonyme car j'avai seulement besoin de lire l'annuaire, puis j'ai eu l'erreur que j'ai décrit dans mon premier post alors je me suis connecter en admin (toujours grace a ldap_bind ) sur le serveur pour obtenir tous les droit de verification mais l'erreur est rester donc je ne comprend pas. Voila une partie de mon code au as ou j'aurai mal expliquer. Code :
|
||
|
|
00
|
|
|
#11 |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Et le reste du script s'exécute normalement (comme vous vous y attendez) ? Avez-vous tenté de spécifier que vous souhaitiez utiliser la version 3 du protocole via ldap_set_option ?
|
|
|
00
|
|
|
#12 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 14 ![]() |
oui tous le reste du code fonctionne normalement sans aucun probleme.
Je n'ai pas essayé de changer la version du protocole j'essairais demain car je suis rentré chez moi! Je vous tien au courant des nouvellles |
|
|
00
|
|
|
#13 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 14 ![]() |
Bonjours julp,
J'ai donc enfin essayer de modifier la version du protocole mais lerreur apparait encore... :'( Je commence a desepéré |
|
|
00
|
|
|
#14 | ||
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Vous faites référence à quelle erreur maintenant (ldap_bind ou ldap_compare) ?
Par contre vous auriez pu faire un code beaucoup plus efficace en utilisant directement un scope de type base (ldap_read) puisque le DN du groupe est connu. Autre point, n'y a-t-il pas une erreur au niveau du DN utilisé lors de ldap_compare ? Voilà ce que j'ai écrit et testé de mon côté : Code :
|
||
|
|
00
|
|
|
#15 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 14 ![]() |
Ton code fonctionne a première vu trés bien je t'en remercie.
Mais une petite erreur me chiffonne a chaque fois que je doit verifier le mot de passe il me met le cas d'erreur Algorithme non implementé et je ne sait pas pourquoi. |
|
|
00
|
|
|
#16 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 14 ![]() |
en faite j'ai trouver le probleme c'est que la variable $utils que tu utilise pour stocker les resultat de la recherche de personnes ne contient pas le mot de passe comme desiré j'ai réussi a afficher le tableau util mais le champs userpassword est vide...
|
|
|
00
|
|
|
#17 |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
En vous connectant à l'annuaire avec un autre client (LDAPBrowser, phpldapadmin, ldapsearch, etc) sous le même utilisateur y avez-vous accès ? Qu'en pense votre tuteur ?
|
|
|
00
|
|
|
#18 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 14 ![]() |
Oui moi aussi je pense que cela vien des ACL car ici nous utilisons 2 autre logiciel ou l'on doi s'identifier grace a la base ldap ( GRR, et GLPI) donc je pense moi aussi que la cause vien des ACLs je vais verifié cela dans la journer( car je doit voir sa avec mon tuteur)
|
|
|
00
|
|
|
#19 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 14 ![]() |
J'ai une derniere question a te poser a propos des ACL j'ai réussi a y avoir acces mais je ne sait pas trop quel ligne rajouter donc je prefere avoir ton avis dessus
Entre : - by admin_Dn compare - bye admin_Dn read Lequel devrais utiliser et es ce que la syntaxe est exact (je prefere etre sur j'ai pas vrraiment envie de planter le serveur de l'école |
|
|
00
|
|
|
#20 |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Sachez que vous trouverez une documentation déjà bien fournie sur le site d'OpenLDAP.
read vous permet de faire tout en une fois : recherche et lecture du résultat (ça correspond au code que je vous ai proposé). compare, va vous demander une étape supplémentaire car vous n'aurez pas l'attribut userPassword dans le résultat de la recherche donc il faudra ensuite utiliser ldap_compare sur le DN de l'objet correspondant (normalement vous n'en avez qu'un) à la recherche (c'est plus ou moins votre idée de départ). Par contre vous n'avez pas donné l'autre bout de l'ACL (access to attrs=userPassword). |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com