Некоторые атрибуты не возвращаются при поиске в Oracle - PullRequest
2 голосов
/ 18 февраля 2010

По какой-то причине мой поиск по LDAP, похоже, не возвращает все атрибуты, доступные для данного DN.

Использование кода фолдинга:

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

(где mEnv - действительный класс свойств, а dn - действительный DN)

Я получаю только 7 атрибутов ("cn", "orclpassword", "objectclass", "mail", "authpassword; orclcommonpwd", "userpassword", "sn"), тогда как я вижу в Oracle Directory Менеджер, который есть еще много (в том числе "orclIsEnabled" и "pwdaccountlockedtime")

Может ли кто-нибудь пролить свет на «недостающие» атрибуты.

(Примечание: мой опыт работы с LDAP довольно ограничен)

Спасибо: -)

Ответы [ 3 ]

5 голосов
/ 18 февраля 2010

Существует две основные возможности, по которым поиск LDAP не вернет атрибуты, которые, как вы знаете, существуют:

  1. У вас нет прав на их просмотр (проверьте информацию об управлении доступом или свяжите как более привилегированный пользователь)

  2. Они определены как «операционные» (внутренние) атрибуты, которые не возвращаются по умолчанию, но будет присутствовать, если вы попросите их по имени (используя версию getAttributes (), который принимает массив имен атрибутов).

0 голосов
/ 19 февраля 2010

pwdaccountlockedtime определенно является рабочим атрибутом согласно документации .

Запрос базовой базы данных (как в вашей ссылке) должен быть последним средством.

0 голосов
/ 18 февраля 2010

наткнулся на это:

"оракул не выставляет нужного атрибуты через OID LDAP интерфейс. "

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...