繁体   English   中英

oracle ldap搜索中似乎未返回某些属性

[英]Some attributes don't appear to be returned on oracle ldap search

由于某种原因,我的LDAP搜索似乎未返回给定DN可用的所有属性。

使用以下代码:

DirContext ctx = new InitialDirContext(mEnv);
DirContext obj = (DirContext)ctx.lookup(dn);
Attributes attrs = obj.getAttributes(new CompositeName(""));

(其中mEnv是有效的Properties类,而dn是有效的DN)

我仅获得7个属性(“ cn”,“ orclpassword”,“ objectclass”,“ mail”,“ authpassword; orclcommonpwd”,“ userpassword”,“ sn”),而在Oracle Directory Manager中可以看到还有更多(包括“ orclIsEnabled”和“ pwdaccountlockedtime”)

是否有人能够阐明“缺失”属性。

(注意:我使用LDAP的经验非常有限)

谢谢 :-)

LDAP搜索不会返回您在那里知道的属性有两种基本可能性:

  1. 您无权查看它们(检查访问控制信息,或以特权更大的用户身份绑定)

  2. 它们被定义为“可操作”(内部)属性,默认情况下不会返回这些属性,但是如果您按名称(通过使用带有属性名称数组的getAttributes()版本)来请求它们,这些属性将存在。

遇到了这个:

“ oracle不会通过OID LDAP接口公开所需的属性。”

http://blog.mikesidoti.com/2007/05/how-to-query-oid-to-find-expired.html

根据文档, pwdaccountlockedtime绝对是可操作的属性。

查询基础数据库(如您的链接中所示)应该是最后的选择。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM