Active directory 如何查询树中一个集合比另一个集合更深的用户

Active directory 如何查询树中一个集合比另一个集合更深的用户,active-directory,ldap,Active Directory,Ldap,假设您有两组用户: OU=IT部门,OU=Groups,DC=mycompany,DC=com OU=XYZ公司,OU=Temp账户,OU=group,DC=mycompany,DC=com 你对此有何疑问?我尝试了一个搜索库OU=Groups,DC=mycompany,DC=com和一个过滤器(|(OU=IT部门)(OU=XYZ Corp,OU=Temp Accounts)),但没有成功 从来没有做过很多关于LDAP的事情,所以请原谅这个有点开放性的问题 假设您有两组用户: OU=IT部门,O

假设您有两组用户:

OU=IT部门,OU=Groups,DC=mycompany,DC=com

OU=XYZ公司,OU=Temp账户,OU=group,DC=mycompany,DC=com

你对此有何疑问?我尝试了一个搜索库
OU=Groups,DC=mycompany,DC=com
和一个过滤器
(|(OU=IT部门)(OU=XYZ Corp,OU=Temp Accounts))
,但没有成功

从来没有做过很多关于LDAP的事情,所以请原谅这个有点开放性的问题

假设您有两组用户:

OU=IT部门,OU=集团,DC=mycompany,DC=com

OU=XYZ公司,OU=临时账户,OU=集团,DC=mycompany,DC=com

这些不是用户对象的有效区分名称

用户对象存储在某个父容器(如OU)中,其DiscrimitedName以CN开头。OU是顶级容器,包含子对象,如用户、计算机、子OU等

我尝试了一个OU=Groups、DC=mycompany、DC=com的搜索库和一个 (|(OU=IT部门)(OU=XYZ公司,OU=Temp账户))但这不起作用

您的筛选器无法工作,因为您没有选择适当的筛选条件。您需要为
(objectCategory=person)
(objectCategory=user)
应用过滤器。您还可以使用
objectClass
作为筛选参数,而不是objectCategory。查看链接以了解详细信息

你对此有何疑问

假设您的用户如下所示:

CN=Firstname lastname,OU=IT部门,OU=Groups,DC=mycompany,DC=com CN=Firstname lastname,OU=XYZ公司,OU=Temp账户,OU=Groups,DC=mycompany,DC=com

然后,您的LDAP查询应该将
SearchBase
设置为您当前拥有的(
OU=Groups,DC=mycompany,DC=com
),并在
(|(objectCategory=person)(objectCategory=user))
上进行筛选,如果您愿意,还可以使用任何其他筛选,例如,您可能希望按sAMAccountName、name等进行搜索


正如第二段中强调的,您还可以使用
objectClass
作为过滤器类型来获得所需的结果。

您可以在这里选择两个选项之一:对每个路径进行两次ldap查询,或对公共路径进行一次查询,并从客户端的其他ou过滤用户。从性能的角度来看,第一个选项更可取不幸的是我没有。谢谢你证实我的怀疑。我正在调整的应用程序既不能进行过滤,也不能进行多重查询。