2012-06-27 4 views
0

Я использую openDJ LDAP-сервер для процесса аутентификации Java-проекта с использованием JNDI. Большинство других вещей, таких как пароль, истек, неверные учетные данные могут обрабатываться с использованием исключений. (с использованием понятного сообщения в исключении или с использованием кодов ошибок в некоторых случаях)LDAP «force-change-on-add» не может быть правильно обработан

ds-cfg-force-change-on-add и ds-cfg-force-change-on-reset атрибуты в политике паролей установлены в true.

Но когда только что созданный пользователь входит в систему или, когда пользователь входит в систему после сброса пароля администратором, исключений не происходит.

Может кто-нибудь сказать мне, как с этим справиться.

+0

Рассмотрите возможность использования UnboundID LDAP SDK вместо JNDI и работу код устранения неполадок будет намного проще. JNDI не следует использовать для нового кода. См. Также: [LDAP: Практики программирования] (http://www.ldapguru.info/ldap/ldap-programming-practices.html) –

+0

Спасибо Терри. Я тоже посмотрю на это. Однако нашел альтернативный способ для этой проблемы сброса силы, используя атрибут 'ds-pwp-last-login-time' пользователя. – Sanj

ответ

0

В качестве альтернативы в данном случае используются элементы запроса политики и управления паролями (example), определенные в политике draft-behera-ldap-password, поддерживаемые OpenDJ LDAP SDK и другими SDK. Вы передаете управление запросом на сервер каталогов, и вы возвращаете контроль ответа.

Контроль ответ указывает, должен ли пароль быть изменен, поэтому запрашиваемый изменения пароля не удалось завершить, сколько времени осталось до истечения срока действия и т.д.