我需要获取ldap的所有组。我可以使用此查询获取成员中某个用户的所有组:
Hashtable<String, String> parameters = new Hashtable<String, String>();
parameters.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
parameters.put(Context.PROVIDER_URL, url);
parameters.put("com.sun.jndi.ldap.connect.timeout", connectTimeout);
parameters.put("com.sun.jndi.ldap.read.timeout", readTimeout);
parameters.put(Context.SECURITY_AUTHENTICATION, "simple");
parameters.put(Context.SECURITY_PRINCIPAL, (username + "@" + domain));
parameters.put(Context.SECURITY_CREDENTIALS, password);
DirContext dirContext = new InitialDirContext(parameters);
SearchControls searchControls = new SearchControls();
searchControls.setSearchScope(SearchControls.SUBTREE_SCOPE);
searchControls.setReturningAttributes(
new String[] { "distinguishedName", "sn", "givenname", "mail", "cn", "memberOf" });
NamingEnumeration<?> results = dirContext.search("dc=" + domain.substring(0, domain.indexOf('.')) + ",dc="
+ domain.substring(domain.indexOf('.') + 1), "sAMAccountName=" + username, searchControls);
dirContext.close();
我可以得到memberof中的组。但我需要独立于成员的所有组。我需要ldap中的所有组
暂无答案!
目前还没有任何答案,快来回答吧!