반응형
- 1편 스프링시큐리티 구조와 프로젝트 생성: https://malwareanalysis.tistory.com/143
- 2편 스프링시큐리티가 어떻게 세션을 이용할까? : https://malwareanalysis.tistory.com/179
- 3편 컨트롤러에서 인증정보 조회: https://malwareanalysis.tistory.com/180
- 4편 인메모리 사용자: https://malwareanalysis.tistory.com/176
- 5편 설정 오버라이드: https://malwareanalysis.tistory.com/210
3편에서는 컨트롤러에서 스프링시큐리티로 로그인한 사용자 정보를 어떻게 가져오는지 설명합니다.
▶ 영상(20:59 ~ ): https://youtu.be/ewslpCROKXY?t=798
Controller에서 인증 정보 로드
git 링크: https://github.com/choisungwook/springsecurity-youtube/blob/chatper_1/src/main/java/com/demo/springseucurity/controller/DemoController.java
Controller에서 인증정보를 가져오려면 @AuthenticationPrincipal 애노테이션을 사용하시면 됩니다. 이 애노테이션은 로그인 정보를 SpringSecurity User객체로 파싱됩니다. 인증정보는 로그인이 되어있어야만 가져올 수 있습니다.
@GetMapping("/session")
public ResponseCookieDTO hello(@AuthenticationPrincipal User user, HttpSession HttpSession) {
String username = "empty";
String session_id = "empty";
if (user == null){
System.out.println("user is null");
} else {
session_id = HttpSession.getId();
username = user.getUsername();
}
return new ResponseCookieDTO(username, session_id);
}
[그림 1]예제는 로그인한 사용자의 이름을 가져오는 예제입니다.
반응형
'전공영역 공부 기록' 카테고리의 다른 글
자바스크립트(es6) export default (0) | 2021.11.10 |
---|---|
21.11.9일 일하면서 알게 된 것 (0) | 2021.11.09 |
스프링시큐리티 2편 - 세션 (0) | 2021.10.31 |
proxmox 커뮤니티 저장소 수정 (0) | 2021.10.31 |
Hyper-V 비활성화 (0) | 2021.10.31 |