728x90
Access Token 만을 통한 인증 방식의 문제 : 제 3자에게 탈취당할 경우 보안에 취약
-> 토큰의 유효시간을 짧게 하면 되지만, 사용자의 불편이 커짐
1. 첫 로그인 시, 서버는 Access Token, Refresh Token 을 모두 발급한다.
2. 서버는 DB에 Refresh Token을 저장하고, 클라이언트는 Access Token, Refresh Token 을 모두 쿠키에 담는다.
3. 클라이언트가 만료된 Access Token을 보내면 서버는 Refresh Token 을 DB와 비교 후, 일치하면 Access Token 을 재발급해준다.
- case1 : access token과 refresh token 모두가 만료된 경우 → 에러 발생 (재 로그인하여 둘다 새로 발급)
- case2 : access token은 만료됐지만, refresh token은 유효한 경우 → refresh token을 검증하여 access token 재발급
- case3 : access token은 유효하지만, refresh token은 만료된 경우 → access token을 검증하여 refresh token 재발급
- case4 : access token과 refresh token 모두가 유효한 경우 → 정상 처리
728x90