Содержание
В этой короткой статье будет рассказано как получить объект зарегистрированного пользователя в Spring Security.
В фреймворке Spring MVC есть полезный класс Authentication из пакета org.springframework.security.core. В этом классе содержится вся информация относительно пользователя, вошедшего в систему, а именно следующие методы:
Collection
Object getCredentials() - возвращает список полномочий, которыми проверяется, что пользователь является верным. Обычно это пароль, но может быть что-угодно.
Object getDetails() - возвращает дополнительные детали запроса аутентификации. Это может быть IP-адрес, серийный номер сертификата и др.
Object getPrincipal() - возвращает объект пользователя, вошедшего в систему.
String getName() - возвращает имя пользователя, вошедшего в систему.
boolean isAuthenticated() - возвращает true если пользователь авторизован.
Из этого списка наиболее интересным является метод getPrincipal(), который возвращает объект пользователя, который, в основном, создается разработчиком и может содержать любые необходимые данные.
Пример использования:
User user = (User)SecurityContextHolder.getContext().getAuthentication().getPrincipal();
< | Spring Security. Страница Login | Logout в Spring Security | > |