
78107
28.04.2009, aktualisiert um 18:47:40 Uhr
mehrere Benutzeranmeldenamen ändern per Script o.ä.
Hallo,
ich bin neu hier und hoffe, dass ihr mir helfen könnt.
Ich müsste ca. 100 Benutzeranmeldenamen in AD ändern. Kann man das mit einem Script oder ähnlichem automatisieren? Möchte nur ungern jeden User "in die Hand nehmen".
Ich kenne mich mit Scripten allerdings noch nicht wirklich aus. Also wenn dann bitte eine Erklärung für Anfänger
Zu unserem Netzwerk:
DomainControler: Windows Server 2000
Mitgliedsserver: Windows Server 2003 Standard
Vielen Dank schon mal für eure Hilfe!!
Beste Grüße
Björn
ich bin neu hier und hoffe, dass ihr mir helfen könnt.
Ich müsste ca. 100 Benutzeranmeldenamen in AD ändern. Kann man das mit einem Script oder ähnlichem automatisieren? Möchte nur ungern jeden User "in die Hand nehmen".
Ich kenne mich mit Scripten allerdings noch nicht wirklich aus. Also wenn dann bitte eine Erklärung für Anfänger
Zu unserem Netzwerk:
DomainControler: Windows Server 2000
Mitgliedsserver: Windows Server 2003 Standard
Vielen Dank schon mal für eure Hilfe!!
Beste Grüße
Björn
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 114898
Url: https://administrator.de/forum/mehrere-benutzeranmeldenamen-aendern-per-script-o-ae-114898.html
Ausgedruckt am: 22.04.2025 um 15:04 Uhr
6 Kommentare
Neuester Kommentar
Moin #mfkvfnnme# ,
willkommen im Forum.
Und hast Du auch schon einen detailierteren Plan?
Ich meine, hast du eine Liste "usernameJetzt"->"usernameSoll"?
Als Text, Fotokopie, Exceldatei ?
Oder wird der Anmeldename aus den ersten drei Zeichen des Systemdatums plus dem String "#mfkvfnnme#" gebildet?
Oder willst du gar etwas ganz anderes ändern?
Sorry, dass wir noch kein Skript hochgeladen haben....
Grüße
Biber
willkommen im Forum.
Ich müsste ca. 100 Benutzeranmeldenamen in AD ändern
äh ja.Und hast Du auch schon einen detailierteren Plan?
Ich meine, hast du eine Liste "usernameJetzt"->"usernameSoll"?
Als Text, Fotokopie, Exceldatei ?
Oder wird der Anmeldename aus den ersten drei Zeichen des Systemdatums plus dem String "#mfkvfnnme#" gebildet?
Oder willst du gar etwas ganz anderes ändern?
Sorry, dass wir noch kein Skript hochgeladen haben....
Grüße
Biber
Hi,
ich habe noch etwas gefunden. Damit du nicht dein AD per hand durchwühlen mußt, kannst du dieses Script nehmen.
http://www.faq-o-matic.net/2008/10/29/jos-active-directory-dokumentatio ...
Damnit kannst du alle usernamen deiner Domäne dir anzeigen lassen. Da weißt du zumindest schon mal, wie jeder einzelne Username angelegt worden ist.
mfg
Sascha
ich habe noch etwas gefunden. Damit du nicht dein AD per hand durchwühlen mußt, kannst du dieses Script nehmen.
http://www.faq-o-matic.net/2008/10/29/jos-active-directory-dokumentatio ...
Damnit kannst du alle usernamen deiner Domäne dir anzeigen lassen. Da weißt du zumindest schon mal, wie jeder einzelne Username angelegt worden ist.
mfg
Sascha
Hallo #mfkvfnnme#!
Du könntest es mit dem folgenden Script versuchen:
Zum Testen wäre es vorteilhaft, das Script (Annahme: gespeichert als "C:\Scripts\RenameAccounts.vbs") mit
direkt an der Kommandozeile zu starten (um nicht eine größere Menge Messageboxen wegklicken zu müssen) - als Ergebnis solltest Du eine Liste aller zu behandelnden Konten erhalten, wobei die in der Zeile 1 angeführten (jeweils - zu Deinem Nick passend
- durch "#" eingerahmten) Konten übersprungen werden.
Wenn das Ergebnis vernünftig aussieht, kannst Du vom Beginn der Zeilen 21 und 22 das Kommentarzeichen ' entfernen - dann werden beim nächsten Scriptlauf die Anmeldenamen tatsächlich geändert.
Grüße
bastla
Du könntest es mit dem folgenden Script versuchen:
Ignore = "#Administrator#Gast#TsInternetUser#krbtgt#...#" 'diese Kontobezeichnungen nicht ändern
Set Conn = CreateObject("ADODB.Connection")
Set Cmd = CreateObject("ADODB.Command")
Conn.Provider = "ADsDSOObject"
Conn.Open "Active Directory Provider"
Set Cmd.ActiveConnection = Conn
Cmd.Properties("Cache Results") = False
Cmd.CommandText = "<LDAP://" & GetObject("LDAP://RootDSE").Get("defaultNamingContext") & _
">;(&(objectclass=user)(objectcategory=person));distinguishedName;subtree"
Set RecordSet = Cmd.Execute
Do Until RecordSet.EOF
Set User = GetObject("LDAP://" & RecordSet.Fields("distinguishedName"))
sAMAccountName = User.sAMAccountName
If InStr(1, Ignore, "#" & sAMAccountName & "#", vbTextCompare) = 0 Then
LastChar = Right(sAMAccountName, 1)
If LastChar <> UCase(LastChar) Then
WScript.Echo sAMAccountName
'User.sAMAccountName = Left(sAMAccountName, Len(sAMAccountName) - 1) & UCase(LastChar)
'User.SetInfo
End If
End If
RecordSet.MoveNext
Loop
cscript //nologo C:\Scripts\RenameAccounts.vbs
Wenn das Ergebnis vernünftig aussieht, kannst Du vom Beginn der Zeilen 21 und 22 das Kommentarzeichen ' entfernen - dann werden beim nächsten Scriptlauf die Anmeldenamen tatsächlich geändert.
Grüße
bastla