Это будет включать в себя sAMAccountName
пользователя в результатах группы:
Import-Module ActiveDirectory
ForEach ($user in (Get-AdUser -Filter {(Name -Like "*(s)") } | select sAMAccountName)) {
Get-ADPrincipalGroupMembership $user.sAMAccountName| select @{Expression={$user.sAMAccountName};Label="User"},sAMAccountName,name
}
Эта странная запись предназначена для создания пользовательской таблицы.Вы можете прочитать больше об этом здесь: https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-powershell-1.0/ee692794(v=technet.10)
Не видеть ничего в memberOf
может быть нормально.Если вы отметите «Пользователи и компьютеры», вы увидите значение в memberOf
?
Атрибут memberOf
будет отображать только группы с универсальной областью действия в одном лесу AD или глобальные группы в одном домене,Он не будет отображать глобальные группы в других доменах или локальные группы домена в любом домене (даже в одном и том же домене).Таким образом, у него есть свои ограничения.
Пользователи также могут быть «членами» группы по атрибуту primaryGroupId
, в котором хранится RID (последний раздел SID) основной группы пользователя.Обычно это используется только для группы «Пользователи домена».
Get-ADPrincipalGroupMembership
позаботится обо всем этом для вас.Он будет включать в себя основную группу и искать в каждом домене вашего леса глобальные и локальные доменные группы, в которых пользователь является участником.