トークン取り消しエンドポイント - Amazon Cognito

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

トークン取り消しエンドポイント

セッションで更新トークンを保持するユーザーは、ブラウザ Cookie のようなものが与えられます。更新トークンが有効である限り、既存のセッションを更新できます。ID トークンまたはアクセストークンの有効期限が切れた後にサインインするようにユーザーに促す代わりに、アプリケーションは、更新トークンを使用して新しい有効なトークンを取得できます。ただし、ユーザーのセッションを終了する必要があると外部で判断することや、ユーザーが現在のセッションを忘れたりすることがあります。その時点で、セッションを維持できなくなるように、その更新トークンを取り消せます。

/oauth2/revoke エンドポイントは、指定した更新トークンを使用して Amazon Cognito が最初に発行したユーザーのアクセストークンを取り消します。また、このエンドポイントは、更新トークン自体、および同じ更新トークンからの後続のアクセストークンと ID トークンのすべても取り消します。エンドポイントがトークンを取り消した後、取り消されたトークンを使用して Amazon Cognito トークンが認証する API にアクセスすることはできません。

POST/oauth2/revoke

/oauth2/revoke エンドポイントは HTTPS POST のみをサポートします。ユーザープールクライアントは、システムブラウザ経由ではなくこのエンドポイントに直接リクエストを送信します。

ヘッダーのリクエストパラメータ

Authorization

アプリケーションクライアントにクライアントシークレットがある場合、アプリケーションは、その client_id および client_secret をベーシック HTTP 認可を介して認可ヘッダーに渡す必要があります。シークレットはベーシック Base64Encode(client_id:client_secret) です。

Content-Type

常に 'application/x-www-form-urlencoded' にする必要があります。

本文のリクエストパラメータ

token

(必須) クライアントが取り消す対象の更新トークンです。このリクエストは、Amazon Cognito がこの更新トークンで発行したすべてのアクセストークンも無効にします。

必須。

client_id

(オプション) 取り消す対象のトークンのアプリケーションクライアント ID。

クライアントがパブリックでありシークレットがない場合は必須です。

取り消しリクエストの例

この取り消しリクエストは、クライアントシークレットを持たないアプリケーションクライアントの更新トークンを取り消します。リクエスト本文内の client_id パラメータに注意してください。

POST /oauth2/revoke HTTP/1.1 Host: https://mydomain.auth.us-east-1.amazoncognito.com Accept: application/json Content-Type: application/x-www-form-urlencoded token=2YotnFZFEjr1zCsicMWpAA& client_id=djc98u3jiedmi283eu928

この取り消しリクエストは、クライアントシークレットを持つアプリケーションクライアントの更新トークンを取り消します。エンコードされたクライアント ID とクライアントシークレットを含むが、リクエスト本文内に client_id を含まない Authorization ヘッダーに注意してください。

POST /oauth2/revoke HTTP/1.1 Host: https://mydomain.auth.us-east-1.amazoncognito.com Accept: application/json Content-Type: application/x-www-form-urlencoded Authorization: Basic czZCaGRSa3F0MzpnWDFmQmF0M2JW token=2YotnFZFEjr1zCsicMWpAA

取り消しエラーレスポンス

正常なレスポンスには空のボディが含まれています。エラーレスポンスは、error フィールドを持つ JSON オブジェクトで、error_description フィールドがある場合もあります。

エンドポイントエラー

  • リクエストにトークンが存在しない場合、またはアプリケーションクライアントに対して機能が無効化されている場合に、HTTP 400 とエラー invalid_request が返されます。

  • Amazon Cognito が取り消しリクエストで送信したトークンが更新トークンでない場合は、HTTP 400 とエラー unsupported_token_type が発生します。

  • クライアントの認証情報が有効でない場合、HTTP 401 とエラー invalid_client が発生します。

  • トークンが取り消されている、またはクライアントが無効なトークンを送信した場合は、HTTP 200 OK が発生します。