Skip to content

[ASSIGNMENT] 7차 과제 구현 #16

Description

@Kimgyuilli

Description

인증/인가를 구현할 때 마주치는 갈림길 아티클 내용을 기반으로 현재 프로젝트의 인증/인가를 고도화한다.

To - Do

1. Access Token 블랙리스트 Caffeine 전환

  • Caffeine 의존성 추가 및 설정
  • 블랙리스트를 Caffeine 캐시로 이동 (TTL = 토큰 잔여 유효 시간 정렬)
  • 기존 RDB 블랙리스트 엔티티/레포지토리 제거

2. Refresh Token Reuse Detection

  • 토큰 패밀리 개념 도입 (family ID)
  • 회전된 구 토큰이 재사용되면 해당 패밀리 전체 무효화
  • Reuse 감지 시 보안 로그 남기기

3. Refresh Token Grace Period

  • 회전 직후 구 토큰을 Caffeine에 짧은 TTL(10초)로 기록
  • Grace Period 내 동시 요청 허용
  • 이중 발급 방지

4. DelegatingPasswordEncoder 전환

  • BCryptPasswordEncoder → DelegatingPasswordEncoder 전환
  • 기존 bcrypt 해시 호환 유지
  • 향후 Argon2id 마이그레이션 경로 확보

5. Caffeine 캐시 도입

  • 블랙리스트 조회 캐싱 (로컬 인메모리)
  • 사용자 조회 캐싱 (JwtAuthenticationFilter 매 요청 DB 조회 절감)

ETC

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions