Filter
- JwtAuthenticationFilter
- 로그인 시도 시 아이디, 비밀번호를 검증하고, 성공하면 JWT 토큰 생성 후 클라이언트에 반환하는 필터
- JwtVerificationFilter
- 클라이언트가 서버로 요청을 보낼 때 JWT 토큰이 유효한지 검증하는 필터
- 요청 헤더에 포함된 JWT 토큰의 유효성을 확인, 유효하면 해당 사용자를 인증된 상태로 설정
handler
filter 패키지
Spring Security 필터들을 포함하며, 요청을 가로채어 JWT 토큰의 인증과 검증을 처리합니다.
JwtAuthenticationFilter
- 로그인 시도 시 사용자의 자격 증명(아이디와 비밀번호)을 검증하고, 성공하면 JWT 토큰을 생성하여 클라이언트에 반환하는 필터입니다.
- 주로 로그인 요청을 처리하며, 이 필터를 통과한 사용자는 이후의 요청에 대해 JWT 토큰을 사용할 수 있게 됩니다.
JwtVerificationFilter
- 클라이언트가 서버로 요청을 보낼 때 JWT 토큰이 유효한지 검증하는 필터입니다.
- 요청 헤더에 포함된 JWT 토큰의 유효성을 확인하여, 유효하면 해당 사용자를 인증된 상태로 설정합니다.
handler 패키지
보안 관련 예외 처리 및 성공/실패 처리 핸들러들을 포함합니다.
MemberAccessDeniedHandler
- 사용자가 권한이 없는 리소스에 접근하려 할 때 발생하는
AccessDeniedException을 처리합니다.
- 이 핸들러는 권한이 없는 접근 시 적절한 에러 메시지를 반환합니다.
MemberAuthenticationEntryPoint
- 인증되지 않은 사용자가 보호된 리소스에 접근하려 할 때 발생하는 예외를 처리합니다.
- 일반적으로 401 Unauthorized 응답을 반환합니다.
MemberAuthenticationFailureHandler
- 인증(로그인) 실패 시 동작하는 핸들러입니다.
- 사용자가 잘못된 자격 증명을 제공할 때, 적절한 에러 메시지를 클라이언트에 반환합니다.
MemberAuthenticationSuccessHandler
- 인증(로그인) 성공 시 동작하는 핸들러입니다.
- 사용자에게 JWT 토큰을 생성하여 응답에 포함시키는 역할을 합니다.
jwt 패키지
JWT 토큰의 생성 및 검증을 담당하는 유틸리티 클래스들을 포함합니다.
JwtTokenizer
- JWT 토큰의 생성, 검증, 만료 시간 설정 등을 처리하는 핵심 클래스입니다.
- 사용자의 정보를 기반으로 JWT 토큰을 생성하고, 클라이언트 요청 시 해당 토큰을 검증합니다.
userdetails 패키지