我正在尝试用java进行ldap搜索。我正在使用ldap ctx。
我发现我需要搜索两棵小树。 例如:
resultsTest = lctx.search("OU=Company Beta,DC=example,DC=com", "something", SUBTREE_SCOPE);
(我确信"某事"是正确的,因为我为结果测试了很多)
公司测试版内有团队A,团队B,团队C和团队D.
我发现如果我将其中任何一个添加到搜索的开头,
OU=team A
或
OU=team B
我可以搜索A队或B队的成员。 但是我希望从A队和B队获得搜索,而不是搜索其中任何一个。
任何人都可以提供帮助吗?我从很多网站上搜索过但找不到解决方案。
答案 0 :(得分:1)
许多LDAP服务器实现将允许RFC 2254中定义的extensible match search filter,允许您执行此操作。
在您希望包含在搜索中的OU之上定义您的基础,然后使用类似的过滤器:
(&(|(ou:dn:=TeamA)(ou:dn:=TeamB))(objectclass=inetorgperson)(sn=willeke))
让我们知道热点。