인증

    [Spring Security] 기본 로그인 인증 로직

    [Spring Security] 기본 로그인 인증 로직

    이번에는 스프링 시큐리티에서 기본 HTTP 인증 로직이 어떻게 돌아가는지 알아보자. Basic HTTP Authentication 클라이언트로 요청이 들어오면 SecurityFilterChain에서 다음과 같은 동작이 일어난다. 1. 클라이언트가 인증되지 않은 요청을 한다. 2. 스프링 시큐리티의 FilterSecurityInterceptor는 AccessDeniedException 예외를 던지면서 요청을 거절한다. 3. 유저가 인증되지 않았기 때문에 ExceptionTranslationFilter는 인증에 필요한 과정을 실행한다. - AuthenticationEntryPoint의 구현체인 Basic AuthenticationEntryPoint는 WWW-Authenticate header를 보낸다. - ..

    [Spring Security] 스프링 시큐리티 인증 로직

    [Spring Security] 스프링 시큐리티 인증 로직

    스프링 시큐리티의 큰 구조에 이어서 스프링 시큐리티의 인증 로직과 구조에 대해서 자세히 알아보자. 지난 포스트를 안 본 사람은 아래 링크를 참고하자. https://brightmango.tistory.com/360 [Spring Security] 스프링 시큐리티와 구조, 동작 원리 Spring Security란? 입증, 권한, 그리고 흔한 공격에 대한 방어적 기술을 제공하는 프레임워크이다. 1. 입증이란 특정 리소스에 접근하는 사용자의 신원을 어떻게 증명할 것인지에 대한 부분이다. brightmango.tistory.com SecurityContextHolder 스프링 시큐리티 인증 모델의 핵심은 누가 인증이 되었는지 저장하는 SecurityContextHolder이다. 만약에 이 holder가 값을 가..