78026
Goto Top

C Sharp - Kontooptionen festlegen(ActiveDirectory)

Hi,
ich hab mal wieder ein Problem mit der ActiveDirectory...

Hi,
ich ahbe folgenden Code:

                const int ADS_UF_DONT_EXPIRE_PASSWD = 0x10000;

                #region User_Lehrer
                DirectoryEntry DE_1_1_user = new DirectoryEntry("LDAP://" + server1 + "/OU=" + ADlehrer + ",OU=" + ADbasis + ",OU=" + schule + ",DC=" + domäne1, "Administrator", passwort_var);  
                DE_1_1_user.RefreshCache();

                DirectoryEntry DE_1_2_user = DE_1_1_user.Children.Add("CN=" + user_lehrer, "user");  
                DE_1_2_user.Properties["samaccountname"].Add(user_lehrer);  
                DE_1_2_user.Properties["displayname"].Add("Lehrer");  
                DE_1_2_user.CommitChanges();

                DirectoryEntry DE_Group_Lehrer = new DirectoryEntry("LDAP://" + server1 + "/CN=group_" + gruppe_lehrer + ",OU=" + ADlehrer + ",OU=" + ADbasis + ",OU=" + schule + ",DC=" + domäne1, "Administrator", passwort_var);  
                DE_Group_Lehrer.Properties["member"].Add(DE_1_2_user.Properties["distinguishedName"].Value);  
                DE_Group_Lehrer.CommitChanges();

                IADsUser nativNewUser = (IADsUser)DE_1_2_user.NativeObject;
                nativNewUser.FirstName = "Lehrer";  
                nativNewUser.LastName = "Benutzer";  
                nativNewUser.AccountDisabled = false;
                nativNewUser.HomeDirectory = "H:";  
                nativNewUser.Profile = "\\\\" + server1 + "\\Profile\\" + user_lehrer;  
                nativNewUser.Description = "Lehrer";  
                DE_1_2_user.CommitChanges();

                DirectoryEntry User_Lehrer = new DirectoryEntry("LDAP://" + server1 + "/CN=" + user_lehrer + ",OU=" + ADlehrer + ",OU=" + ADbasis + ",OU=" + schule + ",DC=" + domäne1, "Administrator", passwort_var);  
                int val = (int)User_Lehrer.Properties["userAccountControl"].Value;  
                User_Lehrer.Properties["userAccountControl"].Value = val | ADS_UF_DONT_EXPIRE_PASSWD;  
                User_Lehrer.CommitChanges();
                User_Lehrer.Close();
#endregion

Das funktioniert alles auch wunderbar, nur möchte ich bei den Kontooptionen den Haken bei "Benutzer muss das Kennwort bei der nächsten Anmeldung ändern" haben.
Weiß jemand wie das geht, und wenn ja wie?

Danke im voraus für eure Antworten.

MfG Penner

Content-Key: 126354

Url: https://administrator.de/contentid/126354

Printed on: April 24, 2024 at 07:04 o'clock

Member: DerWoWusste
DerWoWusste Oct 03, 2009 at 08:09:46 (UTC)
Goto Top
Hallo.
Als Nichtcoder weiß ich, dass eigentlich alles Wichtige auch über die GUI geht. Was möchtest Du erreichen? Ab 2003 DCs kann man Attribute wie "Benutzer muss das Kennwort bei der nächsten Anmeldung ändern" über die GUI bei allen oder zumindest einer ausgesuchten Gruppe von Nutzern auf einen Schlag setzen. Auswählen - Rechtsklick - Eigenschaften - Reiter Konto.
Mitglied: 78026
78026 Oct 03, 2009 at 14:57:57 (UTC)
Goto Top
Hallo,
ich will die Option ja nicht bei allen User´n in der Gruppe setzten sondern nur bei dem einen.
Davon abgesehen weiß ich nicht wie ich das "global" für die Gruppen setzten soll.

mfG Penner
Member: DerWoWusste
DerWoWusste Oct 04, 2009 at 19:44:29 (UTC)
Goto Top
Hi.
Ich vermute, Du willst jemandem ein Skript an die Hand geben, in dem er nur den Nutzernamen austauscht und dann komnfortabel Benutzerkonten erstellt, oder?
Warum c# ? Ich würde dsadd benutzen, was zum Server gehört, da gibt es die Option mustchpwd {yes | no}
Mitglied: 78026
78026 Oct 05, 2009 at 12:10:04 (UTC)
Goto Top
Zitat von @DerWoWusste:
Hi.
Ich vermute, Du willst jemandem ein Skript an die Hand geben, in dem
er nur den Nutzernamen austauscht und dann komnfortabel Benutzerkonten
erstellt, oder?
Warum c# ? Ich würde dsadd benutzen, was zum Server gehört,
da gibt es die Option mustchpwd {yes | no}


Hallo,
falsch vermutet. :D

Mir gehts es gerade darum dsadd nicht zu benutzen, weil da die Konsole aufspringt.
Hat sich jetzt aber schon erledigt.^^

Funktioniert jetzt ohne Probleme, hatte bei der ganzen Sache nur einen "Denkfehler" drinne. :D

Trotzdem Danke...

MfG Penner
Member: DerWoWusste
DerWoWusste Oct 05, 2009 at 13:17:25 (UTC)
Goto Top
weil da die Konsole aufspringt
kommt drauf an, wie man es benutzt. Warum soll sie nicht aufspringen, was willst Du verhindern?