認可リクエストにおける PKCE 利用の強制化
Authlete では、クライアントからの認可リクエストに関し、PKCE (RFC 7636) の利用を強制できます。
この機能を有効化するためには、サービス編集 → 「認可」タブ → 「認可エンドポイント」セクション にある「コード交換用証明キー (RFC 7636)」にて「要求する」を選択します。
既定値は「要求しない」になっています。

「コード交換用証明キー (RFC 7636) 」の設定
「要求する」に設定された Authlete サービスでは、/auth/authorization API にて、code_challenge を含まない認可リクエストの処理を拒否します。以下は処理例です(一部折り返しています)。
この機能を有効化するためには、サービス編集 → 「認可」タブ → 「認可エンドポイント」セクション にある「コード交換用証明キー (RFC 7636)」にて「要求する」を選択します。
既定値は「要求しない」になっています。

「要求する」に設定された Authlete サービスでは、/auth/authorization API にて、code_challenge を含まない認可リクエストの処理を拒否します。以下は処理例です(一部折り返しています)。
- リクエスト (code_challenge を含まない認可リクエストを parameters に指定)
% curl -s -X POST .../auth/authorization -u ... -H 'Content-Type: application/json' -d '{ "parameters": "redirect_uri=... &response_type=code &client_id=... &scope=..." }'
- レスポンス (code_challenge パラメーターが含まれていない旨を返却)
{ "type": "authorizationResponse", "resultCode": "A124301", "resultMessage": "[A124301] The authorization request does not contain 'code_challenge' parameter. See RFC 7636 for details.", ...
How did we do with this article?