MelonPeach

현재 세션 사용자의 정보를 알고 싶은 경우 다음 방법들을 이용한다.

우선

1. Controller에서 정보를 받는 방법.

@RequestMapping("/") public String user(Principal principal) { System.out.println(principal.getName()); return "user"; }

2. SpringContextHolder를 사용하는 방법.

Authentication auth = SecurityContextHolder.getContext().getAuthentication(); System.out.println(auth.getName());

3. 스프링 시큐리티 User 클래스로 형변환하여 정보를 조회하는 방법

User user = (User) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); System.out.println(user.getUsername());

이때 User 클래스는
org.springframework.security.core.userdetails.User

이 글을 공유합시다

facebook twitter googleplus kakaostory naver