Bearer errorinvalid_request という responseContent について

Table of Contents

Bearer error=“invalid_request” という responseContent について

/auth/introspection に有効なトークンを送った場合、下記のような、トークンが有効であることを示すレスポンスが返ってきます。

{
    "type": "introspectionResponse",
    "resultCode": "A056001",
    "resultMessage": "[A056001] The access token is valid.",
    "action": "OK",
    "clientId": 226667912572,
    "clientIdAliasUsed": false,
    "existent": true,
    "expiresAt": 1571898035000,
    "refreshable": true,
    "responseContent": "Bearer error=\"invalid_request\"",
    "subject": "john",
    "sufficient": true,
    "usable": true
}

有効であることを示すレスポンスですが、その responseContent の値は、Bearer error=“invalid_request” となっています。これは、400 Bad Request の際に、WWW-Authenticate ヘッダーの値として使える最も単純な値です。より具体的には、(トークン自体は正しくても)間違ったリクエストを送ってくるクライアントに対して、上記文字列をエラーレスポンスとしてお送りいただくことを想定して設計されたレスポンス内容です。ただし実際の運用を考慮した場合、そのような状況においては、「何が間違っているのか」などもっとリクエスト内容の誤りに関する情報をクライアントに返すことをお勧めいたします。

詳細については、authlete-java-commonの introspectionResponse をご参照ください。