Хранение вопросов сброса пароля в LDAP - PullRequest
2 голосов
/ 25 июня 2009

Я хочу хранить ответы на вопросы о сбросе пароля в LDAP. Я знаю, что ответы должны быть перемешаны с солью. Я хотел бы понять следующее:

  • Какой атрибутКласса мы должны использовать?
  • Можно ли заставить сервер LDAP выполнять операции хеширования?
  • Есть ли способ использовать операцию сравнения LDAP, если контейнер не показывает, как он выполняет хеширование?
  • Отличается ли ответ в зависимости от поставщика услуг каталогов, с которым вы работаете?
  • Можно ли для этой цели расширить атрибут attributeClass?

Ответы [ 4 ]

1 голос
/ 02 июля 2009

Я искал такую ​​функциональность в Sun Directory Server, но не смог ее найти. В итоге я реализовал это в своем клиентском коде (используя java.security.MessageDigest, если я правильно помню). Это не было много работы, но я бы предпочел, чтобы это обрабатывалось сервером.

UPDATE

Oracle Internet Directory 11g поддерживает атрибуты хеширования: http://download.oracle.com/docs/cd/E17904_01/oid.1111/e10029/data_privacy.htm#BABFFHIH

0 голосов
/ 29 мая 2013

Любой тип атрибута строки каталога (http://tools.ietf.org/html/rfc4517#page-8)) можно использовать, если вы хотите сохранить хешированное / зашифрованное значение в виде читаемой строки, скажем, в кодировке Base64. Вы также можете сохранить его в любом типе атрибута строки октета. (http://tools.ietf.org/html/rfc4517#page-19).

Если ответы на секретные вопросы необходимо восстановить или требуется некоторая снисходительность во время проверки (например, безразличный / нижний / верхний регистр), шифрование может быть лучшим вариантом. Было бы предпочтительно иметь промежуточное программное обеспечение, чтобы сделать это тоже. Как сказал Терри Гарднер, это зависит от того, какое программное обеспечение сервера каталогов вы используете. Например, IBM Security Directory Server может быть сконфигурирован для шифрования значений атрибутов. Шифрование выполняется с использованием элементов безопасности, указанных при установке программного обеспечения. Приложение не должно делать ничего особенного. Программное обеспечение Novell, Red Hat и Oracle / Sun Directory Server также поддерживает зашифрованные атрибуты. Я не эксперт по AD, но я думаю, что он не поддерживает зашифрованные атрибуты. Я думаю, что то же самое для OpenLDAP.

0 голосов
/ 25 июня 2011

Может быть возможно определить атрибут для секретного вопроса / ответа, используя синтаксис атрибута, который подлежит хешированию / шифрованию, например userPassword. Это зависит от того, какой продукт сервера каталогов вы используете.

0 голосов
/ 25 июня 2009

Просто идея, которая может быть полностью отключена, почему бы не иметь дублирующую учетную запись каждого пользователя, где пароль является ответом на секретный вопрос?
Таким образом, вам не нужно будет думать о хешировании / соли / шифровании, и для подтверждения ответа вы вызовете API входа пользователя в систему.
Эти дубликаты пользователей, конечно, будут принадлежать к очень ограниченным группам безопасности.

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