gpt4 book ai didi

java - 无法从java中的 Activity 目录的OU中读取用户属性

转载 作者:行者123 更新时间:2023-11-29 09:09:10 26 4
gpt4 key购买 nike

我在 AD 服务器中有 OU(例如 ou1)并且它有一个用户(例如 user1)。我想查询属于AD目录服务器的一个OU的所有用户。我正在尝试如下所示:

SearchControls ouctls = new SearchControls();
String[] ouattrIDs = {"displayname", "mail", "canonicalName", "memberOf","Users"};
ctls.setReturningAttributes(ouattrIDs);
ctls.setSearchScope(SearchControls.SUBTREE_SCOPE);

NamingEnumeration ouanswer = ctx.search("dc=exam,dc=com","(objectclass=group)", ouctls);

通过这些我没有找到填充的用户属性。

while (ouAnswer.hasMoreElements()) {
SearchResult rslt = (SearchResult) ouAnswer.next();
Attributes attrs = rslt.getAttributes();
//log.debug("Group attributes"+attrs.get("cn"));
System.out.println("gr-->"+attrs.toString());
Attribute temp = attrs.get("cn");
}

你能帮我找到一个 OU 下的用户对象吗?

最佳答案

如果您的意思是 user1 从属于 ou=ou1 并且您知道 ou 的专有名称,请将其用作搜索请求中的基础对象。例如,如果 ou 直接从属于 dc=exam,dc=com,则使用 ou=ou1,dc=exam,dc=com 作为搜索中的基础对象。在这种情况下,如果您知道用户条目直接从属于 ou=ou1,则可以将搜索范围收紧到一级。否则,必须使用子树范围。使用筛选器缩小将从服务器返回的结果。在你给出的例子中,也许过滤器应该是:(&(cn=user1)(objectclass=group))。这假定 user1 的命名属性是 cn 并且该条目是 objectClass `group 的成员。在 LDAP 客户端的代码中使用正确的值。

另见

关于java - 无法从java中的 Activity 目录的OU中读取用户属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13271590/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com