Я довольно новичок в Spring Security и столкнулся с проблемой, надеюсь, кто-то здесь поможет:
DaoAuthenticationProvider извлекает пользователя ТОЛЬКО по имени пользователя (когда вы реализуете UserDetailsService.loadUserByUsername (String username), но моя проблема заключается в том, что наш пароль хэшируется в БД с помощью функции БД, то есть, если я получаю по имени пользователя, он не будет совпадать с предоставленным паролем, поскольку то, что я получаю из БД, является хешированной версией.
Как мне реализовать решение в Spring Security, где я могу сопоставить имя пользователя и пароль на стороне БД, прежде чем я получу объект User и помечу пользователя как аутентифицированного?
Что-то вроде UserDetailsService.loadUserByUsernameAndPassword (String username, String password) - это то, что я ищу.
У меня такое чувство, что мне придется готовить свою собственную реализацию, так как я где-то читал, что Spring Security никогда не отправляет пароль в БД. Если я это сделаю, кто-нибудь, пожалуйста, укажите мне правильное направление, как начать?
Любая помощь будет высоко ценится. Спасибо!