@j_dmg

Как написать авторизацию/аутентификацию на Java?

Добрый день! Пишу проект на Java EE по просьбе знакомых в стиле "получится - дадим деньжат, не получится - не беда"
Использую WildFly, JPA, JAX-RS.

Имеется готовый (пишется не мной) фронт, который отправляет мне на бэк логин и пароль юзера для регистрации/входа. Адекватно ли городить свое решение (описано ниже)? Если нет, подскажите библиотеки для этих целей. Важно чтобы они были актуальны и популярны в "продакшене", ибо я самоучка и в обозримом будущем хочу искать вакансию джуна.

Такой вариант входа на сайт крутится сейчас в голове: через JAX-RS принимаю логин с паролем, а так же забираю id сессии юзера. Ищу среди экземпляров сущности хибернейта нужного юзера с нужным паролем. Если нахожу - записываю id сессии в поле этой же сущности и возвращаю на фронт json с ответом что все ок, вы вошли. При последующих запросах к данным сравниваю сохраненный id и текущий id сессии и если не совпадает - извольте перепройти авторизацию для получения данных.
Если совпадает - возвращаю данные.
Решение кажется мне рабочим, но чутье подсказывает что это здоровенный деревянный небезопасный костыль :D

Читал про KeyCloak, Java EE Security и JAAS. JAAS и JEE Security, как я понял, позволяют реализовать вход если есть jsp или jsf, а KeyCloak пока оставил в покое, там придется хорошо и долго копаться.

P.S. Про Spring знаю, но сейчас учу именно Java EE, ибо слышал что знать надо бы и то и другое, но если сначала учишь Spring, то EE потом кажется слишком усложненным.
  • Вопрос задан
  • 97 просмотров
Решения вопроса 1
leahch
@leahch
Я мастер на все руки, я козлик Элек Мэк :-)
Рекомендую посмотреть на https://shiro.apache.org
Делается за 15 минут, если по туториалу. Если чего посерьезнее прикручивать, то смотрите в https://www.pac4j.org, они с shiro туда-сюда взаимно. И да, тут и спринг и все остальное.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы