Как использовать Powershell, чтобы найти членство в группе, чтобы включить членов вложенных групп и включить имя родительской группы - PullRequest
2 голосов
/ 13 марта 2019

Я пытаюсь создать CSV для всех пользователей в группе, включая членов вложенных групп, с отображением, в какой группе находится каждый участник.

Я нашел следующую команду powershell, которая почти выполняет это, но мне также нужно знать имя вложенной группы для каждого члена вложенной группы.

$MembersALL = @()
$MembersRecursiveALL = @()
$Groups = get-adgroup -Filter { Name -like "group name" } | sort Name | Select -expand Name 

Foreach ($Group in $Groups) {

$Members = Get-ADGroupMember $Group | select-object @{Name='Group_Name';Expression={($Group)}}, Name, SamAccountName, objectClass
$MembersRecursive = Get-ADGroupMember $Group -recursive | select @{Name='Group_Name';Expression={($Group)}}, Name, SamAccountName, objectClass
$MembersALL = $MembersALL+$Members
$MembersRecursiveALL = $MembersRecursiveALL+$MembersRecursive


}


$MembersALL | Select * | export-csv '.\My Documents\ADquery\membersall.csv' -notypeinformation -encoding UTF8
$MembersRecursiveALL | Select * | export-csv '.\My Documents\ADquery\membersallrecursive.csv' -notypeinformation -encoding UTF8

Есть ли способ изменить это, чтобы включить имя вложенной группы. для каждого члена вложенной группы?

В настоящее время эта команда включает в себя только исходное имя группы поиска в столбце «Group_name», а не имя вложенной группы.

1 Ответ

0 голосов
/ 17 апреля 2019

Я нашел скрипт, который делает то, что я пытался сделать:

https://gallery.technet.microsoft.com/scriptcenter/Get-nested-group-15f725f2

Это удовлетворяет моим требованиям.

...