auth-jwt-redis

/api/auth/register : 회원가입/api/auth/login : 로그인/api/auth/logout : 로그아웃/api/auth/reissue : 토큰재발급/api/auth/login
전체 구조

POST /api/auth/login 요청{"email": "user@test.com", "password": "1234"}JwtAuthenticationFilter
AuthorizationFilter

@Valid 를 통해 Request의 형식이 맞는지 검사한다UsernamePasswordAuthenticationTokenAuthenticationManager 에게 던진다
UserService 에게 받은 요청을 어떤 Provider에게 위임할지 결정한다AuthenticationProvider 에게 위임!AuthenticationProvider 는 유저 검증을 위해서 DB에 있는 실제 유저 정보가 필요하다. 그러나 스스로 가져올 수 없으므로…CustomUserDetailService를 호출해 DB에 있는 유저 정보를 가져온다
JwtTokenProvider 에게 넘긴다generateToken() 으로 AccessToken, RefreshToken 을 생성한다RefreshToken 을 DB에 저장한다setTokenCookies() 으로 Access/Refresh Token 을 각각 HttpOnly 쿠키로 세팅한다200 OK 와 로그인 성공 메세지를 담은 JSON(ApiResponse) 을 반환한다