Wie kann ich schnell 100 Benutzer in meinem Active Directory zu Testzwecken erstellen?


7

Ich möchte 100 Benutzer nur zu Testzwecken meines Exchange Servers erstellen.

Gibt es eine Möglichkeit, dies mit zufälligen Namen usw. zu tun?


Welche Version von Exchange?
Ben Pilbrow

Exchange Server 2003.

Antworten:


4

Hier ist ein Skript, das ich erstellt habe, um dsadd zu verwenden. Ich habe eine einzeilige Batchdatei, die jedes Jahr alle meine neuen Benutzer importiert:

(Es gibt vielleicht eine bessere Möglichkeit, dies anzuzeigen, aber ich habe noch keinen Kaffee getrunken.)

for /F "tokens=1,2,3,4 delims=," %%i in (freshmen09.csv) do dsadd user "cn=%%j %%i,ou=2013,ou=students,dc=[domain],dc=org" -samid %%k -pwd "%%l" -upn %%k@[domain].org -fn "%%j" -ln "%%i" -display "%%j %%i" -memberof "cn=GL 2013,ou=2013,ou=students,dc=[domain],dc=org" -disabled no -mustchpwd yes -hmdrv U: -hmdir "\\[network home directory]\2013\%%k"

Dies erfordert 4 Spalten aus einer CSV-Datei: Nachname, Vorname, Benutzername, Passwort

  • Es wird ein Benutzer für jede Zeile in der Datei erstellt.
  • Setzt sie in die gewünschte Organisationseinheit,
  • Legt das Passwort fest,
  • Fügt sie als Mitglied einer Gruppe hinzu,
  • Erzwingt, dass das Kennwort geändert werden muss, wenn sich der Benutzer zum ersten Mal anmeldet.
  • Legt das Home-Verzeichnis an der entsprechenden Stelle auf unserer Netzwerkfreigabe fest.

Ich habe versucht, E-Mail-Adressen automatisch zu erstellen, aber ich habe inkonsistente Ergebnisse erzielt. Es ist einfach genug, alle Benutzer in Active Directory-Benutzer und -Computer gleichzeitig auszuwählen und von dort aus das Exchange-Postfach einzurichten. Sehr einfach und viel einfacher, als diesen Teil mit DSADD herauszufinden.

DSADD hat auch viele andere Parameter. Sie können grundsätzlich festlegen, dass alle gewünschten Benutzereigenschaften festgelegt werden. Einfach, leicht und schnell.

Ein Fehler: Kollisionen mit Benutzernamen müssen manuell behandelt werden. Wir haben gelegentlich Studenten mit Namen wie James Smith und Jonathon Smith. Wenn Sie ein System haben, um Kollisionen im Voraus zu verhindern, perfekt. Wenn nicht, empfehle ich, die Ausgabe der bat-Datei in eine Textdatei umzuleiten und in den Ergebnissen einfach nach "Fail" zu suchen.

freshmen09.bat > freshmen09_output.txt

(Es gibt wahrscheinlich einen viel besseren Weg, um diesen Teil zu tun ...)


5

Wenn ein Windows Server 2008 R2-Domänencontroller verfügbar ist, können Sie das folgende PowerShell-Skript ausführen, um einige Dummy-Benutzer zu erstellen. Sie müssen weiterhin Active Directory-Benutzer und -Computer verwenden, um diese Benutzer per Postfach zu aktivieren. Sie können jedoch alle Benutzer auswählen und in großen Mengen ausführen.

Sie können die Anzahl der erstellten Benutzer und das Kennwort für die Konten ändern. Beachten Sie, dass das Kennwort allen geltenden Kennwortanforderungen (Komplexität, Länge usw.) entsprechen muss.

Speichern unter NewUsers.ps1und führen Sie es im Active Directory-Modul für Windows PowerShell aus.

[1..100] | % { New-ADUser "User$_" -AccountPassword (ConvertTo-SecureString -AsPlainText -Force -String "P#$$w0rd") -Enabled $True }

4

Sehen Sie sich an der Eingabeaufforderung "dsadd" an:

http://technet.microsoft.com/en-us/library/cc731279(v=WS.10).aspx

oder "Netzbenutzer":

http://support.microsoft.com/kb/251394

Sie können Excel oder Editor usw. verwenden, um eine Liste von Befehlen zum Einfügen in eine Eingabeaufforderung zu erstellen oder eine Batchdatei zu erstellen.


Dies gilt für Windows Server 2008. Funktioniert dies in Windows Server 2003, was ich verwende?

Meine schlechte Verknüpfung! Ja, das wird es :)
Simon


3

Oder wir können diesen Befehl verwenden. dsaddBenutzer ist hier ein Artikel, in dem es darum geht, wer Benutzer und Ordner erstellen soll.

set FirstName=Graice
set LastName=tsai
set LogonName=graice
set pass=welcome
dsadd user ”CN=%LogonName%, ou=FTPUsers, dc=yourDCname,dc=com” -pwd %pass% -pwdneverexpires yes -samid %LogonName% -upn %LogonName% -ln %LastName% -fn %FirstName%
dsmod user ”CN=%LogonName%, ou=FTPUsers, dc=yourDCname,dc=com” -disabled no
dsmod group ”CN=FTP Users, ou=FTPUsers, dc=yourDCname,dc=com” -addmbr ”cn=%LogonName%, ou=FTPUsers, DC=yourDCname, DC=com”

3

Ein Kollege und ich haben ein nützliches Skript entwickelt, das 5000 Benutzer generiert, um die ldap-Benutzerlimits unseres Java-Clients zu testen. Es wurde auf einem Windows Server 2008-Server mit dem Administratorkonto ausgeführt.

Speichern Sie einfach Folgendes in einer run.cmd-Datei, passen Sie den Domänennamen und die Organisationseinheit an und führen Sie sie über eine Eingabeaufforderung aus:

@echo off
set FirstName=test
set LastName=user
set LogonName=testuser_new
set pass=Welcome_1234
setlocal enableextensions enabledelayedexpansion

FOR /L %%A IN (1,1,5000) DO (

    echo %LogonName%_%%A

    dsadd user "CN=%LogonName%_%%A, CN=Users, dc=fist,dc=com" -pwd %pass% -pwdneverexpires yes -samid %LogonName%_%%A -upn %LogonName%_%%A -ln %LastName% -fn %FirstName%
    dsmod user "CN=%LogonName%_%%A, CN=Users, dc=fist,dc=com" -disabled no

)

endlocal

Sie können weitere Benutzer erstellen, indem Sie das Limit in der FOR-Schleife anpassen.


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.