Подробный гайд: Управление пользователями в Active Directory и Windows Server

Гайд по управлению учётными записями в Active Directory: создание, группы, политики паролей, аудит, безопасность, PowerShell для Windows Server

2026.05.14                


Подробный гайд: Управление пользователями в Active Directory и Windows ServerПодробный гайд: Управление пользователями в Active Directory и Windows Server Применяется к: Windows Server 2016/2019/2022/2025


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

Прежде чем управлять пользователями в Active Directory (AD), убедитесь, что:

  • Компьютер присоединён к домену и имеет установленные RSAT (Remote Server Administration Tools) для AD DS
  • У вашей учётной записи есть права: Domain Admins, Account Operators или делегированные права на конкретную организационную единицу (OU)
  • На контроллере домена или сервере управления запущена консоль Active Directory Users and Computers (dsa.msc)

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

Через графический интерфейс (ADUC)

  1. Откройте Active Directory Users and Computers (dsa.msc)
  2. Перейдите в нужную Организационную единицу (OU) или контейнер Users
  3. Нажмите правой кнопкой → NewUser (или используйте кнопку New User на панели)
4. Заполните поля:
  • Full Name — полное имя
  • User logon name — имя для входа (создаёт sAMAccountName и userPrincipalName)
5. Нажмите Next, задайте пароль и выберите опции:
  • User must change password at next logon — рекомендуется для новых пользователей
  • Password never expires — только для служебных учётных записей
  • Account is disabled — если нужно создать учётку в отключённом состоянии
    1. Нажмите Finish

Через PowerShell (рекомендуется для автоматизации)

# Импорт модуля AD
Import-Module ActiveDirectory

# Создание простого пользователя
New-ADUser -Name "Ivan Petrov" `
    -GivenName "Ivan" `
    -Surname "Petrov" `
    -SamAccountName "ipetrov" `
    -UserPrincipalName "ipetrov@domain.local" `
    -Path "OU=Employees,DC=domain,DC=local" `
    -AccountPassword (ConvertTo-SecureString "P@ssw0rd123!" -AsPlainText -Force) `
    -Enabled $true `
    -ChangePasswordAtLogon $true

Ключевые параметры New-ADUser:

-Name, -SamAccountName, -UserPrincipalName, -Path, -AccountPassword, -Enabled

Массовое создание из CSV-файла

1. Подготовьте файл users.csv:
Name,GivenName,Surname,SamAccountName,UPN,Password
"Ivan Petrov","Ivan","Petrov","ipetrov","ipetrov@domain.local","P@ssw0rd123!"
"Anna Sidorova","Anna","Sidorova","asidorova","asidorova@domain.local","P@ssw0rd456!"
2. Скрипт импорта:
$users = Import-Csv -Path "C:\scripts\users.csv"

foreach ($u in $users) {
    $pwd = ConvertTo-SecureString $u.Password -AsPlainText -Force
    New-ADUser -Name $u.Name `
        -GivenName $u.GivenName `
        -Surname $u.Surname `
        -SamAccountName $u.SamAccountName `
        -UserPrincipalName $u.UPN `
        -Path "OU=Employees,DC=domain,DC=local" `
        -AccountPassword $pwd `
        -Enabled $true `
        -ChangePasswordAtLogon $true
}

Модификация учётной записи

Через PowerShell (Set-ADUser)

# Изменение основных атрибутов
Set-ADUser -Identity "ipetrov" `
    -Description "Менеджер отдела продаж" `
    -Department "Sales" `
    -Title "Senior Manager" `
    -Office "Moscow HQ" `
    -EmailAddress "ipetrov@domain.local"

# Добавление произвольных атрибутов
Set-ADUser -Identity "ipetrov" -Add @{ipPhone="12345"; info="Доп. контакт"}

# Разблокировка учётной записи
Unlock-ADAccount -Identity "ipetrov"

# Сброс пароля (если текущий неизвестен)
Set-ADAccountPassword -Identity "ipetrov" -Reset -NewPassword (ConvertTo-SecureString "NewP@ss2026!" -AsPlainText -Force) -Reset

Через графический интерфейс

  1. В ADUC найдите пользователя → правой кнопкой → Properties
2. Вкладки для редактирования:
  • Account — часы входа, компьютеры для входа, срок действия, параметры пароля
  • Profile — путь к профилю, скрипт входа, домашняя папка
  • Organization — должность, отдел, руководитель
  • Member Of — управление членством в группах

Удаление и восстановление пользователей

Удаление

# Мягкое удаление (перемещение в Deleted Objects)
Remove-ADUser -Identity "ipetrov" -Confirm:$false

# Через командную строку
dsrm "CN=Ivan Petrov,OU=Employees,DC=domain,DC=local"

Важно:

Удалённые объекты можно восстановить только если включена AD Recycle Bin. Рекомендуется сначала отключать учётные записи, а не удалять их сразу.

Восстановление из корзины (если включена)

# Включение Recycle Bin (однократно для леса)
Enable-ADOptionalFeature -Identity "Recycle Bin Feature" `
    -Scope ForestOrConfigurationSet `
    -Target "domain.local"

# Восстановление удалённого пользователя
Get-ADObject -Filter 'SamAccountName -eq "ipetrov"' -IncludeDeletedObjects | 
    Restore-ADObject

Управление группами и членством

Создание группы

# Создание группы безопасности
New-ADGroup -Name "Sales_Team" `
    -GroupScope Global `
    -GroupCategory Security `
    -Path "OU=Groups,DC=domain,DC=local" `
    -Description "Группа отдела продаж"

Добавление/удаление пользователей из группы

# Добавить пользователя
Add-ADGroupMember -Identity "Sales_Team" -Members "ipetrov"

# Удалить пользователя
Remove-ADGroupMember -Identity "Sales_Team" -Members "ipetrov" -Confirm:$false

# Просмотр членов группы
Get-ADGroupMember -Identity "Sales_Team" | Select Name, SamAccountName

Через ADUC

  1. Свойства пользователя → вкладка Member Of
  2. Add → поиск группы → OK
  3. Для удаления: выбрать группу → Remove

Политики паролей и безопасность

Настройка параметров пароля

Через Групповые политики (GPO):

  1. Откройте Group Policy Management (gpmc.msc)
  2. Создайте/отредактируйте GPO, связанную с нужным подразделением
  3. Перейдите: Computer Configuration → Policies → Windows Settings → Security Settings → Account Policies → Password Policy
  4. Настройте: минимальная длина, сложность, история, срок действия

Примеры политик через PowerShell (Fine-Grained Password Policies)

# Создание детализированной политики паролей
New-ADFineGrainedPasswordPolicy -Name "Sales_Policy" `
    -Precedence 10 `
    -MinPasswordLength 12 `
    -PasswordHistoryCount 24 `
    -MaxPasswordAge (New-TimeSpan -Days 90) `
    -MinPasswordAge (New-TimeSpan -Days 1) `
    -ComplexityEnabled $true `
    -ReversibleEncryptionEnabled $false

# Применение политики к группе
Add-ADFineGrainedPasswordPolicySubject -Identity "Sales_Policy" -Subjects "Sales_Team"

Лучшие практики безопасности

Практика Описание
Принцип наименьших привилегий Назначайте права только по необходимости
Использование групп Назначайте права группам, а не отдельным пользователям
Регулярный аудит Отключайте/удаляйте неиспользуемые учётные записи
MFA для привилегированных учётных записей Включите многофакторную аутентификацию для админов
Отдельные учётные записи для администрирования Не используйте доменную учётку для повседневной работы
Мониторинг событий Включите аудит входа и изменений учётных записей

Аудит и мониторинг

Включение аудита через групповые политики

  1. Откройте Group Policy Management
  2. Перейдите: Computer Configuration → Policies → Windows Settings → Security Settings → Advanced Audit Policy Configuration
3. Включите:
  • Account Logon → Audit Kerberos Authentication Service
  • Account Management → Audit User Account Management (Success/Failure)
  • Logon/Logoff → Audit Logon (Success/Failure)

Просмотр событий

  • Откройте Event ViewerWindows Logs → Security

Ключевые ID событий:

  • 4720 — создан пользователь
  • 4726 — удалён пользователь
  • 4723/4724 — попытка смены/сброса пароля
  • 4740 — учётная запись заблокирована
  • 4767 — учётная запись разблокирована

Аудит через PowerShell

# Поиск событий создания пользователей за последние 7 дней
Get-WinEvent -FilterHashtable @{
    LogName='Security'
    ID=4720
    StartTime=(Get-Date).AddDays(-7)
} | Select-Object TimeCreated, Message

# Экспорт отчёта по пользователям
Get-ADUser -Filter * -Properties LastLogonDate, Enabled, PasswordLastSet | 
    Select Name, SamAccountName, Enabled, LastLogonDate, PasswordLastSet |
    Export-Csv "C:\reports\users_audit_$(Get-Date -Format 'yyyyMMdd').csv" -NoTypeEncoding

Делегирование прав на управление

Через мастер делегирования (ADUC)

  1. В ADUC включите View → Advanced Features
  2. Правой кнопкой на нужной OUDelegate Control
3. Добавьте пользователя/группу → выберите задачи:
  • Создать, удалить, управлять пользователями
  • Сбрасывать пароли
  • Читать/записывать определённые атрибуты

Через PowerShell (расширенное делегирование)

# Делегирование права сброса пароля группе "HelpDesk" на OU "Employees"
$ou = "OU=Employees,DC=domain,DC=local"
$group = "CN=HelpDesk,OU=Groups,DC=domain,DC=local"

# Получение объекта OU
$ouObject = Get-ADOrganizationalUnit -Identity $ou

# Делегирование через ACL (упрощённый пример)
# Для сложных сценариев рекомендуется использовать dsacls или GUI

Совет:

Делегируйте права на конкретные OU, а не на весь домен — это снижает риски и упрощает аудит


Полезные PowerShell-командлеты для повседневных задач

Задача Командлет Пример
Поиск пользователя Get-ADUser Get-ADUser -Filter "Surname -like 'Petr*'" -Properties EmailAddress
Список всех пользователей Get-ADUser -Filter * Get-ADUser -Filter * | Select Name, Enabled, LastLogonDate
Массовое изменение Set-ADUser Get-ADUser -Filter * -SearchBase "OU=Temp,DC=domain,DC=local" | Set-ADUser -Enabled $false
Очистка устаревших учётных записей Search-ADAccount Search-ADAccount -AccountInactive -TimeSpan 90.00:00:00 -UsersOnly
Экспорт в CSV Export-CSV Get-ADUser -Filter * -Properties * | Export-Csv users_full.csv
Проверка политик пароля Get-ADDefaultDomainPasswordPolicy Get-ADDefaultDomainPasswordPolicy -Identity "domain.local"

Дополнительные рекомендации

  1. Используйте организационные единицы (OU) для логической структуры: по отделам, локациям, ролям — это упрощает делегирование и применение GPO
  2. Стандартизируйте имена: имя.фамилия или инициалы + фамилия для sAMAccountName
  3. Автоматизируйте рутину: создавайте скрипты для онбординга/оффбординга сотрудников
  4. Регулярно проводите аудит: ежемесячно проверяйте неактивные учётные записи и устаревшие членства в группах
  5. Документируйте изменения: ведите журнал изменений в учётных записях, особенно привилегированных