JWT/OAuth2(토큰 기반 인증·인가)
JWT는 사용자 정보를 담아 서명한 '토큰의 형식'이고, OAuth2는 다른 서비스에 내 정보 접근을 안전하게 위임하는 '인증·인가 절차'입니다.
한눈에 보는 정의
**JWT(JSON Web Token)**는 사용자 정보나 권한 정보를 JSON 형태로 담아 서명한 '토큰의 형식(포맷)'이고, OAuth2는 사용자가 자신의 정보를 다른 서비스에 안전하게 위임(인가)할 수 있도록 정한 '절차(프로토콜)'입니다.
자세히 알아보기
- 예문: "구글 계정으로 로그인하기" 버튼을 누르면 내부적으로 OAuth2 절차를 거쳐 로그인이 처리되고, 그 결과로 JWT 형식의 토큰이 발급되는 경우가 많습니다.
- API Gateway(API 게이트웨이) 나 각 서비스는 이 토큰을 확인해 "이 사용자가 맞는지, 어떤 권한이 있는지"를 판단합니다.
Q. 왜 항상 같이 언급되나요?
OAuth2가 '로그인하고 권한을 위임받는 절차'를 정의한다면, 그 결과물로 발급되는 토큰의 형식으로 JWT가 자주 쓰이기 때문입니다. 즉 OAuth2는 절차, JWT는 그 절차의 결과물(토큰 형식)이라고 이해하면 됩니다.