IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[LDAP] Création d'une organisation


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 148
    Points : 103
    Points
    103
    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

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    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.

  3. #3
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 148
    Points : 103
    Points
    103
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    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.

  5. #5
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 148
    Points : 103
    Points
    103
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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

  6. #6
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    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.

  7. #7
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 148
    Points : 103
    Points
    103
    Par défaut
    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

  8. #8
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    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.

  9. #9
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    148
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 148
    Points : 103
    Points
    103
    Par défaut
    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

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Création d'une organisation hiérarchique (profil, rôle )
    Par max33370 dans le forum Salesforce.com
    Réponses: 8
    Dernier message: 09/07/2014, 16h08
  2. Création d'une base avec IbConsole
    Par Lucien dans le forum Outils
    Réponses: 3
    Dernier message: 02/03/2004, 18h34
  3. création d'une batabse .gdb
    Par jejestyle dans le forum Bases de données
    Réponses: 3
    Dernier message: 23/02/2004, 00h29
  4. [BES] Création d'une variable d'environnement
    Par NGI80 dans le forum Autres
    Réponses: 2
    Dernier message: 17/10/2002, 07h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo