Redis 기반 리프레시 토큰 고도화 기술 보고서 (Spring)
작성일: 2025-08-14 (KST)
1. 개요
본 문서는 Spring 기반 인증 시스템에 Redis 화이트리스트 기반 Refresh Token 관리를 도입/고도화한 내용을 정리한 기술 보고서입니다. 주요 개선점은 다음과 같습니다.
- DB 의존 제거 + 인메모리 캐시 활용으로 재발급 경로 고성능화
- 평문 토큰 저장 하지 않고 HMAC-SHA256(token) 식별자만 보관 (보안성 강화)
- TTL(Time To Live) 기반 자동 만료로 데이터 청소 자동화
- 토큰 로테이션을 통해 재발급 시 토큰이 교체되도록 설정
- 컨트롤러 응답 스펙 개선: TokenPair(access, refresh) 반환
2. 배경과 문제 정의
- 기존 구현은 JPA 기반으로 Refresh Token을 RDB에 저장하여 품질 제약이 있었습니다.
- Refresh Token을 평문으로 저장할 경우 유출시 재사용 위험이 존재합니다.
- 고부하 환경에서 데이터베이스 접근은 병목이 되며, 토큰 재발급 경로(로그인 직후/세션 연장)가 잦아 레턴시 증가 가능성이 있습니다.
목표
- 재발급 경로의 지연시간 및 처리량 개선, 2) 토큰 탈취 리스크 축소, 3) 운영/테스트 품질 향상.