Json Web Token은 사용자 인증을 위해 사용하는 토큰으로, Session과 JWT의 장단점을 파악하고 어떤 인증 로직을 사용할지 결정해야 한다.
Moi’c에서 JWT를 사용한 이유
RESTful API
사용자 인증을 위한 Access Token
자동로그인 구현을 위한 Refresh Token
Moi’c에서 구현한 방법
사용자는 로그인을 하면 AccessToken은 Response로, RefreshToken은 Cookie로 받는다.
AccessToken은 항상 header에 추가 되어야 사용자 인증이 가능하다
AccessToken이 만료되었다면 Refresh요청을 보내며 만료된 AccessToken과 RefreshToken이 담긴 Cookie를 서버로 보낸다.
서버에서는 검증 로직을 거친 후 AccessToken을 발급한다.
Moi’c의 AccessToken
암호화 키 : 팀원들의 이름을 Base64로 인코딩한 문자열
발급자 : moic
유효기간 : 30분
Header
Key : Authorization
value : AccessToken
Moi’c의 RefreshToken
암호화 키 : 팀원들의 이름을 Base64로 인코딩한 문자열
발급자 : moic
유효기간 : 30일
Cookie
Key : refreshToken
value : RefreshToken