Аутентификация зашифрованного пароля с помощью j_security_check
Я пытаюсь аутентифицировать имя пользователя и пароль, используя j_security_check с tomcat. База данных postgresql хранит пароль в зашифрованном виде, и я не уверен (вообще), как сравнить простой текстовый пароль с зашифрованным паролем базы данных.
Заранее спасибо!
1 ответ
В вашем Realm
конфигурации (которую я буду считать DataSourceRealm, так как вы не предоставили никакой информации о своей конфигурации), вы можете добавить digest
атрибут, который позволит вам выбрать алгоритм хеширования (в понимании вашей виртуальной машины Java), который будет применяться, когда tomcat сравнивает пароли.
Здесь также обсуждается bugzilla tomcat, чтобы добавить лучшую реализацию (например, bcrypt). Это еще не реализовано, но всегда есть возможность создать свой собственный Realm
сделать это.