0

我正在尝试在 ADUaC 中创建一个自定义查询,以帮助我在我的系统中索引管理员。我已经缩小了需要列出其成员的安全组的范围,但是我以某种方式滥用了“memberOf”属性,这会破坏查询。

(objectClass=user)(objectCategory=user)(memberOf=*)

上面的查询可以很好地返回所有用户,但是当我将通配符更改为其他任何内容(例如(memberOf=*Administrators*))时,查询不会返回任何对象。

我已确认此查询有一个相关的安全组可以从中获取用户。我知道它不适用于主要组或嵌套用户,我现在只是想让它在基本级别上工作。任何人都知道如何让代码返回属于安全组成员的用户?

4

1 回答 1

0

不幸的是,您不能使用通配符 * 字符来过滤 distinctName 属性。原因是 X.500 标准。

http://www.ldapexplorer.com/en/manual/109010000-ldap-filter-syntax.htm

也许 Powershell 可以派上用场。像这样的东西可以解决问题:

#for just one group
get-adgroupmember -Recursive -Identity "domain admins"

#for a batch of groups
$adminsgroups = "Enterprise Admins","Domain admins"
foreach ($admingroup in $adminsgroups)
{
     #with the recursive switch you get nested group members
     get-adgroupmember -Recursive -Identity $admingroup 
}
于 2021-08-24T16:36:47.787 回答