#########################################################################
#########################################################################
##
## Скрипт для добавления пользователей
## с рассортировкой их по филиалам
## активный с дефолтным паролем
## с галкой изменить пароль при следующем входе.
##
#########################################################################
#########################################################################
$dataSource=import-csv "user3.csv"
$profilePath='\\server-name\profiles\%username%'
foreach($dataRecord in $dataSource) {
#map variables to data source
$ou=$dataRecord.branch
$sAMAccountName=$dataRecord.AccountName
$cn=$dataRecord.cn
$position=$datarecord.position
$userPrincipalName=$sAMAccountName+"@test.com"
#Создать пользователя
$objOU=[ADSI]"LDAP://ou=$ou,dc=test,dc=com"
$objUser=$objOU.Create("user","cn="+$sAMAccountName)
#Заполнить поля пользователя
$objUser.Put("sAMAccountName",$sAMAccountName)
$objUser.Put("title",$position)
$objUser.Put("DisplayName",$cn)
$objUser.Put("profilePath",$profilePath)
$objUser.Put("userPrincipalName",$userPrincipalName)
$objUser.SetInfo()
#в PoSh учетка создается задизейбленой, т.к. нет пароля. Пароль присваивается отдельно.
$objUser.SetPassword("##############")
#активировать учетку
$objUser.psbase.InvokeSet("AccountDisabled",$false)
#требовать смену пароля при следующем входе в систему
$objUser.put("PwdLastSet",0)
$objUser.SetInfo()}