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

# JSON Web Key Setを見つける

> JSON Web Key Set（JWKS）エンドポイントを使って検出されたJSON Web Key（JWK）を使用してJWT署名を検証する方法について説明します。

このディスカバリーエンドポイントを使用して、アプリケーションやAPIが[JSON Web Key Set（JWKS）](/docs/ja-jp/secure/tokens/json-web-tokens/json-web-key-sets)エンドポイント（`jwks_uri`）を自動的に見つけるように構成します。このエンドポイントには、RS256署名アルゴリズムで署名された、すべてのAuth0発行<Tooltip data-tooltip-id="react-containers-DefinitionTooltip-2" href="/docs/ja-jp/glossary?term=json-web-token" tip="JSON Web Token（JWT）: 二者間のクレームを安全に表現するために使用される標準IDトークン形式（および多くの場合、アクセストークン形式）。" cta="用語集の表示">JSON Web Token</Tooltip>（JWT）に署名するために使用されたJWKSが含まれています。エンドポイントは以下の場所にあります：

`https://{yourDomain}/.well-known/openid-configuration`.

JWKSを使用して[JWTを検証する](/docs/ja-jp/secure/tokens/json-web-tokens/validate-json-web-tokens)場合、次の操作が必要になります。

1. Auth0ディスカバリーエンドポイントからJWKSを取得し、署名に使用される可能性のある鍵をフィルタリングします（例：公開鍵が欠落している鍵や、`kid`プロパティが設定されている鍵）。
2. デコードしたJWTのヘッダーから`kid`プロパティを取得します。
3. フィルタリングしたJWKSの中から`kid`プロパティと一致する鍵を探します。
4. JWKSで対応する`x5c`プロパティを使用して証明書を作成します。
5. 証明書を使用してJWTの署名を検証します。

JWKSを使用してJWTの署名を検証する例は、「[RS256とJWKSを使った操作](https://auth0.com/blog/navigating-rs256-and-jwks/)」（Node.js使用）または「[Backend/API Quickstarts](https://auth0.com/docs/quickstart/backend)」を参照してください。

JWTの構造の詳細については、「[JSON Web Tokenの構造](/docs/ja-jp/secure/tokens/json-web-tokens/json-web-token-structure)」をお読みください。

JWKSに複数の署名鍵が存在する可能性があることを想定しておくことをお勧めします。Auth0のJWKSエンドポイントにある署名鍵は通常1つであるため、不要に思われるかもしれませんが、署名証明書のローテーションでJWKSに複数の署名鍵が見つかる可能性があります。

アプリケーションの性能を向上させ、[レート制限](/docs/ja-jp/troubleshoot/customer-support/operational-policies/rate-limit-policy)の超過を回避できるように、署名鍵はキャッシュすることをお勧めします。ただし、トークンのデコードに失敗した場合には、必ずキャッシュを無効にして、新しい署名キーを取得し、**もう一度だけ** 試すようにしてください。

## もっと詳しく

* [JSON Web Key Set](/docs/ja-jp/secure/tokens/json-web-tokens/json-web-key-sets)
* [JSON Web Key Setのプロパティ](/docs/ja-jp/secure/tokens/json-web-tokens/json-web-key-set-properties)
* [JSON Web Tokenクレーム](/docs/ja-jp/secure/tokens/json-web-tokens/json-web-token-claims)
* [JSON Web Tokenの構造](/docs/ja-jp/secure/tokens/json-web-tokens/json-web-token-structure)
* [JSON Web Tokenを検証する](/docs/ja-jp/secure/tokens/json-web-tokens/validate-json-web-tokens)
* [トークンのベストプラクティス](/docs/ja-jp/secure/tokens/token-best-practices)
