Можно ли настроить динамическую группу рассылки так, чтобы она содержала все непосредственные подчиненные определенного лица, а также рекурсивно все их непосредственные подчиненные?
Подробная информация
Чтобы получить только прямые отчеты, я думаю, мы просто запустим:
Set-DynamicDistributionGroup -Identity 'SomeManagersDirectReports' `
-RecipientFilter "((RecipientType -eq 'UserMailbox') -and (Manager -eq 'CN=SomeManager,OU=Users,DC=domain,DC=example,DC=com')"
Но чтобы получить менеджера, его прямые отчеты и их отчеты рекурсивно, единственный способ, который я могу придумать, - это запустить что-то вроде приведенного ниже, чтобы создать список участников, а затем использовать его для динамического обновления (статической) группы рассылки.
# очень грубый код для демонстрации мышления... Еще не рассматривал такие вещи, как экранирование символов /
# круговые петли / другие забавные штуки, которые можно найти в дикой природе...
[строка]$FirstPersonDn = 'CN=SomeManager,OU=Users,DC=домен,DC=example,DC=com'
[System.Collections.Generic.List[строка]]$newMembers = [System.Collections.Generic.List[строка]]::new()
[System.Collections.Generic.List[строка]]$members = [System.Collections.Generic.List[строка]]::new()
$newMembers.Add($FirstPersonDn)
в то время как ($newMembers.Count) {
$members.Добавить($newMembers)
$newMembers = $newMembers | %{Get-AdUser $_ -properties DirectReports} | % Прямые отчеты
}
Update-DistributionGroupMember -Identity 'SomeManagerAndTheirReportsRecusive' -Members $members