> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> トークンベースの認証においてアクセストークンがどのように使用され、ユーザーが正常に認証してアクセスを承認した後、アプリケーションがAPIにアクセスできるようになるかを説明します。

# アクセストークン

<Card title="概要">
  主なポイント

  * トークンベースの認証について学びます。
  * Auth0が、標準クレームを含むJSON構造に準拠した自己完結型のJSON Web Token (JWT) アクセストークンをどのように使用しているかを確認します。
  * 提供されているアクセストークンのサンプルと必要なパラメーターを確認します。
  * デフォルトに基づいてアクセストークンの有効期間を設定します。
</Card>

<Tooltip tip="アクセストークン: APIへのアクセスに使用される、不透明な文字列またはJWT形式の認可資格情報。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Access+tokens">アクセストークン</Tooltip>は、トークンベースの認証でアプリケーションがAPIにアクセスできるようにするために使われます。アプリケーションは、ユーザーが正常に認証してアクセスを承認した後にアクセストークンを受け取り、対象のAPIを呼び出す際にそのアクセストークンを資格情報として渡します。渡されたトークンにより、トークンの所持者がそのAPIへのアクセスを承認されており、認可時に付与された<Tooltip tip="スコープ: オンラインリソース内の既存の情報を使って、アプリケーションがユーザーに代わって実行できる操作を決定する仕組み。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Scope">スコープ</Tooltip>で指定された特定の操作を実行できることがAPIに伝えられます。

さらに、Facebookのような<Tooltip tip="IDプロバイダー (IdP): デジタルIDを保存および管理するサービス。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Identity+Provider+%28IdP%29">IDプロバイダー (IdP)</Tooltip>を通じたユーザーのログインを許可する設定にしている場合は、<Tooltip tip="IDプロバイダー (IdP): デジタルIDを保存および管理するサービス。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=IdP">IdP</Tooltip>が、アプリケーションからIdPのAPIを呼び出せるように、独自のアクセストークンを発行します。たとえば、ユーザーがFacebookで認証した場合は、Facebookが発行したアクセストークンを使ってFacebook Graph APIを呼び出せます。これらのトークンはIdPによって管理されており、形式はさまざまです。詳しくは、[Identity Provider Access Tokens](/docs/ja-jp/secure/tokens/access-tokens/identity-provider-access-tokens)を参照してください。

<div id="opaque-access-tokens">
  ## 不透明アクセストークン
</div>

不透明アクセストークンは、内容を参照できない独自形式のトークンで、通常はサーバーの永続ストレージ内の情報を参照するための識別子が含まれています。不透明トークンを検証するには、トークンの受信者がそのトークンを発行したサーバーを呼び出す必要があります。

Auth0 では、不透明トークンを `/userinfo` エンドポイントで使用して、ユーザーのプロファイルを取得できます。不透明なアクセストークンを受け取った場合は、検証する必要はありません。`/userinfo` エンドポイントで使用すれば、残りの処理は Auth0 が行います。詳しくは、[アクセストークンの取得](/docs/ja-jp/secure/tokens/access-tokens/get-access-tokens) を参照してください。

<div id="jwt-access-tokens">
  ## JWT アクセストークン
</div>

<Tooltip tip="JSON Web Token (JWT): 2者間でクレームを安全にやり取りするために使用される、標準的な ID トークン形式（また、多くの場合はアクセストークン形式）。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=JSON+Web+Token">JSON Web Token</Tooltip> (JWT) アクセストークンは、[JWT 標準](https://tools.ietf.org/html/rfc7519) に準拠しており、クレームの形でエンティティに関する情報を含みます。自己完結型であるため、受信側がトークンを検証する際にサーバーを呼び出す必要はありません。

<Tooltip tip="Management API: 顧客が管理タスクを実行できるようにするための製品です。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Management+API">Management API</Tooltip> 向けに発行されたアクセストークンと、Auth0 に登録した任意のカスタム API 向けに発行されたアクセストークンは、JWT 標準に従います。つまり、これらの基本構造は一般的な [JWT の構造](/docs/ja-jp/secure/tokens/json-web-tokens/json-web-token-structure) に準拠しており、トークン自体に関する標準の [JWT クレーム](/docs/ja-jp/secure/tokens/json-web-tokens/json-web-token-claims) が含まれています。

<div id="management-api-access-tokens">
  ### Management API アクセストークン
</div>

Auth0 Management API 用に発行されたアクセストークンは、実際の形式にかかわらず、不透明なものとして扱う必要があります。そのため、トークンを検証する必要はありません。このトークンは Auth0 Management API で使用でき、あとの処理は Auth0 が行います。詳しくは、[Auth0 Management API Tokens](/docs/ja-jp/secure/tokens/access-tokens/management-api-access-tokens) を参照してください。

<div id="custom-api-access-tokens">
  ### カスタム API のアクセストークン
</div>

カスタム API のアクセストークンの検証に失敗する場合は、`audience` にその カスタム API を指定して発行されていることを確認してください。詳しくは、[アクセストークンの取得](/docs/ja-jp/secure/tokens/access-tokens/get-access-tokens)を参照してください。

<div id="sample-access-token">
  ## アクセストークンのサンプル
</div>

この例は、アクセストークンの内容を示しています。トークンには、アプリケーションが API に対して実行を許可されている操作に関する認可情報のみが含まれていることに注目してください (このような権限は `scopes` と呼ばれます) 。

```json lines theme={null}
{
  "iss": "https://my-domain.auth0.com/",
  "sub": "auth0|123456",
  "aud": [
    "https://example.com/health-api",
    "https://my-domain.auth0.com/userinfo"
  ],
  "azp": "my_client_id",
  "exp": 1311281970,
  "iat": 1311280970,
  "scope": "openid profile read:patients read:admin"
}
```

このトークンには、ユーザー ID (`sub` claim に含まれます) を除き、ユーザーに関する情報は含まれていません。多くの場合、さらに詳しいユーザー情報を取得したいことがあります。その場合は、アクセストークンを使って [userinfo API endpoint](https://auth0.com/docs/api/authentication#get-user-info) を呼び出します。アクセストークンの発行先である API で、**RS256** [署名アルゴリズム](/docs/ja-jp/get-started/applications/signing-algorithms) が使用されていることを確認してください。

<div id="access-token-security">
  ## アクセストークンのセキュリティ
</div>

アクセストークンを使用する際は、[トークンのベストプラクティス](/docs/ja-jp/secure/tokens/token-best-practices)に従ってください。また、JWT については、その内容を信頼する前に、必ず[アクセストークンを検証](/docs/ja-jp/secure/tokens/access-tokens/validate-access-tokens)してください。

<div id="access-token-lifetime">
  ## アクセストークンの有効期間
</div>

<div id="custom-api-token-lifetime">
  ### カスタム API のアクセストークン有効期間
</div>

デフォルトでは、カスタム API のアクセストークンは 86400 秒 (24 時間) 有効です。API のセキュリティ要件に応じて、トークンの有効期間を設定することをお勧めします。たとえば、銀行 API にアクセスするアクセストークンは、To-do API にアクセスするアクセストークンよりも短い時間で期限切れになるように設定すべきです。詳しくは、[アクセストークンの有効期間を更新する](/docs/ja-jp/secure/tokens/access-tokens/update-access-token-lifetime) を参照してください。

<div id="userinfo-endpoint-token-lifetime">
  ### /userinfo エンドポイントのトークン有効期間
</div>

OIDC の `/userinfo` エンドポイントへのアクセス専用に発行されるアクセストークンには既定の有効期間があり、変更できません。有効期間は、トークンの取得に使用したフローによって異なります。

| フロー          | 有効期間            |
| ------------ | --------------- |
| Implicit     | 7200 秒 (2 時間)   |
| 認可コード/ハイブリッド | 86400 秒 (24 時間) |

<div id="learn-more">
  ## 関連情報
</div>

* [アクセストークンの取得](/docs/ja-jp/secure/tokens/access-tokens/get-access-tokens)
* [アクセストークンの検証](/docs/ja-jp/secure/tokens/access-tokens/validate-access-tokens)
* [アクセストークンの使用](/docs/ja-jp/secure/tokens/access-tokens/use-access-tokens)
* [トークンのベストプラクティス](/docs/ja-jp/secure/tokens/token-best-practices)
