Active Directory: доступ к группе из другого домена леса

Пользователя AD можно добавлять в группы другого домена (доменные локальные или универсальные), который находится в том же лесу, что и домен пользователя. Правда, MS советует в такой ситуации использовать глобальную группу, которая находится в том же домене что и пользователь; пользователя добавлять в неё, а саму группу добавлять в группу из другого домена. Если же не прислушиваться к такому совету, то возникает забавная коллизия – в свойствах пользователя на закладке Member Of группа из другого домена не отображается, хотя на закладке Members группы другого домена пользователь есть! Этому даже посвещена одна из статей на сайте поддержки MS.

Как же посмотреть полный список групп пользователя? В вышеуказанной статье предлагается использовать утилиту showgrps.exe из состава ресурскита для Windows 2000 Server. А что делать если такого ресурскита нет и на дворе 2010 год? Видимо использовать PoSh. У меня для этих целей получился такой вот немного корявый скрипт:

$EntAdminCred = Get-Credential
$User = Get-QADUser domainuser -DontUseDefaultIncludedProperties

Connect-QADService -Service FQDN.domain.controller1 -Credential $EntAdminCred
Get-QADGroup -ContainsIndirectMember $User.DN -DontUseDefaultIncludedProperties | 
Select-Object NTAccountname
Disconnect-QADService

Connect-QADService -Service FQDN.domain.controller2 -Credential $EntAdminCred
Get-QADGroup -ContainsIndirectMember $User.DN -DontUseDefaultIncludedProperties | 
Select-Object NTAccountname
Disconnect-QADService

Блок connect/disconnect использовать столько раз – сколько доменов в лесу. $EntAdminCred – логин/пароль администратора, который имеет доступ к учётным записям всех доменов.

Leave a Reply

Your email address will not be published. Required fields are marked *