0

다음 클라이언트은 토큰을 가지고 있으며 요청을HTTP 상태 당신이 토큰 기반 인증을 사용하는 가정이 시나리오에서 사용하는 것이 상태 코드

  1. 서버에.
  2. 토큰은을 만료하고 서버는401 무단 전송합니다.
  3. 클라이언트는새로 고침 토큰를 보냅니다.
  4. 토큰이 유효하지 않으며 서버가 XXX로 응답합니까?

유스 케이스는 자동으로 401을 캐치하고 새로 고침 토큰을 사용하여 요청을하는 응용 프로그램입니다. 이 토큰이 유효하지 않은 경우 서버가 401로 응답하면 클라이언트는 새로 고침 토큰이있는 새 액세스 토큰을 영원히 요청하려고 시도합니다. 하지만 클라이언트에게 자격 증명 (예 : 전자 메일 및 암호)을 사용하여 다시 인증해야한다고 알려야합니다.

403 금지 된 경우 authorization will not help의 경우 사양에 나와있는대로이 시나리오에서 어떤 상태 코드가 가장 적합할지 궁금합니다.

답변

1

토큰을 상호 교환하여 액세스 및 새로 고치지 않습니다. 액세스 토큰을 사용하여 보호 된 리소스에 액세스하고 새로 고침 토큰을 사용하여 특수 종점에서 새 액세스 토큰을 가져옵니다. OpenID Connect는 이러한 방식으로 작동합니다.

하나의 HTTP 요청이 더 많지만 HTTP 코드는 문제가되지 않으며, 제 생각에는 더 명확한 코드를 얻을 수 있습니다.