Discussion:
Ändern SamaccountName
(zu alt für eine Antwort)
Steffi Balzer
2009-03-25 14:29:03 UTC
Permalink
Hallo,

ich habe ein AD in dem die Benutzer einen Samaccountnamen mit dem ersten
Buchstaben vom Vornamen und dem Nachnamen besitzen.
Das sieht folgendendermaßen aus: m.mustermann. Nun möchte ich die
Samaccountnamen in max.mustermann ändern. Geht das? Und wnn ja wie kann ich
viele Benutzer gleichzeitig ändern?

Steffi
Florian Frommherz [MVP]
2009-03-25 15:11:21 UTC
Permalink
Hi Steffi,
Post by Steffi Balzer
ich habe ein AD in dem die Benutzer einen Samaccountnamen mit dem ersten
Buchstaben vom Vornamen und dem Nachnamen besitzen.
Das sieht folgendendermaßen aus: m.mustermann. Nun möchte ich die
Samaccountnamen in max.mustermann ändern. Geht das? Und wnn ja wie kann ich
viele Benutzer gleichzeitig ändern?
Ja das geht - schau dir doch mal diesen Artikel der Scripting-Guys an:
http://www.microsoft.com/technet/scriptcenter/resources/qanda/nov05/hey1101.mspx

Cheers,
Florian
--
Microsoft MVP - Group Policy
eMail: prename [at] frickelsoft [dot] net.
blog: http://www.frickelsoft.net/blog.
Maillist (german): http://frickelsoft.net/cms/index.php?page=mailingliste
Michael Ströder
2009-03-25 18:14:13 UTC
Permalink
Post by Florian Frommherz [MVP]
Post by Steffi Balzer
ich habe ein AD in dem die Benutzer einen Samaccountnamen mit dem
ersten Buchstaben vom Vornamen und dem Nachnamen besitzen.
Das sieht folgendendermaßen aus: m.mustermann. Nun möchte ich die
Samaccountnamen in max.mustermann ändern. Geht das? Und wnn ja wie
kann ich viele Benutzer gleichzeitig ändern?
http://www.microsoft.com/technet/scriptcenter/resources/qanda/nov05/hey1101.mspx
Man muss sich allerdings im Klaren sein, dass der Name u.U. in allen
möglichen anderen Datenbanken, Pfadnamen etc. verwendet wurde. Das muss
man sich vorher genau anschauen und dann gut überlegen. Ausserdem würde
ich gerne wissen, warum diese Umbenennung überhaupt vonstatten geht? Sie
löst z.B. nicht dauerhaft das Problem von Namenskonflikten. Meines
Erachtens sind Benutzernamen basierend auf Personennamen einfach schlecht.

Ciao, Michael.
Norbert Fehlauer [MVP]
2009-03-25 21:32:08 UTC
Permalink
"Michael Ströder" <***@stroeder.com> schrieb
Hi,
Post by Michael Ströder
Man muss sich allerdings im Klaren sein, dass der Name u.U. in allen
möglichen anderen Datenbanken, Pfadnamen etc. verwendet wurde. Das muss
man sich vorher genau anschauen und dann gut überlegen. Ausserdem würde
ich gerne wissen, warum diese Umbenennung überhaupt vonstatten geht? Sie
löst z.B. nicht dauerhaft das Problem von Namenskonflikten. Meines
Erachtens sind Benutzernamen basierend auf Personennamen einfach schlecht.
Abgesehen von obigen Argumenten, ist der SAMAccountName per Default auch auf
ziemlich wenige Zeichen beschränkt, so dass Max.Mustermann vielleicht
funktioniert, aber Klaus-Peter.Muenchhausen schon nicht mehr. ;)

Bye
Norbert
Helmut Schneider
2009-03-25 22:52:06 UTC
Permalink
Post by Norbert Fehlauer [MVP]
Post by Michael Ströder
Man muss sich allerdings im Klaren sein, dass der Name u.U. in allen
möglichen anderen Datenbanken, Pfadnamen etc. verwendet wurde. Das muss
man sich vorher genau anschauen und dann gut überlegen. Ausserdem würde
ich gerne wissen, warum diese Umbenennung überhaupt vonstatten geht? Sie
löst z.B. nicht dauerhaft das Problem von Namenskonflikten. Meines
Erachtens sind Benutzernamen basierend auf Personennamen einfach schlecht.
Abgesehen von obigen Argumenten, ist der SAMAccountName per Default auch
auf ziemlich wenige Zeichen beschränkt, so dass Max.Mustermann
vielleicht funktioniert, aber Klaus-Peter.Muenchhausen schon nicht
mehr. ;)
20 characters ought to be enough for anybody.
--
No Swen today, my love has gone away
My mailbox stands for lorn, a symbol of the dawn
Norbert Fehlauer [MVP]
2009-03-26 09:08:16 UTC
Permalink
"Helmut Schneider" <***@gmx.de> schrieb
Hi,
Post by Helmut Schneider
20 characters ought to be enough for anybody.
Ich nehme an, das ist ironisch gemeint und eine Anspielung auf eine gewisse
Aussage einer gewissen Person. ;)

Bye
Norbert
Helmut Schneider
2009-03-26 10:04:11 UTC
Permalink
Post by Norbert Fehlauer [MVP]
Post by Helmut Schneider
20 characters ought to be enough for anybody.
Ich nehme an, das ist ironisch gemeint und eine Anspielung auf eine
gewisse Aussage einer gewissen Person. ;)
Iro-iro-iro-was?! ;)
--
No Swen today, my love has gone away
My mailbox stands for lorn, a symbol of the dawn
Helmut Schneider
2009-03-26 10:59:22 UTC
Permalink
Post by Norbert Fehlauer [MVP]
Post by Helmut Schneider
20 characters ought to be enough for anybody.
Ich nehme an, das ist ironisch gemeint und eine Anspielung auf eine
gewisse Aussage einer gewissen Person. ;)
Iro-iro-iro-was?! ;)
--
No Swen today, my love has gone away
My mailbox stands for lorn, a symbol of the dawn
Steffi Balzer
2009-03-26 07:44:01 UTC
Permalink
Post by Florian Frommherz [MVP]
Hi Steffi,
Post by Steffi Balzer
ich habe ein AD in dem die Benutzer einen Samaccountnamen mit dem ersten
Buchstaben vom Vornamen und dem Nachnamen besitzen.
Das sieht folgendendermaßen aus: m.mustermann. Nun möchte ich die
Samaccountnamen in max.mustermann ändern. Geht das? Und wnn ja wie kann ich
viele Benutzer gleichzeitig ändern?
http://www.microsoft.com/technet/scriptcenter/resources/qanda/nov05/hey1101.mspx
Cheers,
Florian
--
Danke für den Link aber hier wird nur Bezug auf einen Benutzer genommen. Wie
bekomme ich das hin, wenn ich z.B. alle Benutzer innerhalb einer OU umstellen
will. Kannst du mir dabei auch noch helfen?

Steffi
Florian Frommherz [MVP]
2009-03-26 09:45:14 UTC
Permalink
Steffi,
Post by Steffi Balzer
Danke für den Link aber hier wird nur Bezug auf einen Benutzer genommen. Wie
bekomme ich das hin, wenn ich z.B. alle Benutzer innerhalb einer OU umstellen
will. Kannst du mir dabei auch noch helfen?
Ich hoffe du hast die Kommentare der anderen auch gelesen. Die Beschränkung
der Länge und das eventuell notwendige Ändern von weiteren Applikation
solltest du dir auf jeden Fall ansehen.

Für das Ändern aller Benutzer müsstest du dir eine Schleife bauen - ein
Beispiel findest du hier:
http://www.microsoft.com/technet/scriptcenter/resources/qanda/jan08/hey0108.mspx

Du müsstest in der Schleife, die für jeden Benutzer durchläuft, ein paar
Modifikationen am Beispiel vornehmen, etwa (nicht getestet und ich bin kein
Profiskripter, probier' das bitte mit ein paar Testbenutzern in einer
Testdomäne aus):

...
Do Until objRecordSet.EOF
Set objUser = GetObject(objRecordSet.Fields("AdsPath").Value)
strPrename = objUser.GivenName 'Vorname des Benutzers
strLastName = objUser.sn 'Nachname des Benutzers
objUser.sAMAccountName = strPrename & "." & strLastName
'Vorname.Nachname'
objUser.SetInfo
objRecordSet.MoveNext
Loop
...

Das Skript wirft dann natürlich einen Fehler, wenn der sAMAccountname zu
lang wird...

Cheers,
Florian
Steffi Balzer
2009-03-26 10:44:08 UTC
Permalink
Post by Florian Frommherz [MVP]
Steffi,
Post by Steffi Balzer
Danke für den Link aber hier wird nur Bezug auf einen Benutzer genommen. Wie
bekomme ich das hin, wenn ich z.B. alle Benutzer innerhalb einer OU umstellen
will. Kannst du mir dabei auch noch helfen?
Ich hoffe du hast die Kommentare der anderen auch gelesen. Die Beschränkung
der Länge und das eventuell notwendige Ändern von weiteren Applikation
solltest du dir auf jeden Fall ansehen.
Für das Ändern aller Benutzer müsstest du dir eine Schleife bauen - ein
http://www.microsoft.com/technet/scriptcenter/resources/qanda/jan08/hey0108.mspx
Du müsstest in der Schleife, die für jeden Benutzer durchläuft, ein paar
Modifikationen am Beispiel vornehmen, etwa (nicht getestet und ich bin kein
Profiskripter, probier' das bitte mit ein paar Testbenutzern in einer
....
Do Until objRecordSet.EOF
Set objUser = GetObject(objRecordSet.Fields("AdsPath").Value)
strPrename = objUser.GivenName 'Vorname des Benutzers
strLastName = objUser.sn 'Nachname des Benutzers
objUser.sAMAccountName = strPrename & "." & strLastName
'Vorname.Nachname'
objUser.SetInfo
objRecordSet.MoveNext
Loop
....
Das Skript wirft dann natürlich einen Fehler, wenn der sAMAccountname zu
lang wird...
Cheers,
Florian
Hallo Florian,
vielen Dank für Deine Mühe.
Die Kommentare der anderen habe ich gelesen und werde sie mir zu Herzen
nehmen.
Ich habe das Script abgeändert und es gleich getestet. Es funktioniert
soweit!
Eine Frage habe ich aber noch ;-) Kann ich ich den Wert von
objUser.sAMAccountName so modifizieren, dass nur Kleinbuchstaben drinnen
stehen? Es ist zwar nur ein kosmetischer Eingriff, wenn es aber wenig Mühe
macht, würde ich es gerne mal ausprobieren.
Steffi
Florian Frommherz [MVP]
2009-03-26 15:16:28 UTC
Permalink
Steffi,
Post by Steffi Balzer
Eine Frage habe ich aber noch ;-) Kann ich ich den Wert von
objUser.sAMAccountName so modifizieren, dass nur Kleinbuchstaben drinnen
stehen? Es ist zwar nur ein kosmetischer Eingriff, wenn es aber wenig Mühe
macht, würde ich es gerne mal ausprobieren.
Schau mal ins Originalskript (von den Scripting Guys, das ich gepostest
hatte) - die Methode LCase (steht für LowerCase) macht das:
LCase(strPreName & "." & strLastName)

Cheers,
Florian
--
Microsoft MVP - Group Policy
eMail: prename [at] frickelsoft [dot] net.
blog: http://www.frickelsoft.net/blog.
Maillist (german): http://frickelsoft.net/cms/index.php?page=mailingliste
Nils Kaczenski [MVP]
2009-03-28 16:08:38 UTC
Permalink
Moin,
Post by Steffi Balzer
Eine Frage habe ich aber noch ;-) Kann ich ich den Wert von
objUser.sAMAccountName so modifizieren, dass nur Kleinbuchstaben drinnen
stehen? Es ist zwar nur ein kosmetischer Eingriff, wenn es aber wenig Mühe
macht, würde ich es gerne mal ausprobieren.
der Eingriff ist sogar "irre kosmetisch". Windows unterscheidet bei der
Anmeldung beim Namen nicht nach Groß und Klein. Sobald der User
angemeldet ist, übernehmen alle Systemvariablen, die sich auf den
Usernamen beziehen, die Schreibung, die der User verwendet hat (nicht
die, die im AD steht). Du hast also ziemlich wenig davon, das zu
vereinheitlichen.


Schöne Grüße, Nils
--
Nils Kaczenski - MVP Windows Server
www.faq-o-matic.net
Antworten bitte nur in die Newsgroup!
PM: Vorname at Nachname .de
https://mvp.support.microsoft.com/profile/Nils.Kaczenski
Loading...