POST /oauth/tokenエンドポイントからアクセストークンが発行される際にカスタムアクションを実行できます。たとえば、トークンが発行されないように拒否する、アクセストークンにカスタムクレームを追加する、またはそのスコープを修正することができます。詳細については、「クライアントの資格情報フロー」をお読みください。
この拡張ポイントでのフックはブロッキング(同期的)であり、トリガーのプロセスの一部として実行されます。そのため、フックが完了するまでAuth0パイプラインの他の部分の実行が停止されます。
Client Credentials Exchange(クライアント資格情報交換)拡張ポイントの
triggerIdは、credentials-exchangeです。この拡張ポイントに対してフックを作成する方法については、「フックを作成する」をお読みください。スターターコードとパラメーター
- サンプルコードの終わりにあるコールバック関数(
cb)は、完了を知らせるもので、必ず含まれなければなりません。 access_token.scope = scopeという行は、すべての付与されたスコープがアクセストークンに存在するようにします。それを取り除くとすべてのスコープをリセットすることになり、トークンにはスクリプトで追加したスコープのみ含まれます。
デフォルトの応答
スターターコードの応答
スクリプト例:アクセストークンに追加スコープを追加する
応答
スクリプト例:アクセストークンにクレームを追加する
- 応答オブジェクトの
scopeプロパティ - 名前空間プロパティ名のあるすべてのプロパティ
構成されたフックシークレットにフック内からアクセスするには、
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クラスでは、返されるOAuth2エラーを明示的にすることができます。