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 :

ajout d'un utilisateur à un groupe active directory c# [Débutant]


Sujet :

C#

  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 12
    Par défaut ajout d'un utilisateur à un groupe active directory c#
    bonjour, j'ai un petit problème avec le code suivant:

    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
     
                try
                {
                    string groupDN = "OU=10001326,DC=otinfra,DC=local";
                    string userDN = "CN=Bob Eponge,DC=otinfra,DC=local";
     
                    DirectoryEntry LDAP = new DirectoryEntry("LDAP://adresseLDAP/"+groupDN, "identifiant", "monMotDePasse", AuthenticationTypes.Secure);
     
     
                    //LDAP.Invoke("Add", new Object[] {userDN.ToString() });
                    LDAP.Properties["distinguishedName"].Add(userDN);
                    LDAP.CommitChanges();
                    LDAP.Close();
     
                }
     
                catch (Exception EX)
                {
                    Console.WriteLine("l'utilisateur n'a pas été ajouté au groupe car: "+ EX.Message);
                }
    de plus j'ai essayé ce code en remplaçant distinguishedName par member et cela ne marche pas!

    ce code lors de la compilation me retourne l'erreur suivante :
    Le serveur ne souhaite pas traiter la requête.
    Merci d'avance

  2. #2
    Membre chevronné
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2011
    Messages : 610
    Par défaut
    Bonjour,

    Il me semble qu'il faudrait procédé comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
                    string groupDN = "OU=10001326,DC=otinfra,DC=local";
                    string userDN = "CN=Bob Eponge,DC=otinfra,DC=local";
     
                    DirectoryEntry LDAP = new DirectoryEntry("LDAP://adresseLDAP/"+groupDN, "identifiant", "monMotDePasse", AuthenticationTypes.Secure);
                    DirectoryEntry user = Ldap.Children.Add("CN=Bob Eponge", "user");
                    //Les propriétés à attribuer [...]
                    user.CommitChanges();
    Edit: Un tutoriel est présent sur developpez : http://morpheus.developpez.com/addotnet/ADCSharp/#L6

  3. #3
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 12
    Par défaut
    Merci beaucoup!! Cela marche beaucoup mieux comme ça!

    Encore merci!

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 12
    Par défaut
    En fait la ce que tu m'as donner c'est le code pour créer un user dans le groupe! Ce que je voulais faire moi c'est affecter un groupe à un utilisateur déjà créer, sachant que dans mon programme je peux affecter plusieurs groupe a un user!

    ps: J'ai déjà étudié le tutoriel mais il ne répond pas a mon problème!

  5. #5
    Membre émérite
    Avatar de Gurdil le nain
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2009
    Messages
    468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2009
    Messages : 468
    Par défaut
    Bonjour,

    Pour ajouter un ou plusieurs utilisateurs dans un groupe, il faut que tu récupères le groupe en question et que tu l'ajoutes ensuite :

    Comme fait ici

  6. #6
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 12
    Par défaut
    Salut, j'ai déjà essayé cette méthode, cependant dans mon AD je n'ai pas la propriétée "member".

  7. #7
    Membre émérite
    Avatar de Gurdil le nain
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2009
    Messages
    468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2009
    Messages : 468
    Par défaut
    Comment tu récupères ton groupe ?

  8. #8
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 12
    Par défaut
    dans le code que j'ai poster précédemment! je pense que je le récupère correctement!

    ce n'est pas le string groupDN, qui le fait?

  9. #9
    Membre émérite
    Avatar de Gurdil le nain
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2009
    Messages
    468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2009
    Messages : 468
    Par défaut
    As tu essayé de faire un truc comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LDAP.Properties["member"].Add(userDN)

  10. #10
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 12
    Par défaut
    oui j'ai essayé. cependant je n'ai pas le même message d'erreur, cette foi-ci je récupère celui-ci:
    L'opération demandée n'est pas compatible avec l'une ou plusieurs des contraintes associées avec la classe de l'objet.
    Je ne sais plus comment faire

  11. #11
    Membre chevronné
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2011
    Messages : 610
    Par défaut
    Montre nous ton code actuel qui devrait te permettre d'ajouter un user à un groupe. On pourra cerner le problème

  12. #12
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 12
    Par défaut
    Mon code est celui-ci :
    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
     
    static void Main(string[] args)
            {
          try
                {
                    string groupDN = "OU=10001326,DC=otinfra,DC=local";
                    string userDN = "CN=Alix Dubois,OU=10001285,DC=otinfra,DC=local";
     
                    DirectoryEntry LDAP = new DirectoryEntry("LDAP://10.249.0.1/"+groupDN, "Identifiant", "MotDePasse", AuthenticationTypes.Secure);
     
                    LDAP.Properties["member"].Add(userDN);
                    LDAP.CommitChanges();
                    LDAP.Close();
              }
     
                catch (Exception EX)
                {
                    Console.WriteLine("l'utilisateur n'a pas été ajouté au groupe car: "+ EX.Message);
                }
                Console.ReadLine();
                }
        }
        }

    je pense que le problème viens a 90% de:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LDAP.Propreties["member"].Add(userDN);


    comme j'ai essayé de vous l'expliquer (je me suis pas forcement bien exprimé) je dois déplacer un utilisateur dans un ou plusieurs groupes et non pas créer un utilisateur a un groupe

  13. #13
    Membre émérite
    Avatar de Gurdil le nain
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2009
    Messages
    468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2009
    Messages : 468
    Par défaut
    Et si tu fais simplement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DirectoryEntry LDAP = new DirectoryEntry("LDAP://"+groupDN, "Identifiant", "MotDePasse", AuthenticationTypes.Secure);

  14. #14
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 12
    Par défaut
    je viens de tester ce que tu m'as proposé, je m'en doutais mais je ne peux pas me connecter au serveur LDAP!

  15. #15
    Membre chevronné
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2011
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2011
    Messages : 610
    Par défaut
    Et en faisant comme ceci ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LDAP.Properties["member"].Add(User.Properties["Alix Dubois"].Value);
    EDIT: Autant pour moi pour ma grossière erreur , la propriété doit correspondre au nom de ton champs et non à son contenu...

  16. #16
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 12
    Par défaut
    toujours pas! la valeur de Alix Dubois est: null!

  17. #17
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 12
    Par défaut
    Après plusieurs recherche et tests, le problème vient vraiment de "member", la propriété n'est pas présente dans les différents groupes ou utilisateurs que j'ai préalablement créer!

  18. #18
    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.

    Tu sembles mélanger plusieurs notions AD. Tu dis que tu veux ajouter des utilisateurs à des groupes, mais ce DN string groupDN = "OU=10001326,DC=otinfra,DC=local"; c'est le DN d'une OU ! Vérifie les objectClass de ton objet 10001326 et tu devrais constater qu'il n'y pas "group" mais plutôt "organizationalUnit" .

    Un groupe AD c'est identifié par un commonName, exemple string realGroupDN = "CN=myRealGroup,OU=10001326,DC=otinfra,DC=local";.

    Si tu jettes un œil à ton schéma AD, tu verras que l'attribut member n'est pas autorisé pour les OU mais seulement pour les groupes au sens strict.

    Précise donc ce que tu cherches à faire . Et d'ailleurs si tu jettes un coup d’œil attentif au lien fourni par Gurdil le nain, tu constateras que tout y est expliqué clairement.

  19. #19
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 12
    Par défaut
    Merci! je dois confondre groupe et OU, ce que je désire faire c'est attribuer une ou plusieurs OU a un utilisateur. Cela fais 3 jours que je tourne en rond, je commence a désespérer.

  20. #20
    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 tibreizh44 Voir le message
    Merci! je dois confondre groupe et OU, ce que je désire faire c'est attribuer une ou plusieurs OU a un utilisateur. Cela fais 3 jours que je tourne en rond, je commence a désespérer.
    OK donc ce que tu cherches à réaliser n'est pas possible . Un utilisateur ne peut "appartenir" (ici le terme peut prêter à confusion) qu'à une seule OU, car cela correspond à sa "localisation" dans l'annuaire, exemple :

    • DC=contoso,DC=com
      • OU=FRA
        • CN=userFR1
        • CN=userFR2

      • OU=USA
        • CN=userUSA1
        • CN=userUSA2



    Si tu veux qu'un utilisateur fasse partie de plusieurs éléments, il faut impérativement passer par des groupes (c'est-à-dire qu'il soit membre de plusieurs groupes), et l'attribut member qui est multivalué, exemple :

    • CN=usersAdminDeDomaine,OU=groups,DC=contoso,DC=com
      • member=CN=userFR1,OU=FRA,OU=groups,DC=contoso,DC=com
      • member=CN=userUSA2,OU=USA,OU=groups,DC=contoso,DC=com

    • CN=usersAyantAccesAuParking,OU=groups,DC=contoso,DC=com
      • member=CN=userFR1,OU=FRA,OU=groups,DC=contoso,DC=com
      • member=CN=userFR2,OU=FRA,OU=groups,DC=contoso,DC=com
      • member=CN=userUSA1,OU=USA,OU=groups,DC=contoso,DC=com


    Il faut donc que tu revois ton truc .

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [SP2010] Check autorisation utilisateur et groupes Active Directory
    Par James Dt dans le forum Développement Sharepoint
    Réponses: 4
    Dernier message: 10/02/2014, 10h31
  2. [Débutant] Ajout d'utilisateur dans un groupe Active directory en VB.Net
    Par vindkald dans le forum VB.NET
    Réponses: 4
    Dernier message: 29/03/2013, 10h24
  3. [Débutant] Lister les utilisateur d'un groupe ACTIVE DIRECTORY
    Par FromHell04 dans le forum VB.NET
    Réponses: 0
    Dernier message: 01/02/2012, 18h23
  4. Réponses: 0
    Dernier message: 09/05/2011, 15h30
  5. Réponses: 1
    Dernier message: 19/01/2006, 16h23

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