У этого есть несколько движущихся частей, так что я буду проходить через вещи довольно медленно.
У меня есть веб-приложение на Java, которое зарегистрировало несколько тысяч пользователей и сохранило их в БД MySQL. Пароли для каждого пользователя были хэшированы с использованием SHA1, плюс немного дополнительной хитрости, включая случайно сгенерированную соль.
У меня также есть настройка сервера LDAP (OpenLDAP). Мне удалось настроить его на использование той же базы данных MySQL, что и выше, в качестве источника данных.
Существует сервер Lotus Domino. Когда пользователи регистрируются через веб-приложение java, они также добавляются на сервер домино.
Когда пользователи пытаются войти на сервер Domino, у нас возникают проблемы. В настоящее время мы используем аутентификацию LDAP (на сервере LDAP выше). Это работает, если пароли хранятся в виде открытого текста или прямого хэширования SHA1, но сервер LDAP не может аутентифицировать тех пользователей, чьи пароли зашифрованы веб-приложением java выше (он использует SHA1 плюс «дополнительные функции»).
Так что я действительно не уверен, как подходить к вещам. Кто-то предлагает использовать LDAP с аутентификацией SASL - но я даже не уверен, что это сработает .... Мне бы пришлось каким-то образом повторить тот же алгоритм шифрования, который используется в веб-приложении java.
Есть идеи?