メインコンテンツへスキップ
APIにアクセスするには、ユーザーの認証時にアクセストークンをリクエストする必要があります。
ユーザー認証に対応するようアプリケーションを変更する際は、次の Auth0 ツールが役立ちます。
  • クイックスタートは、認証を実装する最も簡単な方法です。Universal Loginと、Auth0 の言語別およびフレームワーク別 SDK の使い方を確認できます。
  • Auth0 Authentication APIは、自分でコードを記述して実装したい方向けのリファレンスです。まず、使用するフローを特定します。次に、そのフローを実装する手順に従ってください。
をリクエストするには、トークンURLに対して POST リクエストを送信します。

トークンURLへのPOSTリクエストの例

パラメーター
パラメーター名説明
grant_type"client_credentials" に設定します。
client_idアプリケーションのクライアントIDです。この値はアプリケーションの設定タブで確認できます。
client_secretアプリケーションのクライアントシークレットです。この値はアプリケーションの設定タブで確認できます。利用可能なアプリケーションの認証方法の詳細については、Application Credentialsを参照してください。
audienceトークンの対象者で、対象はAPIです。この値は、APIの設定タブ識別子フィールドで確認できます。
organization任意。リクエストに関連付ける組織名または識別子です。詳細については、Machine-to-Machine Access for Organizationsを参照してください。

レスポンス

access_tokentoken_typeexpires_in を含むペイロードを含んだ HTTP 200 レスポンスが返されます。
{
  "access_token":"eyJz93a...k4laUWw",
  "token_type":"Bearer",
  "expires_in":86400
}
トークンを保存する前に、必ず検証してください。手順については、IDトークンを検証するおよびアクセストークンを検証するを参照してください。

アクセストークンの対象者を制御する

ユーザーの認証時には、アクセストークンをリクエストし、そのリクエストに対象のとアクセスのスコープを含めます。アプリケーションは /authorize エンドポイントを使用してアクセスをリクエストします。このアクセスは、アプリケーションによって要求され、認証時にユーザーによって許可されます。 テナントを設定して、常にデフォルトの対象者を含めることができます。
トークンの用途形式リクエストされる対象者リクエストされるスコープ
/userinfo endpoint不透明テナント名 (\{yourDomain}) 。audience パラメーターに値を指定しない、または audience パラメーターを渡さないopenid
Auth0 Management APIJWTManagement API v2 の識別子 (https://{tenant}.auth0.com/api/v2/)
独自のカスタム APIJWTAuth0 Dashboard に登録したカスタム API の API 識別子
ただし、アクセストークンが複数の対象対象者を持てるのは、特定の 1 つのケースに限られます。これには、カスタム API のRS256 に設定されている必要があります。詳細については、Token Best Practicesを参照してください。

複数の対象者

カスタム API の識別子を対象者に、openid をスコープに指定すると、発行されるアクセストークンの aud クレームは文字列ではなく配列になります。また、そのアクセストークンはカスタム API と /userinfo エンドポイントの両方に対して有効です。アクセストークンが 2 つ以上の対象者を持てるのは、単一のカスタム API と Auth0 の /userinfo エンドポイントを併用する場合に限られます。

カスタムドメインと Auth0 Management API

Auth0 は、トークンのリクエスト時に使用したドメインに対応する issuer (iss) クレーム) を持つトークンを発行します。カスタムドメイン を使用しているユーザーは、と Auth0 ドメインのどちらも使用できます。 たとえば、https://login.northwind.com というカスタムドメインがあるとします。https://login.northwind.com/authorize からアクセストークンをリクエストした場合、トークンの iss クレームは https://login.northwind.com/ になります。一方、https://northwind.auth0.com/authorize からアクセストークンをリクエストした場合、トークンの iss クレームは https://northwind.auth0.com/ になります。 カスタムドメインから、対象の対象者を Auth0 の に指定してアクセストークンをリクエストする場合は、必ず カスタムドメイン経由で Auth0 Management API を呼び出す必要があります。そうしないと、そのアクセストークンは無効と見なされます。

アクセストークンを更新する

デフォルトでは、カスタム API のアクセストークンの有効期間は 86400 秒 (24 時間) です。トークンの有効期限が切れるまでの期間を短縮することもできます。 アクセストークンの有効期限が切れた場合は、アクセストークンを更新できます。その場合は、Auth0 でユーザーを再認証するか、リフレッシュトークンを使用してください。

詳細情報