Powershell 3.0
1) Данный скрипт позволяет получить в консоль список групп, в которых пользователь является членом.
$User = 'User.Name'
(Get-ADUser -Identity $User -Properties memberOf).memberOf | Sort-Object | % {(Get-ADGroup -Identity $_).Name}
2) Если пользователей несколько, то можно добавить цикл:
$UserList = 'User.One','User.Two'
foreach ($User in $UserList) {
"----------------------"
"User: " + $User + " is member of"
"----------------------"
(Get-ADUser -Identity $User -Properties memberOf).memberOf | Sort-Object | % {(Get-ADGroup -Identity $_).Name}
"----------------------"
}
Таким образом в консоли отобразится членство в группах с разделением по пользователям.
3) Если нами нужно получить членство в группах для всех пользователей определенной группы, то используем слегка модифицированный скрипт из второго пункта
$UserList = Get-ADgroupmember AD_Group
foreach ($User in $UserList) {
"----------------------"
"User: " + $User + " is member of"
"----------------------"
(Get-ADUser -Identity $User -Properties memberOf).memberOf | Sort-Object | % {(Get-ADGroup -Identity $_).Name}
"----------------------"
}
4) Если групп/пользователей несметное количество, или их нужно заекспортить в текстовый файл, то при запуске скрипта нужно вконце добавить > filename.txt, например:
PS C:\> .\myscript.ps1 > out.txt
P.S. Скрипт не производит никаких модификаций, а лишь выборку, поэтому он абсолютно безопасен.
Немає коментарів:
Дописати коментар