メインコンテンツへスキップ
このチュートリアルでは、Client Credentials フローを使用して、マシン間 (M2M) アプリケーションから API を呼び出す方法を説明します。このフローの仕組みや、これを使用するべき理由については、Client Credentials フローを参照してください。
Auth0 を使用すると、アプリケーションに Client Credentials フローを簡単に実装できます。認証が正常に完了すると、アプリケーションは を取得でき、これを使用して保護された API を呼び出せます。アクセストークンの詳細については、アクセストークンを参照してください。

前提条件

このチュートリアルを始める前に、以下を完了してください。

手順

  1. トークンをリクエストする: 認可済みのアプリケーションから、API のアクセストークンをリクエストします。
  2. API を呼び出す: 取得したアクセストークンを使用して、API を呼び出します。
任意: サンプルのユースケースを参照する

トークンをリクエストする

API にアクセスするには、その API 用のアクセストークンをリクエストする必要があります。そのためには、トークンURLPOST リクエストを送信します。

トークンURLにPOSTする例

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

レスポンス

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

API を呼び出す

M2M アプリケーションから API を呼び出すには、アプリケーションが取得したアクセストークンを Bearer トークンとして HTTP リクエストの Authorization ヘッダーに渡す必要があります。

使用例

トークンをカスタマイズする

Actions を使用すると、カスタムロジックに基づいてアクセストークンの発行を拒否したり、アクセストークンにクレームを追加したりできます。Auth0 は、クライアントクレデンシャルグラントに関連付けられた Actions を実行時に呼び出し、カスタムロジックを実行します。 詳細については、Actions の マシン間フロー を参照してください。

サンプルアプリケーションを確認する: サーバークライアント + API

実装例については、アーキテクチャシナリオの Server Client + API を参照してください。このチュートリアルシリーズには、GitHub で参照できるコードサンプルも用意されています。 API がアクセストークンを含むリクエストを受信したら、そのトークンを検証する必要があります。詳細については、アクセストークンを検証する を参照してください。

さらに詳しく