Я не уверен, как решить следующую проблему / реализовать мой сценарий. Может быть, кто-нибудь может дать мне несколько советов?
У меня есть приложение Spring MVC с Spring Security. Я также использую пользовательскую страницу входа. Пока все работает нормально, я могу аутентифицироваться и отображать вошедшего в систему пользователя на моем JSP, используя следующий код.
<sec:authorize ifAnyGranted="ROLE_USER">
Logged in as <sec:authentication property="principal.username" />
</sec:authorize>
Пользователи восстановлены из базы данных прямо сейчас. Код для этого в XML:
<jdbc-user-service data-source-ref="dataSource"
users-by-username-query="SELECT username, password , '1' AS enabled FROM users WHERE username = ?"
authorities-by-username-query="SELECT username, 'ROLE_USER' FROM users WHERE username = ?" />
Все отлично работает. Проблема в том, что на самом деле у меня есть пользовательский класс User, который я хотел бы использовать и, вероятно, сохранить в своем сеансе, поскольку последующие запросы к БД должны фильтровать результаты в соответствии с зарегистрированным в User.id.
Как бы я это сделал?
- Что мне нужно сделать, чтобы сохранить мой объект User в моем сеансе? Это правильный способ сделать это?
- Я использую Hibernate. Что такое Лучшая практика для фильтрации запросов, например для объектов с именем «Задача» (в диспетчере задач), в соответствии с зарегистрированным пользователем? (У меня есть столбец и свойство user_id в таблице задач в моей базе данных MySQL)
Любая помощь или подсказка очень ценится. Просто нужно какое-то направление: -)