본문 바로가기

Programming/OAuth2.0

[OAuth 2.0] Refresh Token

반응형
Refresh Token
Access Token은 수명이 있다. 그 수명이 끝나면 더이상 Resource Server에서 리소스를 가져올 수 없다. 리소스에 다시 접근하기 위해 Access Token을 발급 받아야 하는데, 번거로운 일이 될 수 있다. 이 문제를 좀 더 손쉽게 해결하기 위해 방법으로 Refresh Token이 있다.
Refresh Token은 Authorization Server에 의해 발급되어 Client에게 전해지는데, 현재의 Access Token이 유효하지 않거나 수명이 끝났을 때 새로운 Access Token 개념으로 발급된다. 또는 필요에 의해 기존 Access Token이 가진 리소스 접근 범위를 넘은 리소스에 접근하고자 할 때 추가로 발급되는 Access Token 개념으로 사용된다. 
Access Token이 만료되어 Refresh Token을 사용하는 work flow

https://tools.ietf.org

(A) : Client가 인증을 통해 Authorization Server에서 Access Token을 요청한다.

(B) : Authorization Server는 Client를 인증하고 권한을 부여한 후 Access Token과 Refresh Token을 발행한다.
* Access Token 발급 시 Refresh Token과 함께 발급하는 경우가 많다고 한다.

(C) : Client는 발급 받은 Access Token을 통해 Resource Server에서 리소스에 접근할 수 있다.

(D) : Resource Server는 Client가 제출한 Access Token의 유효성을 검사 후 요청받은 리소스를 전달한다.

(E) : (C)와 (D) 단계를 반복하며 요청(Access Token 전달) -> 유효성 검사 -> 리소스 전달 작업을 수행한다.

(F) : Access Token이 더이상 유효하지 않다. 때문에 Resource Server는 Client가 제출한 Access Token에 대하여 invalid token error 메시지를 전달한다.

(G) : Client는 Authorization Server에 새로운 Access Token을 요청하는데, 이 때 기존에 가지고 있는 Refresh Token을 제출한다.

(H) : Authorization Server는 Client를 인증하고 제출받은 Refresh Token을 검증한다. 모든 것이 유효하다면 새로운 Access Token을 발급한다.

참고

https://tools.ietf.org

 

IETF Tools

IETF Tools IETF-related tools, standalone or hosted on tools.ietf.org. (Tools hosted by the secretariat are listed at http://www.ietf.org/tools). Which license? See Preferred License RFC dependency checker Joe Touch A script to check the references in Inte

tools.ietf.org

반응형

'Programming > OAuth2.0' 카테고리의 다른 글

[OAuth 2.0] OAuth2.0 개요  (0) 2021.09.08