JWT(Json Web Token)

Gyuhan Park·2021년 2월 13일
0

CS

목록 보기
2/2

토큰 자체를 정보로 사용하는 Self-Contained 방식

JWT 의 주요한 이점은 사용자 인증에 필요한 모든 정보는 토큰 자체에 포함하기 때문에 별도의 인증 저장소가 필요없다는 것이다

🔴JWT 방식
1. 클라이언트에서 API 을 요청할때 클라이언트가 Authorization header에 Access token을 담아서 보낸다.
2. 인증이 필요한 경로에 접근할 때 서버 측은 Authorization 헤더에 유효한 JWT 또는 존재하는지 확인한다.
3. JWT에는 필요한 모든 정보를 토큰에 포함하기 때문에 데이터베이스과 같은 서버와의 커뮤니케이션 오버 헤드를 최소화 할 수 있다.
# Cross-Origin Resource Sharing (CORS)는 쿠키를 사용하지 않기 때문에 JWT를 채용 한 인증 메커니즘은 두 도메인에서 API를 제공하더라도 문제가 발생하지 않는다

token based authentication
세션과 동작방식이 비슷하지만 쿠키값에 sessionID를 담아서 보내는 것이 아니라 token을 response한다.
client는 재방문 시 request를 보낼 때 token을 담아 보낸다. 세션과 차이점은 서버가 token 정보를 기억하고 있지 않는다는 점이다.
컨셉 : stateless
server는 유저정보를 모두 기억하거나 Database에 저장할 필요없다. 대신 1. JWT를 해독하는 일
2. 유효한 token인지 확인

token : 웹과 모바일에서 모두 제공
cookie : 섞어 사용하기 매우 어려움

토큰은 클라이언트에 저장되어 데이터베이스에서 사용자 정보를 조작하더라도 토큰에 직접 적용할 수 없다.

profile
단단한 프론트엔드 개발자가 되고 싶은

0개의 댓글