Тематические термины: Active Directory , Powershell
Чтение информации
Список всех групп в AD DS
Подробная информация о группе
Члены группы
Сколько пользователей в группе
В каких группах состоит пользователь
Поиск пустых групп
Кто не входит в конкретную группу
Действия над группами
Добавление в группу
Создание группы
Удаление пользователя из группы
Получение информации
1. Список всех групп
Без фильтра:
Get-AdGroup -filter *
С фильтром:
Get-AdGroup -filter * | Where {$_.name -like «*free*»} | fl name
* будут выбраны все группы, в названии которых встречается free .
2. Подробная информация о группе
Get-ADGroup «Domain Users» -Properties *
* где ключ -Properties * покажет информацию о всех атрибутах группы.
Показать только SID и GUID группы:
Get-ADGroup «Domain Admins» | ft ObjectGUID, SID
3. Посмотреть членов группы
Перечень членов групп с базовой информацией о каждом пользователе:
Get-ADGroupMember -Identity Administrators
Вывести на экран только имена пользователей:
Get-ADGroupMember -Identity Administrators | ft name
Рекурсивный запрос:
Get-ADGroupMember -Identity Administrators -Recursive | ft name
* в данном примере используется ключ Recursive — это позволяет вывести на экран не только членов группы Administrators , но и членов групп, которые входят в эту группу.
Вывести членов групп с подробной информацией по каждому из них:
Get-ADGroupMember -Identity «Users» | foreach { Get-ADUser $_ -Properties * }
4. Количество пользователей в группе
Расчет выполняется методом Count:
(Get-ADGroupMember -Identity Administrators).Count
5. В каких группах состоит пользователь
Задача немного обратная — работаем с пользователем и отображаем список групп, в которые он входит:
Get-ADUser Administrator -Properties Memberof | Select -ExpandProperty memberOf
6. Список пустых групп
Имеются ввиду группы, в которых нет ни одного пользователя:
Get-ADGroup -filter * | where {-Not ($_ | Get-ADGroupMember)} | Select Name
7. Cписок пользователей, которые не входят в конкретную группу
Get-ADuser -Filter * -Properties MemberOf | where { -Not ($_.MemberOf -match «Managers») } | Select Name
* в данном примере мы увидем список пользователей, которые не входят в группу Managers .
Действия с группами AD
1. Добавить пользователя в группу
Add-ADGroupMember «Domain Admins» remontka
* в данном примере пользователь remontka будет добавлен в группу Domain Admins .
2. Создать новую группу
New-ADGroup -GroupScope DomainLocal -Path «OU=Группы,DC=remontka,DC=local» -Name «Отдел строительства космических кораблей»
* где GroupScope DomainLocal задает локальную область действия; Path определяет размещение группы в дереве Active Directory.
3. Удалить пользователя из группы
Remove-ADGroupMember -Confirm:$false -Identity «Domain Users» -Members remontka
* удаляем пользователя remontka из группы Domain Users . Ключ -Confirm:$false используется для автоматического подтверждения действия (система не станет запрашивать, точно ли Вы хотите удалить пользователя из группы).