WEBBOOK CHAPTER

Spring Boot 4.1, 시작부터 런칭까지: 42장. 장애 훈련 — JWKS 회전 뒤 로그인만 실패한다

42장. 장애 훈련 — JWKS 회전 뒤 로그인만 실패한다

Identity provider가 새 signing key를 사용했는데 JWKS fetch가 실패하면 새 token은 거부되고 cached old key token은 통과할 수 있다. 401 비율을 issuer·key id·deployment별로 보되 token 원문은 기록하지 않는다. system clock, DNS, TLS, egress policy, provider status와 cache refresh를 확인한다.

검증을 끄거나 임의로 모든 JWT를 허용하는 것은 복구가 아니다. 영향 범위를 새 로그인과 기존 session으로 나누고 provider와 network 문제를 고친다. 긴급 cache refresh도 rate limit과 thread stampede를 막아야 한다. key 미발견을 application 500으로 바꾸지 않고 인증 실패와 dependency 관측을 분리한다.

fixture issuer에서 old/new key를 동시에 publish한 뒤 새 key token을 발급하고, 잠시 JWKS endpoint를 끊었다 복구한다. 기대 결과와 회복 시간을 기록한다. 정상 rotation overlap, unknown issuer, alg 변조도 회귀 test에 둔다.