WWW-Authenticate Inspect
認証ヘッダーとトークン情報をブラウザ内で点検します。入力はサーバーへ送信しません。期限・claim・schemeの一次切り分けに使えます。
状態
ブラウザ内で処理します。入力はサーバーへ送信しません。まずはここで一次切り分けしてください。
使い方
WWW-Authenticate か Response Headers を貼り付けて「解析」。認証方式とパラメータを整理します。
注意(このツール)
- WWW-Authenticate: のヘッダー行でも解析できます(複数行の貼り付けもOK)。
- 複数チャレンジがある場合は、スキームごとに分けて表示します。
このページについて
何をするツール?
WWW-Authenticate を分解し、認証方式(Basic/Bearer/Digest など)とパラメータ(realm/error など)を一覧表示します。
401 の原因切り分けや、認証の要件(realm/charset/エラー内容)を確認するのに向きます。
基本(401 と WWW-Authenticate)
- 401 Unauthorized のレスポンスには WWW-Authenticate が含まれるのが一般的です。
- WWW-Authenticate は「どう認証してほしいか」をサーバーが提示するヘッダーです。
- 複数の認証方式を同時に提示することもあります。
入力の例
- WWW-Authenticate: Basic realm="admin", charset="UTF-8"
- WWW-Authenticate: Bearer realm="api", error="invalid_token"
- Response Headers をまるごと貼り付け
代表的な認証方式
- Basic: ID/パスワード(Base64)。HTTPSでの利用が基本。
- Bearer: アクセストークン(JWTなど)
- Digest: チャレンジ応答(レガシー)
- Negotiate/NTLM: 統合認証(社内環境で見かける)
パラメータの意味(ざっくり)
- realm: 認証領域(どの範囲の資格情報か)
- charset: Basic で使われる文字コード(UTF-8 など)
- error / error_description: Bearer のエラー詳細
よくある落とし穴
- 401 なのに WWW-Authenticate が無い
- Basic を HTTPS 以外で使ってしまう
- Bearer エラーの原因が error_description に出ているのに見落とす
- 複数スキームがあるのにクライアントが1つしか試していない
切り分け手順(おすすめ)
- Response Headers Parser で WWW-Authenticate を抽出
- このツールでスキームとパラメータを整理
- Bearerなら JWT Decoder / JWT Verifier で中身と署名を確認
関連ツール
- HTTP Status Inspect
- Response Headers Parser
- Request Headers Parser
- JWT Decoder
- JWT Verifier
このツールでできること
- WWW-Authenticate のスキーム/パラメータ分解
- 複数チャレンジの一覧化
- 代表的な注意点の提示
注意(運用)
- 判定結果だけで信頼判定はできません。署名検証とissuer確認を必ず実施してください。
- 時刻ずれや環境設定差で再現性が変わるため、検証時刻と設定を記録してください。
参照仕様
- RFC 9110(HTTP Semantics)
- RFC 7617(Basic認証)
- RFC 6750(Bearer Token)
- MDN: WWW-Authenticate
FAQ
WWW-Authenticate が無い 401 は間違い?
多くのクライアントは WWW-Authenticate を参照します。無いと認証手順が分からず、実質的に不親切です。
Bearer の error / error_description は必須?
必須ではありませんが、原因切り分けに非常に役立ちます。
複数スキームがあるときは?
クライアントの実装によって選び方が異なります。提示順序とサポート状況を確認してください。
参考リンク
症状別ケーススタディ(このページ向け)
401応答の challenge 内容を解析し、クライアントに何を要求しているかを確認するページです。
- realm の値がAPI区分と一致しているか確認する
- error / error_description の整合性を確認する
- scope 指示が実際の認可要件を表しているか確認する
実装時チェックリスト(このページ向け)
- 401時の challenge フォーマットを仕様化する
- 多言語エラーメッセージは別チャネルで提供する
- クライアント実装向けに代表エラー例を用意する
- 不正な challenge 値の監視ルールを追加する
次に見る(診断順)
site_map ルールに基づいて、次に確認すべきページを表示しています。
- JWT 401/403 切り分け手順 — Authorization / WWW-Authenticate / claims / 署名検証を連携して 401 と 403 を分離する
- JWT Decoder と Verifier の使い分け — デコード確認と署名検証の役割差を整理し、401/403 切り分け導線へつなぐ
- Authorization Inspect — Authorization ヘッダー形式を解析
- JWT Verifier — JWT署名(HS/RS/ES)を検証
- JWT Clock Skew Check — iat/nbf/exp の時刻ズレを検出
- JWT TTL Check — exp/iat/nbf から有効期間と残TTLを算出
- OAuth Bearer Diagnostic — Bearer と WWW-Authenticate の整合を診断
- JWT 401/403 Troubleshooting — 401/403の認証失敗をヘッダーとJWTクレームから症状別に切り分け
同テーマの導線
認証
Bearer・WWW-Authenticate・JWT を横断して認証失敗を切り分け
- OAuth Bearer Diagnostic — Bearer と WWW-Authenticate の整合を診断
- JWT 401/403 Troubleshooting — 401/403の認証失敗をヘッダーとJWTクレームから症状別に切り分け
- JWT Claim Audit — JWTの必須/推奨クレーム不足を監査
- JWT TTL Check — exp/iat/nbf から有効期間と残TTLを算出
- JWT Clock Skew Check — iat/nbf/exp の時刻ズレを検出
- Authorization Inspect — Authorization ヘッダー形式を解析
- JWT Decoder — JWTのheader/payloadを復号して整形表示
- JWT Verifier — JWT署名(HS/RS/ES)を検証