🟡 토큰 발급이 안되어있을 경우
- 클라이언트 요청
- SecurityConfig에 등록된 JwtAuthenticationFilter 호출
- 토큰정보가 없기 때문에 다음 필터 호출
🟡 토큰을 발급하는 경우(로그인)
- 클라이언트 요청
- SecurityConfig에 등록된 JwtAuthenticationFilter 호출
- 토큰정보가 없기 때문에 다음 필터 호출
- 로그인 url은 SecurityConfig에 예외처리 하였기 때문에 필터에 걸리지 않는다.
- 사용자의 로그인id, pw를 사용하여 UsernamePasswordAuthenticationToken 객체 생성
- authenticationManagerBuilder를 이용하여 CustomUserDetailsService 의 loadUserByUsername 메소드 호출
- loadUserByUsername 의 반환값인 UserDetails 객체를 다시 Authentication 타입의 객체로 반환
- Authentication을 이용하여 토큰 생성
🟡 토큰 발급이 되어있는 경우
- 클라이언트 요청
- SecurityConfig에 등록된 JwtAuthenticationFilter 호출
- JwtAuthenticationFilter 에서 토큰 유효성 검사 후 통과되면 다음 필터 호출
https://velog.io/@jeon0728/Spring-Security-JWT-%EC%88%9C%EC%84%9C
'Web > Spring Security' 카테고리의 다른 글
JWT 방식 OAuth2.0 클라이언트 동작 원리 (0) | 2025.02.26 |
---|---|
Spring Security 6.x.x JWT 보안 요소 추가 (0) | 2025.02.20 |
Spring Security 6.x.x JWT 기반 인증 인가 (0) | 2025.02.15 |
Spring Security 6.x.x 세션 기반 인증 인가 (0) | 2025.02.13 |
Thymeleaf + Spring Security 사용 시 principal 변수 접근 (0) | 2023.04.17 |