<aside> 💡

AccessToken == AT, RefreshToken == RT

</aside>

Untitled

로그인 요청

권한이 필요한 자원 요청

  1. AccessToken을 가지고 접근

  2. extractToken(accessToken) : 토큰의 접두어 확인 —> Bearer로 시작되지 않는 경우 Token의 타입은 Bearer입니다.(401)

  3. checkLogin(accessToken) : 로그아웃 여부 확인(Redis 키 값 여부) —> 로그아웃 상태인 경우 이미 로그아웃 처리된 토큰입니다.(401)

  4. validateAccessToken : 토큰 만료 여부와 유효성 검증

    —> 토큰 만료 기한이 만료된 AccessToken입니다.(401)

    —> 유효X 유효하지 않은 AccessToken입니다.(401)

  5. 권한 설정 후 요청 처리

  1. 처리 X
  1. 로그아웃 처리된 요청 → 로그인 페이지 리다이렉션
  2. 토큰 만료 → RefreshToken으로 재발급 요청 유효 X : 서명 처리, null값, 등 터지는 경우가 다양해서 일단 처리 안 하셔도 될 것 같습니다.

토큰 재발급 요청("/api/v2/member/rotate")

  1. RefreshToken가지고 접근
  2. extractToken(accessToken) : 토큰의 접두어 확인 —> Bearer로 시작되지 않는 경우 Token의 타입은 Bearer입니다.(401)