![]() |
Поиск пользователей в AD являющихся членами нескольких (заданных) групп
Доброго дня коллеги.
Не могу решить очень простую, на первый взгляд казалось бы для меня, задачу ;) Есть группы безопасности в AD, к примеру Группа-1, Группа-2, Группа-3 и так далее. Как мне найти пользователей, которые входят сразу в несколько групп одновременно? Например user, являясь членом группы Группа-1 - это норма, но если он является членом группы Группа-1 и Группа-2 или Группа-1 и Группа-3 или Группа-1, Группа-2 и Группа-3 и множество подобных значений - этой фейл. Мне нужно поймать этих пользователей из всего каталога. Пробовал так: $users= Get-ADUser -Filter {Enabled -eq "True"} -Properties "MemberOf" foreach ($user in $users) { if ($user.MemberOf -like "*Группа-*Группа-*") { $user.Name } } Понял что делаю неправильно, так как поле memberOf имеет не строковый параметр... Как произвести верную выгрузку пользователей? Спасибо заранее. |
$user.MemberOf -match "Gr1|Gr2|Gr3"
Ps. А не проще идти от обратного? Получить список пользователей данных групп? |
Не... Это я так понимаю "или". Пользователь априори должен быть в одной группе из перечисленных, надо найти тех, кто находится больше чем в одной из заданных.
|
@($user.MemberOf -match "Gr1|Gr2|Gr3").Count -ge 2
или если через группы: Код:
"Gr1","Gr2","Gr3" | Get-ADGroupMember | Where objectClass -eq user | Group Name | where Count -ge 2 |
Хм... Понял, спасибо. А можно как-то группы по маске указать "Группа-*" к примеру? У меня из уж 33 и могут динамически увеличиваться в кол-ве.
|
Зависит от шаблона. Например:
Код:
-match "Группа-\d{1,2}\b" |
Понял, спасибо.
Но, я так понимаю, чтобы искать четкое соответствие, лучше использовать не совпадение по -match, а командлет Get-ADGroupMember. Верно? |
А если так?
Get-ADUser -Identity User1 -Property Memberof | Select -ExpandProperty MemberOf |
Цитата:
|
Цитата:
Так более наглядно будет. Попробуй. foreach ($Group in Get-ADUser -Identity User1 -Property Memberof | Select -ExpandProperty MemberOf) {(Get-ADGroup $Group).Name} |
ratibor79, ну я так понимаю это просто список групп и все. Мне же надо было выборку на членство в указанных группах, для тех кто более, чем в одной из них.
|
Время: 19:53. |
Время: 19:53.
© OSzone.net 2001-