POST /oauth/token エンドポイント から が発行される際に、Hooks を使ってカスタムアクションを実行できます。たとえば、トークンの発行を拒否したり、Access Token にカスタムクレームを追加したり、scope を変更したりできます。詳しくは、Client Credentials Flow をご覧ください。
この拡張ポイントの Hooks はブロッキング (同期) 型です。つまり、トリガーの処理の一部として実行され、Hook が完了するまで Auth0 パイプラインの残りの処理は実行されません。
Client Credentials Exchange 拡張ポイントの
triggerId は credentials-exchange です。この拡張ポイント用の Hook を作成する方法については、Create Hooks をご覧ください。スターターコードとパラメータ
-
サンプルコードの末尾にあるコールバック関数 (
cb) は、処理の完了を通知するためのもので、必ず含める必要があります。 -
access_token.scope = scopeという行は、付与されたすべてのスコープがアクセストークンに含まれるようにするためのものです。これを削除すると、すべてのスコープがリセットされ、トークンにはスクリプトで追加したスコープだけが含まれます。
デフォルトレスポンス
スターターコードのレスポンス
サンプルスクリプト: アクセストークンにスコープを追加する
レスポンス
サンプルスクリプト: アクセストークンにクレームを追加する
- レスポンスオブジェクトの
scopeプロパティ - 名前空間付きのプロパティ名を持つ任意のプロパティ
フック内から設定済みの Hook Secret にアクセスするには、
context.webtask.secrets.SECRET_NAME を使用します。レスポンス
サンプルスクリプト: エラーを返す、またはアクセストークンを拒否する
/oauth/token エンドポイントに client_credentials グラントをリクエストすると、Auth0 は次のように応答します:
InvalidScopeError
/oauth/token エンドポイントに client_credentials グラントをリクエストすると、Auth0 は次のように応答します:
InvalidRequestError
/oauth/token エンドポイントに client_credentials グラントをリクエストすると、Auth0 からは次のような応答が返されます。
ServerError
/oauth/token エンドポイントに対して client_credentials グラントをリクエストすると、Auth0 は次のように応答します:
現時点では、組み込みの JavaScript
Error クラスと ServerError の動作は同じですが、ServerError クラスを使うと、返される OAuth 2.0 エラーを明示的に指定できます。