Чтение заголовка, полезной нагрузки и времени JWT
JWT состоит из трёх частей: заголовка, полезной нагрузки и подписи. Декодер показывает заголовок и данные как JSON и преобразует exp, iat и nbf из временных меток Unix в читаемые даты.
Декодирование выполняется в браузере. Однако лучше использовать тестовые токены и не вставлять рабочие секреты на веб-страницы.
Проверка полей JWT при отладке авторизации
При ответе API 401 сначала посмотрите exp. При интеграции проверьте выданные поля, а при проблемах доступа — role и scope. Это удобнее, чем выводить токены в журналы.
Декодирование JWT не проверяет подпись
Части Base64URL доступны для чтения и изменения любому. Инструмент не проверяет подпись. Перед доверием к полям сервер обязан проверить токен своим ключом и политикой безопасности. Нельзя принимать решения о доступе по декодированным данным клиента; alg=none, слабые алгоритмы и истёкший exp требуют отклонения согласно политике сервиса.
Читаемый JWT с будущим сроком действия точно действителен?
Нет. Любой может создать читаемые заголовок и данные. Здесь не проверяются подпись, издатель, получатель или политика доступа. Принимающий сервис должен самостоятельно проверить токен.