Установка модуля Active Directory
Чтобы управлять Microsoft Active Directory с помощью PowerShell, вам нужен модуль AD. Вот как его установить:
- Windows Server:
PS C:\ Install-WindowsFeature -Name "RSAT-AD-PowerShell"
- 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