Содержание

Массовый импорт пользователей в Active Directory

Этот скриптик поможет в случаях, когда необходимо массово импортировать пользователей.

Опробован на Windows Server 2012R2 + PowerShell, запускать с правами администратора.

Что нужно изменить:

MYDOMAIN.RU - Заменить на ваш домен

ОТКЛЮЧЕННЫЕ - заменить на требуемое Подразделение

Кусочек

Set-ADAccountControl $sAMAccountName -PasswordNeverExpires $True

включает для только что созданной учетной записи «Срок действия пароля не ограничен».

В файле Users_import.csv подразумевается наличие следующих строк (пример):

cn,sn,givenName,initials,company,department,description,City,sAMAccountName,userPassword
Иванов Петр Матвеевич,Иванов,Метр,М,"ООО ""МояФирма""",Отдел управления,самый главный,МойГород,ivanov.petr,p@ssWorD123
Петров Сидор Владимирович,Петров,Сидор,В,"ООО ""МояФирма""",Аппарат управления,зам. директора,НеМойГород,petrov.sidor,p@ssWorD1234

Список полей:

Сам скрипт User_Import.ps1:

$UserList=IMPORT-CSV "C:\Users_import\Users_import.csv"
 
FOREACH ($Person in $UserList) {
 
$Domain="@MYDOMAIN.RU"
$FullName=$Person.cn
$Company=$Person.company
$Department=$Person.department
$Description=$Person.description
$givenName=$Person.givenName
$initials=$Person.initials
$I=$Person.City
$sAMAccountName=$Person.sAMAccountName
$sn=$Person.sn
$userPrincipalName=$Person.sAMAccountName+$Domain
$userPassword=$Person.userPassword
$expire=$null
 
NEW-ADUSER -PassThru -Path "OU=ОТКЛЮЧЕННЫЕ, DC=MYDOMAIN,DC=RU" -Enabled $True -AccountExpirationDate $expire -ChangePasswordAtLogon $False -AccountPassword (ConvertTo-SecureString $userPassword -AsPlainText -Force) -CannotChangePassword $True -City $I -Company $Company -Department $Department -Description $Description -DisplayName $FullName -GivenName $givenName -Initials $initials -Name $FullName -SamAccountName $sAMAccountName -Surname $sn -Title $Description -UserPrincipalName $userPrincipalName
 
Set-ADAccountControl $sAMAccountName -PasswordNeverExpires $True
}