Что такое JWT декодер
JWT (JSON Web Token) — токен для аутентификации и авторизации в API. Этот JWT декодер расшифровывает header и payload прямо в браузере, чтобы быстро посмотреть claims (exp, iss, aud, роли/скоупы) без отправки токена в сеть.
Где используется JWT
JWT чаще всего встречается в API как Bearer‑токен (заголовок Authorization), а также в cookie‑сессиях (например, когда фронтенд хранит токен в cookie). В реальных проектах он участвует в доступе к профилю, заказам, платежам, внутренним админ‑операциям — то есть прямо влияет на безопасность и контроль прав.
Что именно проверять в токене
- Сроки:
exp/iat/nbf— не слишком ли длинная жизнь токена и корректно ли выставляются времена. - Контекст:
iss/aud— не принимаются ли токены “из другой среды/приложения”. - Права:
roles/scope/permissions— есть ли лишние привилегии, не доверяет ли сервер данным без verify. - Лишние данные: нет ли PII/чувствительных полей в payload (JWT читается).
Подробнее: структура JWT, чек‑лист и примеры
Из чего состоит JWT
Формат: header.payload.signature. Header/payload обычно закодированы base64url (это не шифрование), подпись проверяется на сервере.
- Header: тип токена и алгоритм подписи (
alg). - Payload: claims (например,
sub,roles,scope,exp,iss,aud). - Signature: подпись (в этом инструменте мы её не проверяем).
Decode vs Verify
Decode — “прочитать” payload. Verify — проверить подпись и правила валидации (alg, iss, aud, время). Уязвимости часто появляются, когда система где‑то доверяет decode вместо verify.
Что смотреть в payload (чек‑лист)
exp/iat/nbf: время жизни и ограничения.iss/aud: issuer и audience.- roles/scope: права доступа.
- PII: лишние персональные данные в payload.