JWT
[JWT] Access token, Refresh token 자동 로그인(1)
whitedeveloper
2023. 4. 26. 22:35
자동 로그인 수행
1. 로그인 시 access token, refresh token을 생성해 발급, refresh token은 DB에 저장
2. 클라이언트에서 요청을 보낼 때 마다 access token을 함께 서버에 요청
3.
(version 1) 만료된 토큰을 담아 요청하면 서버에서 401 error 응답,401 error 응답을 받은 클라이언트는 access token과 refresh token을 함께 보낸다.
(version 2) 클라이언트에서 access token의 payload를 통해 만료기간이 지났다는 것을 확인해 바로 refresh 요청을 보냄
= 이 방식을 사용하면 네트워크 요청을 줄일 수 있다.
4. refresh 요청을 받은 서버는 만료된 access token을 통해 회원 정보를 뽑아내고, 매칭되는 refresh token을 DB에서 가져온다.
5. 가져온 refresh token과 클라이언트로 부터 받은 refresh token과 일치 여부 확인
6.
일치한다면, 새로운 access token 발급
일치하지않는다면, refresh token이 유효하지 않은 것이니 401 응답을 보내고 클라이언트는 재로그인
refresh token이 만료되었다면 해당 refresh token을 제거하고 401 응답을 보내 재 로그인 한다.