Access Token

  1. [프론트엔드] 로그인 요청
  2. [백엔드] 사용자 확인, Access Token와 함께 응답
  3. [프론트엔드] Access Token을 받고 이후 api 요청마다 헤더에 Access Token을 담아 요청
  4. [백엔드] api 호출 시 Access Token이 유효한지 검증하여 처리

Access Token이 탈취당할 경우, 공격자가 무제한으로 api에 접근하여 사용자 정보를 채갈 수 있다.

⇒ Access Token에 만료시간을 둔다.

Access Token에 만료시간 적용

  1. [프론트엔드] 로그인 요청
  2. [백엔드] 사용자 확인, Access Token와 함께 응답 (이때 만료시간 설정)
  3. [프론트엔드] Access Token을 받고 이후 api 요청마다 헤더에 Access Token을 담아 요청
  4. [백엔드] api 호출 시 Access Token이 유효한지, 만료시간이 지나지 않았는지 확인하여 처리

Access Token의 만료시간을 적용하면 시간이 지난 후 해당 Access Token으로 사용자 정보에 접근할 수 없다. 만료시간이 지난 후 사용자가 재로그인해야 한다는 문제가 발생한다.

⇒ Access Token의 만료시간이 지났을 경우 Refresh Token을 통해 Access Token을 재발급한다.