Active directory 正在检查属于组的成员但不属于某个特定组的用户

Active directory 正在检查属于组的成员但不属于某个特定组的用户,active-directory,powershell-2.0,user-management,Active Directory,Powershell 2.0,User Management,我在寻找一种方法来识别属于少数几个组(a、b、c)之一但又不属于特定组(d)的用户,这是一个例外组,以便以后对他们执行一些任务(根据samaccountname的值填写特定属性) 目前,我设法列出了属于特定组的用户帐户,并遵循另一个条件,即智能卡强制执行为false: $groups=“a”、“b”、“c” foreach($组中的组){ 获取ADGroupMember-标识$group| 获取ADUser-属性“smartcardlogonrequired”| 其中{$\.smartcardl

我在寻找一种方法来识别属于少数几个组(a、b、c)之一但又不属于特定组(d)的用户,这是一个例外组,以便以后对他们执行一些任务(根据samaccountname的值填写特定属性)

目前,我设法列出了属于特定组的用户帐户,并遵循另一个条件,即智能卡强制执行为false:

$groups=“a”、“b”、“c”
foreach($组中的组){
获取ADGroupMember-标识$group|
获取ADUser-属性“smartcardlogonrequired”|
其中{$\.smartcardlogonrequired-eq$false}
} 
我想跟着他。 通过定义异常组

$exceptions=(获取ADGroup'd')。DifferentizedName
foreach($组中的组){
获取ADGroupMember-标识$group|
获取ADUser-属性“smartcardlogonrequired”|
其中{$\.smartcardlogonrequired-eq$false}|
Get ADUser–Filter{-not(memberof–eq$d}
}

但是,这并不能真正起作用,我相信还有更好的方法。

获取组“d”成员的可分辨名称列表,并筛选可分辨名称不在该列表中的用户:

$exceptions=Get-ADGroupMember'd'|选择对象-展开DifferentizedName
foreach($组中的组){
获取ADGroupMember-标识$group|
获取ADUser-属性“smartcardlogonrequired”|
何处物体{
$\需要.SmartCardLogon-eq$false-和
$exceptions-不包含$\区分名称
}
}

很有魅力!谢谢!Ansgar,你有时间和我聊一聊关于某项挑战吗?:)我可以通过电子邮件或邮件与你联系吗?联系信息可以在我的主页上找到(链接在我的主页上)。