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

C# Discussion :

Chemin LDAP et C#


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de PatStan17
    Homme Profil pro
    Chef de projet / Développeur
    Inscrit en
    Décembre 2008
    Messages
    307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet / Développeur
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2008
    Messages : 307
    Par défaut Chemin LDAP et C#
    Bonjour ....

    J'essaye en c# de changer un user de place dans activedirectory ...

    J'ai trouvé le code et les explications qui vont bien mais qqchose reste obscur en ce qui concerne le Chemin LDAP

    Un exemple :

    J'ai un user : Utilisateur
    qui se trouve dans l'uo : Test
    de mon domaine : Domaine


    Son chemin Ldap EST t'il : LDAP://Domaine/Test/Domaine ?

    Merci pour vos infos

    Pat

  2. #2
    Membre chevronné Avatar de jacky01
    Profil pro
    Développeur .NET
    Inscrit en
    Juin 2007
    Messages
    537
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2007
    Messages : 537

  3. #3
    Max
    Max est déconnecté
    Expert confirmé

    Avatar de Max
    Homme Profil pro
    Artisan développeur
    Inscrit en
    Mai 2007
    Messages
    2 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Artisan développeur
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 954
    Par défaut
    Salut.

    Le path complet d'un user AD correspond à <protocole>://<domaineComplet>:<port>/<DNCompletDuUser>.

    Un petit exemple concret :
    • Tu prends le DN complet de ton utilisateur : par exemple, CN=eusebe19,OU=xxx,DC=myFirstDC,DC=mySecondDC,DC=myThirdDC
    • Tu prends les infos de ton AD, du type <domaineComplet>:<port> : dans ce cas, avec le port 389, cela donnerait myFirstDC.mySecondDC.myThirdDC:389
    • Tu prends le protocole LDAP : ldap://
    • Tu ajoutes le tout : ldap://myFirstDC.mySecondDC.myThirdDC:389/CN=eusebe19,OU=xxx,DC=myFirstDC,DC=mySecondDC,DC=myThirdDC et tu obtiens le path complet vers ton utilisateur

    Bon courage

  4. #4
    Membre éclairé Avatar de PatStan17
    Homme Profil pro
    Chef de projet / Développeur
    Inscrit en
    Décembre 2008
    Messages
    307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet / Développeur
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2008
    Messages : 307
    Par défaut ....
    merci pour vos réponses...
    Avec vos explications , J'ai monté un fonction pour déplacer un user :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
           public void ChangerDePlace(string CheminActuel, string NouveauChemin)
            {
                DirectoryEntry Utilisateur = new DirectoryEntry("LDAP://" + CheminActuel, LogAdministrateur, MdpAdministrateur);
                Utilisateur.MoveTo(new DirectoryEntry("LDAP://" + NouveauChemin, LogAdministrateur, MdpAdministrateur));
                Utilisateur.Close();
            }
    je l'appelle comme ça :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
                   string NouveauChemin = "CN=" + Utilisateur.Properties["cn"].Value + ",OU=" + Uo + ",DC=" + Domaine + ",DC=Local";
                    ChangerDePlace(Utilisateur.Properties["distinguishedName"].Value.ToString(), NouveauChemin);
                    Utilisateur.Close();
    Mais j'ai une erreur :
    Cet objet ne se trouve pas sur le serveur
    Ce qui me fait dire que mon chemin LDAP est incorrect...

    Des pistes ? Des idées ?

    Pat

  5. #5
    Membre éclairé Avatar de PatStan17
    Homme Profil pro
    Chef de projet / Développeur
    Inscrit en
    Décembre 2008
    Messages
    307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet / Développeur
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2008
    Messages : 307
    Par défaut .....
    Le numéro de port est obligatoire ?

    Pat

  6. #6
    Max
    Max est déconnecté
    Expert confirmé

    Avatar de Max
    Homme Profil pro
    Artisan développeur
    Inscrit en
    Mai 2007
    Messages
    2 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Artisan développeur
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 954
    Par défaut
    Citation Envoyé par PatStan17 Voir le message
    Le numéro de port est obligatoire ?
    Par défaut c'est le 389, mais au cas où ...

    Sinon, étant donné que je ne sais pas quelles valeurs tu mets dans tes chemins, tu peux faire un tour sur cet article qui explique que ton "nouveauChemin" ne doit pas comporter le CN . En réalité, tu ne dois déplacer qu'un CN d'une OU vers une autre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    // Imaginons que tu veuilles déplacer CN=toto,OU=MyOu,OU=myDC1,OU=myDC2,OU=myDC3 vers OU=MyNewOu,OU=myDC1,OU=myDC2,OU=myDC3"
    // Du coup :
    // - cheminActuel = "CN=toto,OU=MyOu,OU=myDC1,OU=myDC2,OU=myDC3"
    // - nouveauChemin = "OU=MyNewOu,OU=myDC1,OU=myDC2,OU=myDC3"
    public void ChangerDePlace(string cheminActuel, string nouveauChemin)
    {
    	DirectoryEntry utilisateurActuel = new DirectoryEntry("LDAP://" + cheminActuel, LogAdministrateur, MdpAdministrateur);
    	DirectoryEntry utilisateurDeplace = new DirectoryEntry("LDAP://" + nouveauChemin, LogAdministrateur, MdpAdministrateur);
    	// UtilisateurActuel.Name correspond au CN
    	utilisateurActuel.MoveTo(utilisateurDeplace, utilisateurActuel.Name, LogAdministrateur, MdpAdministrateur);
    	utilisateurActuel.Close();
    	utilisateurDeplace.Close();
    }
    Voilà

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

Discussions similaires

  1. Active directory chemin LDAP
    Par soron59 dans le forum VBScript
    Réponses: 1
    Dernier message: 01/08/2012, 10h45
  2. [VB.NET][AD][2.0] Quel est mon chemin LDAP?
    Par DonkeyMaster dans le forum ASP.NET
    Réponses: 2
    Dernier message: 14/12/2006, 15h06
  3. Réponses: 1
    Dernier message: 29/09/2006, 12h09
  4. [FORMS] Chemin des icones (intégré FAQ 150 QR)
    Par jerome62 dans le forum Forms
    Réponses: 2
    Dernier message: 30/07/2002, 08h32
  5. Algorithme de recherche de chemin
    Par amelie gaya dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 09/06/2002, 15h29

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