ガイド

JWTのpayloadを確認する時の注意点

JWT の payload は簡単に読めますが、それだけで信頼してよいわけではありません。デコードと検証は別の作業です。

セキュリティ・認証読了目安 4 分
JWTデコーダー - ヘッダーとペイロードBase64 - UTF-8を変換

これは何か

JWT の payload は簡単に読めますが、それだけで信頼してよいわけではありません。デコードと検証は別の作業です。

どんな時に使うか

  • - exp や iss などの標準 claim を確認したい時。
  • - 開発中の API で、トークンに期待した情報が入っているか見たい時。
  • - コピーした JWT にカスタム claim が含まれているか確認したい時。

よくある勘違い

  • - デコードしただけでは署名検証になりません。
  • - payload に見えている情報は秘密情報として扱うべきではありません。
  • - 期限切れの JWT でも、文字列としては普通に読めます。

すぐ試す方法

  1. JWT Decoder を開きます。
  2. トークンを貼り付けます。
  3. header と payload を確認します。
  4. 必要なら認証側の正規フローで署名や claim を検証します。

入力例

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjMiLCJyb2xlIjoiYWRtaW4ifQ.signature

出力例

{
  "sub": "123",
  "role": "admin"
}

注意点

  • - 読める情報は保護されているとは限りません。
  • - 認証トラブルでは exp や iat をまず確認すると切り分けしやすいです。
  • - Base64 の前提を知っていると、JWT の構造理解も早くなります。

よくある質問

デコードだけで JWT の正当性は確認できますか?

できません。署名と claim の検証は別途必要です。

payload に秘密情報を入れてよいですか?

避けるべきです。デコードすれば容易に読めます。

まず何を確認するとよいですか?

期限切れが多いので、最初は exp を見ることが多いです。