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

# アクセストークンプロファイル

> Auth0がサポートするアクセストークンプロファイルについて説明します。

アクセストークンプロファイルは、APIに発行されるアクセストークンの形式とクレームを定義します。Auth0は以下のアクセストークンプロファイル（別名トークンダイアレクト）をサポートしています。

* Auth0のトークンプロファイル（デフォルトのアクセストークンプロファイル）
* RFC 9068トークンプロファイル（[IETF JWT Profile for OAuth 2.0 Access Tokens（RFC 9068）](https://datatracker.ietf.org/doc/html/rfc9068)に準拠したアクセストークンプロファイル）

| トークンプロファイル | 説明 | トークンダイアレクト |
| - | - | - |
| Auth0トークンプロファイル | デフォルトのトークンプロファイル。[JSON Web Token (JWT)](/docs/ja-jp/secure/tokens/json-web-tokens)としてフォーマットされたアクセストークンを発行します。 | Auth0トークンプロファイルは、2つのトークンダイアレクトと関連しています：<ul><li>`access_token`</li><li>`access_token_authz`、または`permissions`クレームを含んだ`access_token`プロファイル。</li></ul> |
| RFC 9068トークンプロファイル | JWTフォーマットのOAuth 2.0アクセストークンのエンコードのための[IETF標準](https://datatracker.ietf.org/doc/html/rfc9068)に準拠したJSON Web Token (JWT)としてフォーマットされたアクセストークンを発行します。 | The RFC 9068トークンプロファイルは、2つのトークンダイアレクトと関連しています：<ul><li>`rfc9068_profile`</li><li>`rfc9068_profile_authz`または`permissions`クレームを含んだ`rfc9068_profile`プロファイル</li></ul> |

どちらのアクセストークンプロファイルも<Tooltip data-tooltip-id="react-containers-DefinitionTooltip-3" href="/docs/ja-jp/glossary?term=json-web-token" tip="JSON Web Token（JWT）: 二者間のクレームを安全に表現するために使用される標準IDトークン形式（および多くの場合、アクセストークン形式）。" cta="用語集の表示">JWT</Tooltip>を発行しますが、JWTの[トークン形式は異なります](#token-profile-differences)。どちらのアクセストークンプロファイルも[Role-Based Access Control（RBAC）](/docs/ja-jp/get-started/apis/enable-role-based-access-control-for-apis)を有効にして、アクセストークンへのアクセス許可クレームを追加できます。

APIのアクセストークンプロファイルを構成するには、「[アクセストークンプロファイルを構成する](/docs/ja-jp/get-started/apis/configure-access-token-profile)」をお読みください。

### Auth0プロファイルのサンプルトークン

```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",
  "my_custom_claim": "my_custom_value"
}
```

### RFC 9068プロファイルのサンプルトークン

```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"
  ],
  "client_id": "my_client_id",
  "exp": 1311281970,
  "iat": 1311280970,
  "jti":"73WakrfVbNJBaAmhQtEeDv",
  "scope": "openid profile read:patients read:admin",
  "my_custom_claim": "my_custom_value"
}
```

## トークンプロファイルの違い

Auth0プロファイルとRFC 9068プロファイルはトークン形式の異なるJWTを発行します。主な違いは以下の通りです。

* RFC 9068プロファイルには`jti`クレームが組み込まれており、JWTに一意の識別子を提供する。
* Auth0プロファイルは`azp`クレームを使用してクライアントIDを表すが、RFC 9068プロファイルは`client_id`クレームを使用する。
* RFC 9068プロファイルは、認証フローを表すAuth0固有のクレームである`gty`クレームは使用しない。

### ヘッダー

| データ | RFC 9068プロファイル | Auth0プロファイル |
| - | - | - |
| `type` | `at+jwt` | `JWT` |
| `alg` | 署名アルゴリズム。例：`RS256` | 署名アルゴリズム。例：`RS256` |

### クレーム

| クレーム | 説明 | RFC 9068プロファイルに存在 | Auth0プロファイルに存在 | サンプルのクレーム |
| - | - | - | - | - |
| `iss` | アクセストークンを発行するAuth0テナントの発行者識別子です。 | 有 | 有 | テナントドメイン：`https://tenant.auth0.com/` |
| `sub` | サブジェクトクレームは、アクセストークンがどのユーザーまたはアプリケーションに発行されたかを示します：<ul><li>認可コードフローなど、エンドユーザーが関わる付与の場合、`sub`クレームは`user_id`になります。</li><li>クライアント資格情報付与を用いたM2Mアプリケーションで、エンドユーザーが関わらない場合、`sub`クレームはアプリケーションの一意の識別子になります。</li></ul> | 有 | 有 | <ul><li>ユーザーID：`auth0`</li></ul> |
| `aud` | オーディエンスクレームは、アクセストークンの意図された受信者を示します。 | 有 | 有 | `"https://test-server/api"`または`[ "https://test-server/api", "https://test.local.dev.auth0.com/userinfo" ]` |
| `client_id` | アクセストークンを要求したアプリケーションのクライアントIDです。 | 有 | 無 | クライアント ID：`K1AUPhZq8mRi0Q0pjhkfu1D7y6KjDQja` |
| `azp` | アクセストークンを要求したアプリケーションのクライアントIDです。 | 無 | 有 | クライアント ID：`K1AUPhZq8mRi0Q0pjhkfu1D7y6KjDQja` |
| `exp` | 有効期限です。これ以降、アクセストークンを受け付けて処理してはいけません。 | 有 | 有 | エポックタイムスタンプ（秒単位）：`1516238022` |
| `iat` | アクセストークン発行のタイムスタンプです。 | 有 | 有 | エポックタイムスタンプ（秒単位）：`1516239022` |
| `scope` | 発行されたアクセストークンのスコープです。詳細については、「[スコープ](/docs/ja-jp/get-started/apis/scopes)」をお読みください。 | 有 | 有 | `"openid profile offline_access"` |
| `jti` | アクセストークンの一意の識別子です。 | 有 | 無 | 一意の文字列識別子です。`aBv9njtYfwL4xfPZyEwz9m` |
| `gty` | アプリケーションがアクセストークンの要求に使用した[付与タイプ](/docs/ja-jp/get-started/applications/application-grant-types)です。`password`や`refresh_token`付与タイプにのみ存在します。 | 無 | 状況による | 付与タイプ：`password` |
| `permissions` | ロールに応じて、ユーザーまたはアプリケーションに付与可能な権限です。APIで\_\_［Enable RBAC（RBACを有効にする）］**と**［Add permissions in the Access Token（アクセストークンに権限を追加する）］\_\_が有効化されている場合にのみ含まれます。詳細については、「[APIにロールベースのアクセス制御を有効にする](/docs/ja-jp/get-started/apis/enable-role-based-access-control-for-apis)」をお読みください。 | 状況による | 状況による | `[ "create:bar", "create:foo", "read:bar", "read:foo" ]` |
| `org_id` | 組織IDです。ユーザーが組織を通して認証した場合に追加されます。詳細については、「[トークンと組織で作業する](/docs/ja-jp/manage-users/organizations/using-tokens)」をお読みください。 | 状況による | 状況による | 組織ID：`org_9ybsU1dN2dKfDkBi` |
| `org_name` | 組織名。ユーザーが組織を通して認証し、\_\_［Organization Names in Authentication API（Authentication APIで組織名を使用する）］\_\_の設定が有効な場合に追加されます。詳細については「[Authentication APIで組織名を使用する](/docs/ja-jp/manage-users/organizations/configure-organizations/use-org-name-authentication-api)」をお読みください。 | 状況による | 状況による | 組織名：`my_organization` |
| `authorization_details` | Rich Authorization Request（RAR）で使用されている認可の詳細情報です。詳細については、「[Rich Authorization Requestsを使用した認可コードフロー](/docs/ja-jp/get-started/authentication-and-authorization-flow/authorization-code-flow/authorization-code-flow-with-rar)」をお読みください。 | 状況による | 状況による | `{ "type": "money_transfer", "instructedAmount": {"amount": 2500, "currency": "USD"}, "destinationAccount": "xxxxxxxxxxx9876", "beneficiary": "Hanna Herwitz", }` |
| `cnf` | [mTLSトークンバインディング](/docs/ja-jp/get-started/applications/configure-mtls/set-up-resource-server-for-token-binding)に対応の確認クレームです。 | 状況による | 状況による | `{"x5t#S256":"A4DtL2JmUMhAsvJj5tKyn64SqzmuXbMrJa0n761y5v0"}` |
| カスタムクレーム | カスタムクレームは、アクションを使ってアクセストークンに追加することができます。詳細については「[カスタムクレームを作成する](/docs/ja-jp/secure/tokens/json-web-tokens/create-custom-claims)」をお読みください。 | 状況による | 状況による | `"favorite_color": “blue”` |
