oAuth 의 개념상 유요한 허가증을 가지고 요청한 클라이언트의 요청을 거부하지 않습니다.
물론 issuer 가 전혀 다르다면 issuer check 를 통하여 거부하기도 하지만 여기에도 한계가 있긴하죠.
그래서 access_token 의 시간을 짧게 해서 refresh_token 을 통한 access_token 을 재취특하기도 하지만 refresh_token 도 rfc 문서상 must 가 아닌 should 의 optinal 성격의 토큰이기에 다른 방법을 찾아봐야합니다.
그 방법중 하나가 token revoke 요청을 하는건데요. token revoke 요청은 resource owner 의 credential 로만 가능하게 구현합니다.
이후에 black list 로 revoke 된 token 을 관리하고 list 관리 시점을 token expired time 과 맞추어 garbage token 이 무한으로 쌓이는걸 방지하는 방법을 가장 많이 사용하고 있습니다.
추가로 웹브라우저가 직접적으로 access_token 을 관리하는건 토큰을 보호하는 관점에서는 굉장히 위험한 일이 될수 있습니다. XSS Attack 에 취약해질수 있기 때문인데요.
그래서 웹애플리케이션에서 access_token 은 Front End Proxy Server 가 관리하고 해당 토큰은 HTTP only, Sercue true 로 설정하여 Client 의 javascript 가 핸들링 할수 없게 하고 end user 의 요청은 Proxy 서버로 보내고 이 Proxy 서버가 Resource Server 로 요청하게 하는것이 좀더 안전하다고 하고 있습니다.