При управлении доступом и настройками пользователей в домене Active Directory у администратора может возникнуть задача создания динамических групп пользователей AD . Такая динамическая группа должна автоматически включить или исключать пользователей из группы в зависимости от параметров учетной записи пользователя в домене. Например, вы хотите автоматически добавлять пользователей из определенной OU в группу, или создать группу пользователей, которая включает в себя все учетные записи определенного отдела (поле Department) и т.д. Динамические группу позволяют существенно упростить администратору процесс назначения полномочий на файловые сервера, рабочие станции и т.д.
В Active Directory нет встроенного функционала динамических группы безопасности. Однако вы можете создать PowerShell скрипт, который автоматически выбирает пользователей из Active Directory по определенному критерию и добавляет пользователей в определенную группу безопасности AD (можно временно ) и удаляет из группы учетные записи, которые не попадают более под условия формирования группы.
При изменении атрибутов пользователя в AD скрипт должен автоматически добавлять или исключать пользователя из группы.
Для использования подобных динамических групп пользователей вы должны у всех учётных записей держать максимально актуальными все поля, использующиеся в критериях выборки (например, при заведении новых пользователей скриптом PowerShell нужно сразу указывать город, отдел, организацию и т.д).
Предположим, вам необходимо автоматически добавлять всех пользователей из нескольких OU, у которых в поле Департамент (Department) в AD указано “ Отдел продаж ”. Я написал такой PowerShell скрипт (для его работы необходимо наличие модуля Модуль Active Directory для Windows PowerShell, используется командлет Get-ADUser для получения информации о пользователях и командлеты управления группами AD — Add-ADGroupMember, Get-ADGroupMember и Remove-ADGroupMember).
## Имя вашего домена AD
$ADDomain = 'dc=remontka,dc=ru'
## Имя динамической группы
$ADGroupname = 'mskSales'
## Список OU для поиска пользователей
$ADOUs = @(
"OU=Users,OU=Accounts,OU=SPB,$ADDomain",
"OU=Users,OU=Accounts,OU=MSK,$ADDomain"
)
$users = @()
# Поиск пользователей по указанным OU
foreach($OU in $ADOUs){
$users += Get-ADUser -SearchBase $OU -Filter {Department -like "Отдел продаж"}
}
foreach($user in $users)
{
Add-ADGroupMember -Identity $ADGroupname -Member $user.samaccountname -ErrorAction SilentlyContinue
}
## Теперь проверим всех пользователей группы на соотвествие критериям выборки и, если пользователь не соотвествует (перенесен в другую OU, изменен отдел) исключить его из группы
$members = Get-ADGroupMember -Identity $ADGroupname
foreach($member in $members)
{
if($member.distinguishedname -notlike "*OU=Users,OU=Accounts,OU=SPB,$ADDomain*" -and $member.distinguishedname -notlike "*OU=Users,OU=Accounts,OU=MSK,$ADDomain*")
{
Remove-ADGroupMember -Identity $ADGroupname -Member $member.samaccountname -Confirm:$false
}
if ((Get-ADUser -identity $member -properties Department|Select-Object Department).department -notlike "Отдел продаж" )
{
Remove-ADGroupMember -Identity $ADGroupname -Member $member.samaccountname -Confirm:$false
}
}
Запустите скрипт и проверьте, что в результате в группу mskSales автоматически добавлены все пользователи из данных OU, у которых в поле Department указано “Отдел продаж”. Все пользователи, которые не соответствуют этим критериям из этой группы исключаются.
Этот скрипт нужно запускать вручную, но лучше запускать его регулярно через отдельное задание планировщика Task Scheduler , от имени учетной записи, у которой имеются права в AD на пользователей и группы (не стоит запускать скрипт из-под администратора домена, все необходимые права можно делегировать обычной сервисной учетке или gmsa аккаунту ).
Этот PowerShell скрипт можно использовать в качестве каркаса для создания ваших собственных правил формирования динамических групп в AD.
Клиент удаленного рабочего стола (rdp) предоставляет нам возможность войти на сервер терминалов через консоль. Что…
В VMware Workstation есть несколько способов настройки сети гостевой машины: 1) Bridged networking 2) Network…
Встроенный брандмауэр Windows может не только остановить нежелательный трафик на вашем пороге, но и может…
Вопреки распространенному мнению, отключить IPv6 в Windows Vista и Server 2008 это не просто снять…
Параметры экранной заставки для текущего пользователя можно править из системного реестра, для чего: Запустите редактор…
В этой статье расскажу про возможность просмотра журналов событий из командной строки. Эти возможности можно…