Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks
Bibliothèques et frameworks Forum d'entraide sur les frameworks, templates, bibliothèques de code (PDFLib, eZPdf, JpGraph, Artichow, PEAR, etc). Avant de poster : FAQ bibliothèques, toutes les FAQ PHP et cours bibliothèques
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/06/2006, 14h45   #1
Membre régulier
 
Inscription : septembre 2004
Messages : 148
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 148
Points : 77
Points : 77
Par défaut [LDAP] Création d'une organisation

Bonjour
Je souhaiterai savoir s'il est possible d'ajouter une organisation ou une unité organisationnelle dans une organisation avec un script PHP à notre annuaire LDAP.
On a tenté plusieurs fois avec la fonction ldap_add tout en modifiant l'attribut objectClass mais sans resultat...
Si quelqu'un a une idée. Merci d'avance
Podz
podz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2006, 18h28   #2
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Oui c'est possible, mais pour t'aider, il faudrait détailler davantage : source de l'erreur (niveau serveur - droits insuffisants, ... ou bien php - mauvaise utilisation, ...). Quelles sont les messages d'erreur (car quand le script fonctionne pas il doit y en avoir) ? Et puis comment fais-tu ton ldap_add (si c'est bien là qu'est le problème) ?



Julp.
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/06/2006, 12h49   #3
Membre régulier
 
Inscription : septembre 2004
Messages : 148
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 148
Points : 77
Points : 77
Bonjour
Désolé de repondre aussi tard...
En fait, nous avons réussi à créer une unité organisationnelle avec php et même les utilisateurs associées (je mettrai le code demain...). Malheureusement nous rencontrons un problème au niveau du mot de passe de ces utilisateurs. Nous le récupérons dans un fichier csv et lorsque nous ajoutons l'utilisateur avec son mot de passe associé, il n'est pas possible de se connecter avec son profil. Par contre on s'est rendu compte qu'en donnant directement le mot de passe dans le code cela marchait tres bien.
Exemple de la ligne de code en question :
Code :
1
2
3
4
/* ça ne marche pas!!!! */
$entry['userPassword'] = $tab[2];
/* ça marche on se connecte */
$entry['userPassword'] = "toto";
Si quelqu'un a deja eu ce probleme...
Merci d'avance
Podz
podz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/06/2006, 13h08   #4
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Sous quelle forme récupérez-vous les mots de passe ? Le serveur gère quelques cryptages et un préfixe doit s'accoller au mot de passe (voir slappasswd(8) pour voir la forme). (En tout cas c'est comme ça que ça marche avec OpenLDAP).


Julp.
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2006, 09h38   #5
Membre régulier
 
Inscription : septembre 2004
Messages : 148
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 148
Points : 77
Points : 77
Bonjour
Voici la fin de mon code qui permet à partir d'un fichier csv d'ajouter des utilisateurs ds l'unité organisationnelle créée précedemmment.
Pour le principe je propose une page html où je fais saisir dans une zone de texte le nom de l'unité organisationnelle puis sélectionner le fichier csv correspondant.
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
//Ajout d'un user
 
//Lecture du fichier
$file = "U:\EasyPHP1-8\www\projet7\upload\upload".$_FILES['fichier']['name'];
$taille = 1024;
$delimiteur = ";";
 
/* ouverture en lecture */
if($fp = fopen($file,"r")) {
 
    /* extraction d'une ligne */
    while ($ligne = fgets($fp, $taille)) {
 
        /* extraction champs */
        $tab = explode($delimiteur, $ligne);
 
        /* affichage des champs */
	$entry["cn"]=$tab[0];
	$entry["sn"]=$tab[1];
 
	$entry["userPassword"]=$tab[2];
	$entry["objectclass"]="user";
echo "<br>";
	$nom_test = "cn=".$tab[0].", ou=".$_POST['nom'].", o=basandere";
 	echo $nom_test;
	$rd=ldap_add($connect, $nom_test, $entry);
echo ldap_error();
    }
    /* fermeture fichier */
    fclose ($fp);
} else {
    echo "Ouverture impossible.";
}
Ce code fonctionne bien sauf pour le password comme je l'ai expliqué ds mon précédent post. Il faut savoir qu'on a désactivé sur le serveur novell lors de l'install le certificat SSL/TLS.
Je vais me renseigner sur slappasswd (Merci julp) mais si quelqu'un a une idée sur mon problème je suis preneur...
Meci d'avance
Podz
podz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2006, 10h55   #6
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Citation:
Envoyé par podz
$file = "U:\EasyPHP1-8\www\projet7\upload\upload".$_FILES['fichier']['name'];
N'y aurait-il pas une erreur ? Les '\' sont censés être doublé non ?

Citation:
Envoyé par podz
Je vais me renseigner sur slappasswd (Merci julp) mais si quelqu'un a une idée sur mon problème je suis preneur...
Je doute que ça marche pour Novell : désolé j'avais plus souvenir que tu utilisais Novell. Toutefois, renseignes toi sur la forme sous laquelle sont stockés les mots de passe dans l'annuaire (cryptés ?, présence d'un préfixe ?, ...). Mais sous quelle forme les récupères-tu de ton fichier csv (en clair ?, hashés ?, ...) ?


Julp.
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2006, 11h32   #7
Membre régulier
 
Inscription : septembre 2004
Messages : 148
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 148
Points : 77
Points : 77
Citation:
Envoyé par julp
N'y aurait-il pas une erreur ? Les '\' sont censés être doublé non ?
Apparement aucune erreur Julp... Je récupère bien le nom des utilisateurs et leurs mots de passe (j'ai fait un test sur ma page pour les afficher).
Pour slappasswd, tu as raison, ça n'a pas l'air de fonctionner. Je vais voir du coté du cryptage encore une fois mais j'ai peu d'espoir. D'ailleurs où sont les mots de passe utilisateurs sous novell et comment peut on les recuperer (si c'est possible...)?
Dans le fichier csv les mots de passe sont entrés en clair et je ne comprend pas prquoi ça marche qd je donne un mot de passe en clair ds le code alors qu'avec la variable contenant le mot de passe issu du csv ça ne marche plus
Si qq'un a une idée...
Podz
podz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2006, 13h34   #8
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Et si tu affiches $tab[2] (echo '-' . $tab[2] . '-';), ça correspond bien à ce que tu attends (pas d'espace, saut de ligne ou autres) ?


Julp.
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2006, 15h44   #9
Membre régulier
 
Inscription : septembre 2004
Messages : 148
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 148
Points : 77
Points : 77
Merci Julp!!
C'etait exactement ça! Il y avait un espace à la fin de chaque mot de passe. Grace à la fonction trim(), nous l'avons supprimer et la connexion se fait sans probleme.
Merci encore pour ta patience et ton aide.
A bientot sans doute...
Podz
podz est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h08.


 
 
 
 
Partenaires

Hébergement Web