#web-applications #jakarta-ee #containers
#веб-приложения #джакарта-ee #контейнеры
Вопрос:
У меня есть веб-приложение J2EE внутри Tomcat, которое я пишу.
Для входа пользователя в систему я сохранил измененные хэши паролей внутри MySQL. Для входа в систему пользователь вводит пароль, он хэшируется и сравнивается с паролем базы данных. Мне это кажется нормальным, но я слышал, что контейнер (Tomcat) предоставляет некоторые службы аутентификации пользователей.
Я немного изучил это, но все, что я могу найти, это как вручную добавлять учетные записи пользователей в систему. Однако я хотел бы, чтобы пользователи регистрировались, а контейнер обрабатывал динамические изменения.
Есть ли способ динамически изменять список учетных записей пользователей, чтобы позволить людям регистрироваться «на лету» с использованием контейнера J2EE?
Ответ №1:
Если вы используете Tomcat, вас может заинтересовать JDBCRealm, в котором могут быть пользовательские реализации, если вы хотите расширить его. Хотя Tomcat не является полноценным контейнером J2EE, вы можете прочитать обзор определения требований безопасности для веб-приложений для более стандартного подхода, который работает с любым контейнером J2EE.
Комментарии:
1. Что, если бы я использовал Glassfish? Сильно ли это будет отличаться?
2. Для целей аутентификации все вышесказанное применимо к Glassfish. Вероятно, вы найдете руководства по jdbcrealm в Google.