Получить объект UserDetails из контекста безопасности в контроллере Spring MVC

Я использую Spring Security 3 и Spring MVC 3.05.

Я хотел бы напечатать имя пользователя, вошедшего в систему, как я могу получить UserDetails в своем контроллере?

@RequestMapping(value="/index.html", method=RequestMethod.GET)
    public ModelAndView indexView(){
         UserDetails user = ?
                mv.addObject("username", user.getUsername());
        ModelAndView mv = new ModelAndView("index");
        return mv;
    }   
65
задан BalusC 14 August 2015 в 06:03
поделиться

1 ответ

Можно использовать ниже кода для обнаружения принципала (пользовательская электронная почта, кто вошел в систему)

  org.opensaml.saml2.core.impl.NameIDImpl principal =  
  (NameIDImpl) SecurityContextHolder.getContext().getAuthentication().getPrincipal();

  String email = principal.getValue();

, Этот код написан сверху SAML.

0
ответ дан 24 November 2019 в 15:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: