q1: JWT 토큰의 구조와 OAuth2 인증 흐름도
a1:
JWT 토큰의 구조와 OAuth2 인증 흐름도
✅ JWT 토큰 구조
JWT는 JSON Web Token의 줄임말로, 3개의 문자열이 점(.)으로 구분되어 구성됩니다.
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.
eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IlNvb2giLCJpYXQiOjE1MTYyMzkwMjJ9.
SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
구성 요소
1. Header 헤더
- 암호화 알고리즘, 토큰 타입 (예: HS256, JWT)
2. Payload 본문
- 사용자 정보 및 토큰 유효 시간 등 (ex. user_id, exp 등)
3. Signature 서명
- 위 2개를 암호화한 서명. 위조 방지용
예시 Payload 내용 (디코딩 시)
{
"sub": "1234567890",
"name": "홍길동",
"iat": 1710000000,
"exp": 1710003600
}
⸻
✅ OAuth2 인증 흐름도 (Client Credentials 방식 기준)
이 방식은 금융플랫폼처럼 사용자 로그인 없이 서버-서버 간 인증이 필요할 때 사용됩니다.
1. 인증 토큰 발급 흐름
[플랫폼 서버] ──→ 인증 서버 (POST /token)
(client_id, client_secret 전송)
│
↓
←── Access Token (JWT) 수신
2. API 호출 흐름
[플랫폼 서버] ──→ API 서버 (/loan/count)
Authorization: Bearer {Access Token}
│
↓
←── 대출 계약 건수 응답 (JSON)
⸻
✅ 요약: 언제 쓰냐?
로그인된 사용자별로 인증
- OAuth2 Authorization Code 방식
시스템 대 시스템 통신
- OAuth2 Client Credentials 방식 + JWT
모바일 앱 인증
- OAuth2 + JWT 토큰
JWT 토큰의 구조와 OAuth2 인증 흐름도 250417
2025. 4. 17. 07:48
반응형