Spring MVC получаем текущего пользователя в качестве параметра (@AuthenticationPrincipal)

Обычно в Spring Framework текущий пользователь получается примерно таким кодом:

Однако в контроллерах можно получать текущего пользователя в качестве параметра метода. Для этого нам нужно создать свою аннотацию, которая будет аннотирована аннотацией org.springframework.security.web.bind.annotation.AuthenticationPrincipal:

Затем в конфигурации Spring MVC добавить строки, которые будут заполнять параметры контроллеров текущим пользователем:

Как видите здесь мы просто добавили AuthenticationPrincipalArgumentResolver  в секцию argument-resolver.

Теперь мы можем помечать параметры методов контроллера, которые обрабатывают запросы с помощью @RequestMapping, нашей аннотацией @CurrentUser, и они будут заполнены текущим экземпляром класса с описанием залогиненного пользователя Spring Security. Пример:

 


Поделиться:
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...

Spring MVC получаем текущего пользователя в качестве параметра (@AuthenticationPrincipal): 3 комментария

Добавить комментарий

Ваш e-mail не будет опубликован.

*