Skip to content

[DP-306] Refresh Token rotation 제거로 로그인 튕김 현상 수정#121

Merged
nYeonG4001 merged 1 commit intodevelopV2from
auto/fix/token-rotation-race-condition
Apr 12, 2026
Merged

[DP-306] Refresh Token rotation 제거로 로그인 튕김 현상 수정#121
nYeonG4001 merged 1 commit intodevelopV2from
auto/fix/token-rotation-race-condition

Conversation

@nYeonG4001
Copy link
Copy Markdown
Collaborator

문제

액세스 토큰 만료(1시간) 시 프론트에서 여러 API가 동시에 401을 받으면, /auth/refresh 요청이 동시에 여러 번 발생.
Token Rotation 방식에서 첫 번째 요청이 기존 refresh token을 DB에서 삭제하고 새 토큰을 생성하면, 이후 요청들은 이미 삭제된 토큰으로 재발급을 시도해 401 → 로그아웃 처리되는 레이스 컨디션 발생.

원인

TokenService.reissueTokens() 에서 Token Rotation(기존 토큰 삭제 + 새 토큰 발급) 수행 시 동시 요청에 취약

수정 내용

  • Token Rotation 제거: refresh 시 기존 refresh token 유지, access token만 새로 발급
  • refresh token은 7일 DB 만료 기준으로만 관리
  • 관련 테스트 수정

영향 범위

  • TokenService.reissueTokens()
  • TokenServiceTest

@sonarqubecloud
Copy link
Copy Markdown

@nYeonG4001 nYeonG4001 merged commit aa78f86 into developV2 Apr 12, 2026
3 checks passed
@nYeonG4001 nYeonG4001 deleted the auto/fix/token-rotation-race-condition branch April 12, 2026 05:29
@nYeonG4001 nYeonG4001 changed the title [fix] Refresh Token rotation 제거로 로그인 튕김 현상 수정 [DP-306] Refresh Token rotation 제거로 로그인 튕김 현상 수정 Apr 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant