Назад | Перейти на главную страницу

Как я могу быстро создать 100 пользователей в моей Active Directory для тестирования?

Я хотел бы создать 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: фамилия, имя, имя пользователя, пароль.

  • Он создает пользователя для каждой строки в файле,
  • Ставит их в желаемое OU,
  • Устанавливает пароль,
  • Добавляет их как участников группы,
  • Принуждает, что пароль должен быть изменен при первом входе пользователя в систему,
  • Устанавливает домашний каталог в соответствующее место в нашей сетевой папке.

Я пытался получить это для автоматического создания адресов электронной почты, но у меня были противоречивые результаты. Достаточно просто выбрать сразу всех пользователей в 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 и т. Д.