Как сохранить, а затем проверить хешированный пароль в ApacheDS?

Я пытаюсь добавить пользователей в каталог ApacheDS (использую .NET DirectoryServices API) и получаю сообщение об ошибке при сохранении записи в каталоге.

Насколько я вижу, пароль хранится в виде хэша Salted SHA, и для проверки введенного пользователем пароля мне нужно знать исходный хэш, верно?

Используя Apache Directory Studio, я могу увидеть исходную соль с помощью «Редактора паролей», поэтому соль, очевидно, где-то хранится, так как же мне сохранить соль в записи каталога, чтобы я мог позже получить ее, чтобы посолить и хешировать пользователя ввести и проверить сохраненный пароль?


person Greg B    schedule 29.01.2015    source источник
comment
Если вашей целью является проверка пользователя, вам следует выполнить привязку (предоставив DN пользователя и пароль в открытом виде) для пользователя к экземпляру LDAP. Вам никогда не понадобится сам хэш.   -  person jwilleke    schedule 31.01.2015
comment
Не обязательно. Вы можете аутентифицироваться как приложение и проверять пароли других пользователей.   -  person user2108278    schedule 22.02.2017


Ответы (1)


Соль хранится вместе с хэшем, вы можете удалить имя механизма хеширования, найденное в начале значения «userPassword» (например, {ssha}), а затем извлечь соль и пароль из оставшегося значения в зависимости от типа хеширования. механизм.

person kayyagari    schedule 04.02.2015
comment
Обычно приложение не может получить доступ к полю пароля. Мне нужно выполнить сравнение LDAP. - person user2108278; 22.02.2017