Команда для перечисления пользователей из нескольких групп AD с каждым именем группы - PullRequest
0 голосов
/ 16 ноября 2018

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

Это то, что я запускаю:

get-ADGroup -Server "<server_name>" -filter {Name -like  "*<common_text_in_each_group's_name*"} | get-ADGroupMember

К сожалению, я пытаюсь сделатьэто в одной строке, потому что, когда я пытаюсь создать файл ps1 и запустить его, я получаю сообщение об ошибке, что он не может найти группы в домене, к которому подключен мой локальный компьютер.То есть аргумент -Server не работает.Все группы находятся в домене, отличном от того, на котором я запускаю PS.

Когда я попытался создать файл script / ps1, я попробовал вот что:

$Groups = (Get-AdGroup -server '<server_name>' -filter * | Where {$_.name -like "*_some_text*"} | select name -expandproperty name)


$Table = @()

$Record = [ordered]@{
"Group Name" = ""
"Name" = ""
"Username" = ""
}



Foreach ($Group in $Groups)
{

$Arrayofmembers = Get-ADGroupMember -identity $Group | select name,samaccountname

foreach ($Member in $Arrayofmembers)
{
$Record."Group Name" = $Group
$Record."Name" = $Member.name
$Record."UserName" = $Member.samaccountname
$objRecord = New-Object PSObject -property $Record
$Table += $objrecord

}

}

$Table | export-csv "C:\temp\x_Groups.csv" -NoTypeInformation

1 Ответ

0 голосов
/ 16 ноября 2018

Полагаю, вам нужно просто передать параметр -Server в Get-ADGroupMember:

$Arrayofmembers = Get-ADGroupMember -identity $Group -server '<server_name>' | select name,samaccountname

Это глупо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...