首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenDJ与UnboundId

OpenDJ与UnboundId
EN

Stack Overflow用户
提问于 2014-04-18 08:20:50
回答 2查看 590关注 0票数 2

我有以下问题。有工作的OpenDJ服务器,连接使用UnboundID LDAP为Java。我学会了如何搜索特定的条目,但是对于给定的条目,如何获得"entryUUID“属性的值呢?OpenDJ说这是“不可编辑的属性”之一,我在SearchResultEntry对象中看不到使用getAttributes()方法的任何属性。

我的意思是:

代码语言:javascript
复制
public String getUserUUID(String cn) {
   SearchResult sr = connection.search(dn, SearchScope.SUB, Filter.createEqualityFilter("cn",          cn));
   if (sr.getEntryCount() > 0){     
       return sr.getSearchEntries().get(0).getAttributeValue("entryUUID");
   }
}

但是在SearchResultEntry中的属性映射中没有参数“不可编辑的参数”。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-05-11 20:57:33

EntryUUID是一个不可编辑的操作属性.使用LDAP时,只有在搜索时才返回操作属性,如果您特别请求它们的话。在您的示例中,搜索请求没有指定请求的属性,因此意味着返回所有用户属性。我确信UnboundID SDK有一个搜索方法,它接受要返回的属性列表。

你好,路多维奇

票数 2
EN

Stack Overflow用户

发布于 2016-12-14 08:53:33

EntryUUID是一个操作属性,默认情况下只返回用户属性。为此,您必须显式地请求操作属性。您可以使用ALL_OPERATIONAL_ATTRIBUTES

下面的方法适用于JavaLDAPSDKforJava2.3.8。

代码语言:javascript
复制
public String getUserUUID(String cn) throws LDAPSearchException {
    SearchResult sr = connection.search(dn, SearchScope.SUB, Filter.createEqualityFilter("cn",cn), ALL_OPERATIONAL_ATTRIBUTES);
    if (sr.getEntryCount() > 0){
        return sr.getSearchEntries().get(0).getAttributeValue("entryUUID");
    }
    return "";
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23150225

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档