2016-03-30 9 views
0

Im ищет способ идентифицировать пользователей, которые являются членами одной из нескольких групп (a, b, c), но также не являются конкретными group (d), группа исключений, чтобы позже выполнить некоторые задачи на них (заполнение определенного атрибута на основе значения samaccountname).Проверка пользователей, которые участвуют в группах, но не в одной конкретной группе

На данный момент, мне удалось перечислить учетные записи пользователей, которые являются членами определенной группы и следовать еще одно условие наличия смарт-карты исполнения как ложь:

$groups = "a","b","c" 
foreach ($group in $groups) { 
    Get-ADGroupMember -Identity $group | 
    Get-ADUser -Properties 'smartcardlogonrequired' | 
    where {$_.smartcardlogonrequired -eq $false} 
} 

Я думал о следующем. Определение группы исключений по

$exceptions = (Get-ADGroup 'd').distinguishedname 
foreach ($group in $groups) { 
    Get-ADGroupMember -Identity $group | 
    Get-ADUser -Properties 'smartcardlogonrequired' | 
    where {$_.smartcardlogonrequired -eq $false} | 
    Get-ADUser –Filter {-not(memberof –eq $d} 
} 

Однако, это на самом деле не сделать трюк, и я уверен, Theres лучший путь.

ответ

0

Получить список отличительных имен членов группы «D» и фильтр на пользователей, у которых отличительное имя не является частью этого списка:

$exceptions = Get-ADGroupMember 'd' | Select-Object -Expand DistinguishedName 
foreach ($group in $groups) { 
    Get-ADGroupMember -Identity $group | 
    Get-ADUser -Properties 'smartcardlogonrequired' | 
    Where-Object { 
     $_.smartcardlogonrequired -eq $false -and 
     $exceptions -notcontains $_.DistinguishedName 
    } 
} 
+0

работает как шарм! Благодаря! – BoleslawA

+0

Ансгар, у вас было бы время поговорить со мной в связи с определенным вызовом? :) Могу ли я как-нибудь связаться с вами по электронной почте или через какого-нибудь мессенджера? – BoleslawA

+0

Контактная информация может быть найдена на моей домашней странице (ссылка находится в моем [SO profile] (https://stackoverflow.com/users/1630171?tab=profile)). –