JWT 인증은 로그인 한 번과 요청마다의 검증으로 나뉜다
토큰은 로그인 시 발급되고, 보호 API를 호출할 때마다 Strategy와 Guard가 신원과 권한을 다시 확인한다.
Login
credential 확인 후 access token 발급
Payload
userId, role처럼 검증에 필요한 최소 정보만 담음
Strategy
서명과 만료를 확인해 req.user를 구성
Guard
인증 여부와 role metadata를 비교
Controller
허용된 요청만 handler로 진입
| 점검 | 기준 |
|---|---|
| 보호 경계 | 토큰 생성이 아니라 매 요청 검증 지점 |
| 나쁜 신호 | payload 과다, 긴 만료, UI 숨김만 믿는 인가 |
| 판단 | 서버 Guard에서 인증과 인가를 모두 확인 |
핵심 JWT 흐름은 “발급”보다 “요청마다 검증되는 위치”를 먼저 봐야 한다.