本文へスキップ
ecdsa.com

exp(有効期限クレーム)

Unix エポックからの秒数で時刻を示す JWT の登録済みクレーム(RFC 7519 §4.1.4)で、その時刻以降はトークンを受け入れてはいけません。
別表記exp claimexpiration timeNumericDatenbfiat

exp は NumericDate、つまり 1970-01-01T00:00:00Z からの秒数(うるう秒は無視)であり、ミリ秒ではありません(13 桁の値は、JavaScript の Date.now() に起因するよくあるバグです)。現在時刻が exp 以降であれば、トークンは無効です。検証者は時刻のずれに備えて、通常 1〜2 分程度のわずかな猶予を設けてもかまいません。関連するクレームには nbf(有効開始時刻)と iat(発行日時)があります。

ベアラートークンは一度発行すると取り消せないため、アクセストークンの有効期間は短く(数分)し、長く使い続けるにはリフレッシュトークンか再認証を使ってください。jwt expired や Signature has expired などのエラーは、検証者が exp を自身の時計と比較したことを示します。発行者を疑う前に、双方の時計を確認してください。

規格と参考文献

すべての用語