メインコンテンツへスキップ
アプリケーションや API がトークンの検証に使用する JSON Web Key (JWK) を変更するには、署名鍵を定期的に手動でローテーションできます。アプリケーションまたは API がこの鍵の変更に対応していない場合、期限切れの署名鍵を使用してトークンを検証しようとすると、認証リクエストは失敗します。
Auth0 では、まず開発テナントで署名鍵のローテーションを実行し、その後、アプリケーションと API が引き続き想定どおりに動作することを確認することを推奨しています。すべてが正常に動作していることを確認したら、本番テナントでも同じ署名鍵のローテーションを実行してください。
Auth0 が一度に署名に使用する署名鍵は 1 つだけですが、テナントの Connect (OIDC) ディスカバリー ドキュメントには、常に複数の鍵が含まれます。OIDC ディスカバリー ドキュメントには、現在の鍵と次の鍵の両方が常に含まれ、前の鍵がまだ失効されていない場合は、その鍵も含まれることがあります。緊急時にもシームレスに対応できるよう、アプリケーションはこのドキュメントに記載されているどの鍵でも使用できるようにしておく必要があります。OpenID Connect ディスカバリー ドキュメントの詳細については、Locate JSON Web Key Sets を参照してください。
新しい署名鍵に合わせてアプリケーションを更新する時間を確保するため、前の鍵で署名されたすべてのトークンは、その鍵を失効するまで引き続き有効です。詳しくは、Revoke Signing Keys を参照してください。
テナントのアプリケーション署名鍵は、 または Auth0 を使用してローテーションできます。

Dashboard を使用する

  1. Dashboard > Settings > Signing Keys に移動します。
    Dashboard テナント設定の Signing Keys タブ
  2. Rotation SettingsRotate Signing Key を見つけ、Rotate Key を選択します。
  3. 確認のため、Rotate をクリックします。
    Dashboard Settings の Signing Keys タブでのローテーション確認

Management API を使用する

  1. 署名鍵の一覧を取得するには、Get all Application Signing Keys エンドポイントに GET リクエストを送信します。
  2. 署名鍵をローテーションするには、Rotate the Application Signing Key エンドポイントに POST リクエストを送信します。MGMT_API_ACCESS_TOKEN のプレースホルダー値は、Management API のアクセストークンに必ず置き換えてください。
説明
MGMT_API_ACCESS_TOKENスコープ create:signing_keys および update:signing_keys を持つ Management API のアクセストークン

キーローテーションの影響

アクセストークンを受け入れる API と API ゲートウェイ

ほとんどのミドルウェアおよび API ゲートウェイでは、JSON Web Key Set (JWKS) エンドポイントを使用して、現在および今後の署名鍵を一定間隔で取得します。ミドルウェアや API ゲートウェイがこのエンドポイントをサポートしておらず*.cer ファイルを手動で設定する必要がある場合は、Auth0 での署名鍵ローテーションに合わせて、ミドルウェアおよびゲートウェイの再設定を調整する必要があります。

Regular Web Applications

Auth0 で署名鍵をローテーションする際は、 または を利用しているアプリケーションの再構成を調整する必要があります。通常、これは新しい公開証明書をアップロードするか、WS-Fed/SAML メタデータ URL を入力してアプリケーションを再構成するときに行います。これにより、アプリケーションがトークンの検証に使用する JWKS キーが変更されるため、実装で JWKS キーは変わらないものと想定しないようにしてください。

詳細はこちら