Установка модуля Active Directory

Чтобы управлять Microsoft Active Directory с помощью PowerShell, вам нужен модуль AD. Вот как его установить:

  1. Windows Server:
PS C:\ Install-WindowsFeature -Name "RSAT-AD-PowerShell"
  1. Windows 10/11:
  • Открыть Настройки > Приложения > Дополнительные функции > Добавить функцию.
  • Найти и установить RSAT: Доменные службы Active Directory и легкие средства каталогов.

Подключение к Active Directory

Чтобы начать управлять AD, откройте PowerShell и импортируйте модуль AD:

PS C:\ Import-Module ActiveDirectory

Убедитесь, что модуль загружен, проверив доступные команды:

PS C:\ Get-Command -Module ActiveDirectory

Основные операции AD

1. Запрос Active Directory

Используйте Get-ADUser команду для получения информации о пользователе. Например, чтобы получить сведения о пользователе по имени JohnDoe:

PS C:\ Get-ADUser -Identity JohnDoe

Чтобы перечислить всех пользователей в определенном OU:

PS C:\ Get-ADUser -Filter * -SearchBase "OU=Users,DC=example,DC=com"

2. Создание нового пользователя

Чтобы создать нового пользователя, воспользуйтесь командой New-ADUser команду. Вот пример:

PS C:\ New-ADUser -Name "Jane Doe" -GivenName Jane -Surname Doe -SamAccountName jdoe -UserPrincipalName [email protected] -Path "OU=Users,DC=example,DC=com" -AccountPassword (ConvertTo-SecureString "P@ssw0rd" -AsPlainText -Force) -Enabled $true

3. Изменение пользователя

Чтобы изменить атрибуты пользователя, воспользуйтесь командой Set-ADUser команду. Например, чтобы изменить должность и отдел пользователя:

PS C:\ Set-ADUser -Identity jdoe -Title "Project Manager" -Department "IT"

4. Удаление пользователя

Чтобы удалить пользователя, воспользуйтесь командой Remove-ADUser команду:

PS C:\ Remove-ADUser -Identity jdoe

Управление группами

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

Чтобы создать новую группу AD, воспользуйтесь командой New-ADGroup команду:

PS C:\ New-ADGroup -Name "HR Group" -SamAccountName hrgroup -GroupScope Global -GroupCategory Security -Path "OU=Groups,DC=example,DC=com"

2. Добавление участников в группу

Чтобы добавить пользователя в группу, воспользуйтесь командой Add-ADGroupMember команду:

PS C:\ Add-ADGroupMember -Identity "HR Group" -Members jdoe

3. Удаление участников из группы

Чтобы удалить пользователя из группы, воспользуйтесь командой Remove-ADGroupMember команду:

PS C:\ Remove-ADGroupMember -Identity "HR Group" -Members jdoe -Confirm:$false

4. Удаление группы

Чтобы удалить группу, воспользуйтесь командой Remove-ADGroup команду:

PS C:\ Remove-ADGroup -Identity "HR Group"

Организационные единицы (OU)

1. Создание OU

Чтобы создать новую OU, воспользуйтесь командой New-ADOrganizationalUnit команду:

PS C:\ New-ADOrganizationalUnit -Name "Marketing" -Path "DC=example,DC=com"

2. Перемещение объекта в OU

Чтобы переместить пользователя в другую OU, воспользуйтесь командой Move-ADObject команду:

PS C:\ Move-ADObject -Identity "CN=Jane Doe,OU=Users,DC=example,DC=com" -TargetPath "OU=Marketing,DC=example,DC=com"

3. Удаление OU

Чтобы удалить OU, воспользуйтесь кнопкой Remove-ADOrganizationalUnit команду:

PS C:\ Remove-ADOrganizationalUnit -Identity "OU=Marketing,DC=example,DC=com"

Расширенные операции AD

1. Управление AD с помощью сценариев

Сценарии PowerShell позволяют автоматизировать повторяющиеся задачи. Вот сценарий для создания нескольких пользователей:

$userList = Import-Csv "C:\Users\userlist.csv"
foreach ($user in $userList) {
    New-ADUser -Name $user.Name -GivenName $user.GivenName -Surname $user.Surname -SamAccountName $user.SamAccountName -UserPrincipalName $user.UserPrincipalName -Path $user.Path -AccountPassword (ConvertTo-SecureString $user.Password -AsPlainText -Force) -Enabled $true
}

2. Управление учетными записями пользователей в массовом порядке

Чтобы отключить несколько учетных записей пользователей из файла CSV:

$users = Import-Csv "C:\Users\disableusers.csv"
foreach ($user in $users) {
    Disable-ADAccount -Identity $user.SamAccountName
}

3. Создание отчетов

Создайте отчет обо всех пользователях в OU и экспортируйте его в CSV-файл:

PS C:\ Get-ADUser -Filter * -SearchBase "OU=Users,DC=example,DC=com" | Select-Object Name,SamAccountName,UserPrincipalName | Export-Csv -Path "C:\Users\report.csv" -NoTypeInformation