メインコンテンツへスキップ
アイデンティティに関連するトークンには、の2種類があります。

IDトークン

IDトークン は、アプリケーションのみで使用することを目的とした JSON Web Token (JWT) です。たとえば、Google を使ってユーザーをログインさせ、カレンダーを同期するアプリがある場合、Google はそのアプリに、ユーザーに関する情報を含む IDトークン を送信します。アプリはその後、トークンの内容 を解析し、その情報 (名前やプロフィール画像などを含む) を使用してユーザー体験をカスタマイズします。
含まれている情報を使用する前に、必ず IDトークンを検証 してください。この作業には ライブラリ を利用できます。
API へのアクセスに IDトークン を使用してはなりません。各トークンには、想定される (通常は受信者) に関する情報が含まれています。 Connect の仕様では、IDトークン のオーディエンス (aud クレームで示されます) は、認証リクエストを行うアプリケーションの でなければなりません。そうでない場合、そのトークンは信頼すべきではありません。 デコードされた IDトークン の内容は、次のようになります。 このトークンは、アプリケーションに対してユーザーを認証するためのものです。トークンのオーディエンス (aud クレーム) はアプリケーションの識別子に設定されるため、このトークンを利用できるのはその特定のアプリケーションだけです。 一方、API は aud 値が API の一意の識別子と一致するトークンを想定しています。したがって、アプリケーションと API の両方を自分で管理していない限り、IDトークンを API に送信しても通常は機能しません。IDトークンは API によって署名されたものではないため、API が IDトークンを受け入れた場合、アプリケーションがトークンを改変していないかどうか (たとえば、スコープを追加していないかどうか) を API が確認する方法がありません。詳しくは、JWT Handbook を参照してください。

アクセストークン

アクセストークン (常にであるとは限りません) は、トークンの提示者が API へのアクセスと、あらかじめ定められた一連のアクション (付与されたスコープで指定) を実行する権限を持つことを API に伝えるために使用されます。 上記の Google の例では、ユーザーがログインし、アプリが Google Calendar を読み書きすることに同意すると、Google はアプリにアクセストークンを送信します。アプリが Google Calendar に書き込む必要があるたびに、HTTP の Authorization ヘッダーにアクセストークンを含めて Google Calendar API にリクエストを送信します。 アクセストークンを認証絶対に使用してはいけません。アクセストークンでは、ユーザーが認証されたかどうかは判断できません。アクセストークンに含まれる唯一のユーザー情報は、sub クレームにあるユーザーIDです。アクセストークンは API 向けのものであるため、アプリケーションでは不透明な文字列として扱ってください。アプリケーションでデコードを試みたり、特定の形式のトークンが返されることを前提にしたりしないでください。 以下はアクセストークンの例です。 このトークンには、ユーザーの ID (sub クレーム) 以外のユーザー情報は含まれていないことに注意してください。含まれているのは、アプリケーションが API に対して実行できる操作に関する認可情報 (scope クレーム) のみです。これは API の保護には役立ちますが、ユーザーの認証には使えません。 状況によっては、API がユーザーの詳細情報を取得するための追加処理を行わずに済むよう、sub クレームに加えて、ユーザーに関する追加情報やその他のカスタムクレームをアクセストークンに含めたい場合があります。その場合は、これらの追加クレームの内容をアクセストークン内で読み取れることに注意してください。詳しくは、カスタムクレームを作成する を参照してください。

専用トークン

Auth0 のトークンベース認証では、3 種類の専用トークンが使用されます。
  • : ユーザーを再認証することなく、新しいアクセストークンを取得するためのトークンです。
  • アクセストークン: ユーザーの認証後に ID プロバイダーが発行するアクセストークンで、サードパーティ API の呼び出しに使用できます。
  • Auth0 アクセストークン: 特定のクレーム (スコープ) を含む有効期間の短いトークンで、Management API エンドポイントを呼び出すことができます。

詳しくはこちら