我的目标是检索给定对象类在LDAP服务器上定义的所有属性。到目前为止我所做的是:
List<SearchResult> searchLdapUsers = searchLdapUsers(ldapConfig, null, null, null, null, null, 0);
if (searchLdapUsers != null && searchLdapUsers.size() > 0) {
for (SearchResult searchResult : searchLdapUsers) {
Attributes attrs = searchResult.getAttributes();
if (attrs != null) {
NamingEnumeration<? extends Attribute> all = attrs.getAll();
while (all.hasMoreElements()) {
Attribute attribute = (Attribute) all.nextElement();
hs.put(attribute.getID(), attribute.getID());
}
}
}
}
此代码将从LDAP服务器查询所有用户并获取属性定义。这工作正常,但会遇到大量用户的问题。
有没有其他方法可以直接找到给定的对象类并获取所有属性定义?
答案 0 :(得分:0)
大多数LDAP服务器通过LDAP公开其架构,并且根据LDAP规范,每个条目都应具有指向架构条目的操作属性(subSchemaSubEntry)。因此,阅读模式应该为您提供所有的objectClasses及其属性定义。