期待値は別の設定から持ってくる
期待するissuerは両方の文書に適用されます。末尾のスラッシュやポートの表記も比較対象です。別環境の発行者を意図的に比べる場合は空欄にし、差分を確認してください。
プロバイダーのメタデータ
ディスカバリドキュメントを貼り付けてください。比較を有効にすると、もう1つの設定を調べられます。
処理はこのタブ内で完結します。入力の送信・保存や外部データの取得は行いません。
文書を貼り付けるか、サンプルを読み込んでください。
両方の文書と入力どおりに比較します。空欄なら期待値との照合を省略します。
文書を貼り付けるか、サンプルを読み込んでください。
確認対象はメタデータのみです。サーバーの身元、到達性、トークンの署名は検証しません。
localhostでの検証やリバースプロキシの切り替え後に認証が動かないときは、クライアントの想定と公開された設定を照らし合わせる必要があります。OIDC Discoveryは各項目の値と診断を並べ、発行者URLの違いと必須項目の欠落を切り分けます。
OIDCメタデータはプロバイダーが公開する機能の宣言です。取得できたJSONが読めても、すべてのエンドポイントや鍵が利用できるとは限りません。まず静的な設定の問題を確認し、その後に実際の通信や認証処理を調べるためのページです。
OIDC Discoveryは発行者、エンドポイント、アルゴリズム、対応機能を分類します。必須項目は欠けていてもレポートに残り、検査範囲外の拡張は未検査と表示します。項目の行番号から入力に戻れるので、元の文書を探し直す必要がありません。
旧設定をA、新設定をBに貼り付けると、それぞれの診断と変更点を確認できます。トークンエンドポイントの変更や署名リストからの削除をJSON Pointerのパスで示します。何が変わったかを調べるために、文書を手作業で並べ替える必要はありません。
期待するissuerは両方の文書に適用されます。末尾のスラッシュやポートの表記も比較対象です。別環境の発行者を意図的に比べる場合は空欄にし、差分を確認してください。
入力が350ミリ秒止まると解析します。自動解析を切るとボタンとCtrl/Cmd + Enterで実行できます。入力やオプションを変えた直後は古い結果のコピーと保存が無効になります。
文書Aと文書Bでは項目ごとの問題を、差分ではAからBへの変更を表示します。表示は50件ずつ増やせます。書き出すレポートには、画面に未表示の項目も含まれます。
issuer、認可エンドポイント、jwks_uri、応答形式、subjectの種類、ID Token署名方式を調べます。token_endpointを省略できるのは、応答形式と明示されたgrantの両方から暗黙フローのみと判断できる場合です。
HTTPS、ホスト、認証情報やフラグメントの有無を確認します。issuerのクエリもエラーです。期待値との比較前にURLを正規化しないため、大小文字や末尾スラッシュの違いが隠れません。別ホストのエンドポイントは許容します。
RS256がID Token署名リストに含まれるか確認し、noneには注意を出します。クライアント認証署名のnoneはエラーです。scope、grant、真偽値の宣言も確認しますが、アルゴリズムが実装されているかは試しません。
大きな整数や長い小数を通常の浮動小数点数に変換しません。オブジェクトのキー順は無視し、配列は位置で比較します。ネストした拡張の値も正確なパスで示すため、細かな設定変更を取りこぼしにくくなります。
ローカル環境ではHTTPとHTTPSの違い、公開issuerと内部ホストの違い、プロキシの設定などを確認してください。このページはHTTPSの宣言を検査しますが、サーバーへ接続しません。通信側の失敗原因は実際のレスポンスやログで切り分けます。
通常はissuerのパスに/.well-known/openid-configurationを付けた場所です。提供元の案内で正確なURLを確認してください。このツールには取得したJSONを貼り付けます。URLだけを入力して取得する機能はありません。
スキーム、テナントのパス、末尾スラッシュなどが異なると別の文字列です。クライアントの設定とプロバイダーの宣言を確認してください。見かけをそろえるだけのURL正規化は、設定の不整合を隠すおそれがあります。
固定ではありません。発見文書のjwks_uriを参照します。別パスや別ホストの場合もあります。ここで取得できるのは宣言されたアドレスの文字列で、実際の鍵の内容は検査していません。
Keycloakのメタデータはjwks_uriで公開鍵セットの場所を示します。利用するクライアントライブラリの設定に従って、その公開鍵を署名検証に使います。このページは鍵ファイルを生成せず、ログインも実行しません。
計算や入力判定に問題がありましたか?