让所有用户进入OU java ldap中的subOus

让所有用户进入OU java ldap中的subOus,java,ldap,Java,Ldap,我试图将所有用户搜索到一个OU=“Usuarios”,但OU=“Usuarios”有一个subOus,例如: OU=通常情况 用户:伊万 欧:格伦特斯 用户:巴勃罗 我的问题是: 我需要找到用户ivan和pablo。但结果只会是伊万 守则: SearchControls controls = new SearchControls(); controls.setSearchScope(SearchControls.SUBTREE_SCOPE); String consulta = "(&

我试图将所有用户搜索到一个OU=“Usuarios”,但OU=“Usuarios”有一个subOus,例如:

OU=通常情况 用户:伊万 欧:格伦特斯 用户:巴勃罗

我的问题是:

我需要找到用户ivan和pablo。但结果只会是伊万

守则:

SearchControls controls = new SearchControls();
controls.setSearchScope(SearchControls.SUBTREE_SCOPE);
String consulta = "(& (objectClass=user))";
NamingEnumeration<SearchResult> renum = context.search("OU=Usuarios," + toDC(dominio),
                    consulta, controls);
SearchControls=newsearchcontrols();
控件.setSearchScope(SearchControls.SUBTREE_范围);
字符串consulta=“(&(objectClass=user))”;
NamingEnumeration renum=context.search(“OU=Usuarios,”+toDC(dominio),
咨询、控制);
我希望递归地执行此操作,而不是put(“OU=Gerentes,OU=Usuarios-Rimac”)


我该怎么做呢?

您的目录树层次结构是这样的吗

ou=Usarios
|     - ivan
|
+ou=Gerentes
      - pablo
您应该能够在
ou=Usarios
的基础上构建搜索,并获得以下所有内容,包括范围为
SUBTREE\u scope
的子ou

(&(objectclass=user)(|(uid=ivan)(uid=pablo)))
这样的过滤器应该同时找到ivan和pablo,如果您以
子树范围
的范围开始搜索的话

如果需要所有用户,则搜索字符串应为
(objectclass=user)

搜索库需要从根目录完全限定一件事

ou=Usarios,dc=company,dc=com

刚刚意识到
toDC(dominio)
是域组件-抱歉。请提供有关LDAP服务器和DIT结构的更多信息。