Я хотел бы создать 100 пользователей только для тестовых целей моего Exchange Server.
Есть ли способ сделать это с использованием случайных имен и т. Д.?
Если у вас есть доступный контроллер домена Windows Server 2008 R2, вы можете запустить следующий сценарий PowerShell, чтобы создать несколько фиктивных пользователей. Вам все равно придется использовать Active Directory Users and Computers для включения почтовых ящиков этих пользователей, но вы можете выбрать всех пользователей и сделать это массово.
Вы можете изменить количество созданных пользователей и пароль для учетных записей. Обратите внимание, что пароль должен соответствовать всем действующим требованиям к паролю (сложность, длина и т. Д.).
Сохранить как NewUsers.ps1
и запускать из модуля Active Directory для Windows PowerShell.
[1..100] | % { New-ADUser "User$_" -AccountPassword (ConvertTo-SecureString -AsPlainText -Force -String "P#$$w0rd") -Enabled $True }
Вот сценарий, который я сделал для использования dsadd. У меня есть однострочный командный файл, который импортирует всех моих новых пользователей каждый год:
(Может быть, есть лучший способ показать это, но я еще не пил кофе.)
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"
Это займет 4 столбца из файла CSV: фамилия, имя, имя пользователя, пароль.
Я пытался получить это для автоматического создания адресов электронной почты, но у меня были противоречивые результаты. Достаточно просто выбрать сразу всех пользователей в Active Directory Users and Computers и оттуда настроить почтовый ящик Exchange. Очень просто и намного проще, чем разобраться в этом с помощью DSADD.
DSADD также имеет много других параметров. По сути, вы можете установить любые пользовательские свойства, которые захотите. Просто, легко и быстро.
Одна ошибка: конфликты имен пользователей необходимо обрабатывать вручную. Иногда у нас есть студенты с такими именами, как Джеймс Смит и Джонатон Смит. Если у вас есть система предотвращения столкновений заранее - отлично. Если нет, я рекомендую перенаправить вывод bat-файла в текстовый файл и просто искать в результатах поиск «Fail».
freshmen09.bat > freshmen09_output.txt
(Вероятно, есть гораздо лучший способ сделать эту часть ...)
В командной строке посмотрите на «dsadd»:
http://technet.microsoft.com/en-us/library/cc731279(v=WS.10).aspx
или "чистый пользователь":
http://support.microsoft.com/kb/251394
Вы можете использовать Excel или блокнот и т. Д., Чтобы подготовить список команд для вставки в командную строку или создать пакетный файл.
Проверьте сценарий здесь: http://blogs.technet.com/b/keithcombs/archive/2008/11/26/filling-up-active-directory-with-some-test-data.aspx
Убедитесь, что ваш внутренний домен - CONTOSO.COM, или измените скрипт. После этого вам нужно будет создать почтовые ящики для всех пользователей, но это довольно легко сделать массово.
Или мы можем использовать эту команду dsadd
пользователь Вот - это одна статья, в которой говорится о том, кому создавать пользователя и папки.
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”
Мы с коллегой придумали полезный скрипт, который генерирует 5000 пользователей для тестирования пользовательских ограничений ldap нашего java-клиента. Он был запущен на сервере Windows Server 2008 под учетной записью администратора.
Просто сохраните следующее в файл run.cmd, настройте имя домена и подразделение и запустите его из командной строки:
@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
Вы можете создать больше пользователей, просто настроив ограничение в цикле FOR.
Это может легко помочь вам: http://testools.blogspot.com/2013/01/how-to-create-several-users-in-active.html
Это лучше, если вы хотите иметь определенные имена для каждого пользователя, отличные от user1, user2 и т. Д.