SecurityContextHolder란

·
Spring
Spring Security 사용 시 SecurityContextHolder를 통해 인증 정보를 저장하고 가져오게 되는데 어떤 방식으로 Authentication을 저장하는지 간략하게 알아보자. 계층 구조인증된 사용자 정보인 Principal을 Authentication에서 관리, Authentication을 SecurityContext에서 관리, SecurityContext는 SecurityContextHolder가 관리한다.ThreadLocal을 사용하여 Authentication을 저장한다.(한 스레드 내에서 사용하는 공용 저장소) 이를 통해 Authentication을 한 스레드 내에서 공유한다. 즉, 스레드가 달라지면 제대로 된 인증 정보를 가져올 수 없다.ThreadLocal 모드모드 설명MO..