Spring Security의 필터 체인에 사용자 정의 필터를 추가하는 설정

song yuheon·2023년 9월 4일
0

Spring

목록 보기
43/93
post-thumbnail
post-custom-banner

필터 체인이란?


필터 체인은 HTTP 요청이 애플리케이션에 도착할 때 Spring Security에 의해 순차적으로 실행되는 일련의 필터들을 의미한다.


코드 내에서 필터 동작 순서


  1. http.addFilterBefore(jwtAuthorizationFilter(), JwtAuthenticationFilter.class);
    => JwtAuthenticationFilter가 실행되기 전에 jwtAuthorizationFilter()가 먼저 실행된다.
  2. http.addFilterBefore(jwtAuthenticationFilter(), UsernamePasswordAuthenticationFilter.class);
    => jwtAuthenticationFilter()UsernamePasswordAuthenticationFilter보다 먼저 실행하도록 설정한다.

jwtAuthorizationFilter() 먼저 실행되어 JWT의 유효성을 검사
=> jwtAuthenticationFilter()가 실행되어 로그인 요청을 처리
=> UsernamePasswordAuthenticationFilter 실행


필터 설명


  1. jwtAuthorizationFilter()
    JWT 토큰을 검증하고 인가하는 작업을 담당한다.

  2. jwtAuthenticationFilter()
    로그인하고 JWT 토큰을 생성한다.

  3. UsernamePasswordAuthenticationFilter.class
    Spring Security의 기본 인증 필터이다.
    사용자가 제공한 username과 password를 사용하여 인증을 수행한다.


profile
backend_Devloper
post-custom-banner

0개의 댓글