Modifier les groupes d'un utilisateur dans Active Directory

Résolu
theflayer Messages postés 125 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 21 juin 2015 - 16 août 2012 à 10:42
theflayer Messages postés 125 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 21 juin 2015 - 21 août 2012 à 16:50
Salut tous le monde,

Petite question,

je crée un utilisateur dans mon active directory mais certain points ne fonctionne pas.
-Le premier point est au niveau du login, il y en a 2 :

-le premier se nomme Nom d'ouverture de session de l'utilisateur (celui qui m’intéresse)
-Le second Nom d'ouverture de session de l'utilisateur (Antérieur à Win 2000) (celui qu'il me remplit)

Second problème ce sont mes groupes, quand je rajoute la ligne user.Properties["memberOf"].Add("Mon_Groupe");

Cela me renvoie une exception , comme quoi le serveur ne veut pas traiter cette action. Si je ne la met pas, mise a part le problème du login ça fonctionne parfaitement. Voici mon code :



     DirectoryEntry Ldap = new DirectoryEntry(@"LDAP://serveur3", "Administrateur", "Mon_Pass");
                    DirectoryEntry user = Ldap.Children.Add("CN=" + sPrenom_b + " " + tNom.Text.ToUpper() +", CN=Users", "User");
                    user.Properties["sAMAccountName"].Add(tIdentifiant.Text.ToLower());
                    user.Properties["sn"].Add(tNom.Text.ToUpper());
                    user.Properties["givenName"].Add(sPrenom_b);
                    user.Properties["Mail"].Add(tMail.Text.ToLower());
                    user.Properties["Company"].Add("Ma_Boite");
                    user.Properties["description"].Add("Compte créé le : " + DateTime.Now.ToLongDateString());
                    user.CommitChanges();

                    user.Invoke("SetPassword", new object[] { tNom.Text.ToLower() });
                    user.Properties["userAccountControl"].Value = 0x0200; //active le compte avec le mode choisit (voir doc)
                    //user.Properties["memberOf"].Add("Mon_Groupe");
                    user.CommitChanges();



Merci de votre aide.

2 réponses

theflayer Messages postés 125 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 21 juin 2015 2
21 août 2012 à 16:50
 string LDAPDomain = "LDAP://serveur3/CN=" + groupes + ",CN=Users,DC=xxx,DC=xx,DC=com";
                    DirectoryEntry Group = new DirectoryEntry(LDAPDomain, "Administrateur", "Mon_Pass");

                    //on ajoute l'utilisateur au groupe
                    Group.Invoke("Add", new Object[] { user.Path.ToString() });
                    Group.CommitChanges();
                    Group.Close();


Voila comme ça, ça fonctionne !! J'ajoute l'utilisateur au groupe juste après l'avoir crée.






-La constante d'une personne est la variable d'une autre.
-Il y a deux manières d'écrire des programmes sans erreurs. Seule la troisième marche
-Tout programme a (au moins) deux buts : celui pour lequel il a été écrit, et celui pour lequel il ne l'a pas