[SPRING] 스프링 보안으로 세션 ID 검색하기
SPRING스프링 보안으로 세션 ID 검색하기
로깅 목적으로, 현재 세션의 ID를 기록 된 라인에 자동으로 추가하는 로거를 만들고 싶습니다. 로그인 한 사용자의 경우 이는 문제가되지 않습니다.
((WebAuthenticationDetails) SecurityContextHolder.getContext().getAuthentication().getDetails())
.getSessionId()
문제는 사용자가 로그인하기 전에 getAuthentication ()이 null을 반환한다는 것입니다. 현재 응답이나 그 종류의 어떤 것도 참조하지 않고 세션 ID를 가져 오는 또 다른 방법이 있습니까?
감사!
해결법
-
==============================
1.너는 사용할 수있다.
너는 사용할 수있다.
RequestContextHolder.currentRequestAttributes().getSessionId();
이것은 Spring의 RequestContextHolder에 의존하기 때문에 Spring MVC의 DispatcherServlet과 함께 사용하거나 RequestContextListener를 선언해야한다. 존재하지 않으면 세션도 생성됩니다.
from https://stackoverflow.com/questions/3542026/retrieving-session-id-with-spring-security by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 스프링 보안을 사용하여 실패한 로그인에서 사용자 이름을 얻으려면 어떻게해야합니까? (0) | 2019.03.04 |
---|---|
[SPRING] URL에서 jsessionid 제거 (0) | 2019.03.04 |
[SPRING] 스프링 빈을 동적으로 주입 (0) | 2019.03.04 |
[SPRING] Spring 애플리케이션 컨텍스트에 사전 구성된 Bean 추가하기 (0) | 2019.03.04 |
[SPRING] 봄 - 트랜잭션 읽기 전용 (0) | 2019.03.04 |