яндекс
PowerShell скрипт для создания пользователя в AD

Active Directory (AD) является основным инструментом управления учетными записями пользователей и ресурсами в корпоративной сети. Автоматизация создания пользователей с помощью PowerShell значительно упрощает администрирование, повышает точность и снижает вероятность ошибок. В данной статье рассмотрим, как написать PowerShell-скрипт для добавления нового пользователя в AD.

Предварительные требования

Перед созданием пользователя через PowerShell необходимо:

  1. Иметь учетную запись с правами администратора домена.
  2. Убедиться, что на компьютере установлен RSAT (Remote Server Administration Tools).
  3. Импортировать модуль Active Directory в PowerShell:
Import-Module ActiveDirectory

  1. Определить организационную единицу (OU), в которую будет добавлен новый пользователь.

Создание скрипта

1. Определение параметров нового пользователя

Прежде чем добавлять учетную запись, необходимо задать основные параметры, такие как имя, фамилия, логин и пароль. Для этого можно создать переменные в PowerShell:

$GivenName = "Иван"
$Surname = "Петров"
$UserName = "ivan.petrov"
$Password = "P@ssw0rd!"
$OU = "OU=Users,DC=example,DC=com"

2. Создание учетной записи пользователя

После определения параметров создаём нового пользователя с помощью команды New-ADUser:

New-ADUser -SamAccountName $UserName `
           -UserPrincipalName "$UserName@example.com" `
           -Name "$GivenName $Surname" `
           -GivenName $GivenName `
           -Surname $Surname `
           -DisplayName "$GivenName $Surname" `
           -Path $OU `
           -AccountPassword (ConvertTo-SecureString $Password -AsPlainText -Force) `
           -Enabled $true `
           -ChangePasswordAtLogon $true `
           -PassThru

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

3. Дополнительные настройки

Можно добавить пользователя в определенную группу, чтобы задать ему нужные права:

Add-ADGroupMember -Identity "IT_Users" -Members $UserName

Если требуется создать несколько пользователей одновременно, можно использовать CSV-файл:

$users = Import-Csv "C:\users.csv"
foreach ($user in $users) {
    New-ADUser -SamAccountName $user.UserName `
               -UserPrincipalName "$($user.UserName)@example.com" `
               -Name "$($user.GivenName) $($user.Surname)" `
               -GivenName $user.GivenName `
               -Surname $user.Surname `
               -DisplayName "$($user.GivenName) $($user.Surname)" `
               -Path $OU `
               -AccountPassword (ConvertTo-SecureString $user.Password -AsPlainText -Force) `
               -Enabled $true `
               -PassThru
}

Что должно быть в CSV-файле

В CSV-файле должны быть столбцы с данными, необходимыми для создания пользователей в Active Directory:

GivenName,Surname,UserName,Password
Иван,Петров,ivan.petrov,P@ssw0rd!
Алексей,Сидоров,alexey.sidorov,P@ssw0rd2
Мария,Иванова,maria.ivanova,P@ssw0rd3

Разъяснение столбцов:

  • GivenName – имя пользователя.
  • Surname – фамилия.
  • UserName – логин (SamAccountName в AD).
  • Password – пароль (можно заменить на сгенерированный при создании).

Файл users.csv должен быть сохранен в формате UTF-8 без BOM, чтобы избежать проблем с кодировкой в PowerShell.

Если тебе нужно добавить дополнительные параметры, например должность или email, можно расширить CSV-файл:

GivenName,Surname,UserName,Password,Title,Email
Иван,Петров,ivan.petrov,P@ssw0rd!,Системный администратор,ivan.petrov@example.com
Алексей,Сидоров,alexey.sidorov,P@ssw0rd2,Менеджер IT,alexey.sidorov@example.com
Мария,Иванова,maria.ivanova,P@ssw0rd3,Разработчик,maria.ivanova@example.com

Заключение

Использование PowerShell для автоматического создания пользователей в Active Directory значительно экономит время и снижает риск ошибок. Скрипт можно модифицировать и расширять, добавляя дополнительные параметры и функции.

Добавить комментарий