- トークン全般
- アクセストークン
- リフレッシュトークン
- ID トークン
- 所持証明 (PoP) トークン
- 認可タイプ
- スコープ
-
PKCE (RFC 7636)
- 認可リクエストにおける PKCE 利用の強制化
- 認可リクエストでの PKCE 利用における "S256" 指定の強制化
- クライアント管理
- 認可リクエスト
- ユーザー認証
- エラー処理
- クライアント認証
- イントロスペクション
- Userinfo エンドポイント
- JARM
- デバイスフロー (RFC 8628)
認可リクエストでの PKCE 利用における "S256" 指定の強制化
Authlete では、クライアントからの PKCE (RFC 7636) の利用した認可リクエストに関し、"code_challenge_method" の値として ”S256" の指定を強制できます。
この機能を有効化するためには、サービス編集 → 「認可」タブ → 「認可エンドポイント」セクション にある「コードチャレンジメソッド S256」にて「要求する」を選択します。既定値は「要求しない」です。

「コードチャレンジメソッド S256」の設定
「要求する」に設定された Authlete サービスでは、/auth/authorization API にて、"code_challenge_method=S256" を含まない認可リクエストの処理を拒否します。以下は処理例です(一部折り返しています)。認可リクエストは PKCE を用いていますが、 "code_challenge_method=plain" となっています。そのため Authlete は処理を拒否しています。
この機能を有効化するためには、サービス編集 → 「認可」タブ → 「認可エンドポイント」セクション にある「コードチャレンジメソッド S256」にて「要求する」を選択します。既定値は「要求しない」です。

「要求する」に設定された Authlete サービスでは、/auth/authorization API にて、"code_challenge_method=S256" を含まない認可リクエストの処理を拒否します。以下は処理例です(一部折り返しています)。認可リクエストは PKCE を用いていますが、 "code_challenge_method=plain" となっています。そのため Authlete は処理を拒否しています。
- リクエスト
% curl -s -X POST .../auth/authorization -u ... -H 'Content-Type: application/json' -d '{ "parameters": "redirect_uri=... &response_type=code &client_id=... &scope=... &code_challenge=... &code_challenge_method=plain" }'
- レスポンス
{ "type": "authorizationResponse", "resultCode": "A124308", "resultMessage": "[A124308] The value of the 'code_challenge_method' request parameter must be 'S256'.", ...
How did we do with this article?