JWT Декодер/

Ваши данные на 100% конфиденциальны -- JWT полностью декодируется и кодируется непосредственно на вашем устройстве.

JWT
Декодированный заголовок
Декодированная полезная нагрузка
Публичный ключ

Узнайте о JWT

Все, что вам нужно знать о JWT и пошаговое руководство по проверке JWT в различных фреймворках.

Что такое JWT?

JWT (JSON Web Token) — это автономный, независимый от состояния токен, который содержит информацию в структурированном и читаемом формате. Независимо от того, защищаете ли вы API или применяете аутентификацию на основе токенов для вашего приложения, JWT — это мощный инструмент, потому что они:

  • Без состояния: JWT являются автономными и не требуют состояния на стороне сервера для валидации. JWT может обеспечить целостность данных с помощью подписей.
  • Совместимость между службами: JWT легко распространяются и проверяются в различных службах.
  • Расширяемость: Полезная нагрузка JWT может содержать пользовательские претензии, что позволяет гибко авторизовать и обмениваться информацией.
Узнайте больше

Структура JWT

Обычный JWT разделен на три части, каждая из которых закодирована в Base64URL и разделена точками (.):

  • Заголовок - Содержит метаданные, такие как алгоритм подписи (например, HS256 или RS256) и тип токена (JWT).
  • Полезная нагрузка - Содержит фактические данные, такие как идентификатор пользователя, профиль пользователя, время истечения или области действия.
  • Подпись - Хэшированное сочетание заголовка, полезной нагрузки и защищено с помощью секретного ключа. Его цель — гарантировать целостность токена и подтвердить, что он не был изменен

Эта структура позволяет JWT предоставлять компактный и безопасный способ передачи информации между сторонами.

jwt_structure

Общие требования токена в JWT

Претензии являются частью полезной нагрузки и содержат ключевую информацию. Вот стандартизированные зарегистрированные претензии для вашей справки:

ПретензииПолное имяОписание
issИздательСубъект, который выдал JWT, например сервер авторизации.
subТемаОпределяет объект JWT, обычно представляя аутентифицированного пользователя.
audАудиторияУказывает, какие получатели могут принимать и обрабатывать токен. Это может быть массив значений для нескольких аудиторий или одно значение для одного получателя.
expВремя истеченияУстанавливает время истечения срока действия токена, после которого он становится недействительным. Это помогает предотвратить атаки воспроизведения, ограничивая срок действия токена.
nbfНе ранее времениДелает токен действительным только после этой временной метки. Полезно в ситуациях, когда часы недоступны.
iatВыпущено вКогда токен был создан. Это может быть использовано для определения возраста токена.
jtiИдентификатор JWTУникальный идентификатор токена, полезный для предотвращения многократного использования одного и того же токена (например, в атаках воспроизведения).

В зависимости от спецификации и конфигурации сервера авторизации в полезную нагрузку могут быть включены дополнительные претензии для поддержки определенных случаев использования. Вы также можете добавить пользовательские претензии в JWT в соответствии с уникальными бизнес-требованиями.

Предупреждение: Не храните личную или конфиденциальную информацию в претензиях JWT. Хотя претензии JWT кодируются (с использованием Base64URL), они не шифруются. Это означает, что любой, у кого есть токен, может его декодировать и просматривать претензии, даже если он не может их изменить, не нарушив подпись. Используйте шифрование или другие безопасные методы для защиты конфиденциальных данных в случае необходимости.

Когда использовать JWT?

JWT могут быть особенно полезными в следующих сценариях:

  1. Архитектура микросервисов: Для бессерверной аутентификации в нескольких службах.
  2. Системы единого входа (SSO): Предоставление доступа к нескольким приложениям при одной аутентификации.
  3. Мобильные приложения: Эффективное поддерживание пользовательских сессий через API вызовы.
  4. Высоконагруженные приложения: Снижение нагрузки на базу данных в условиях большого объема.
  5. Общий доступ к ресурсам между источниками (CORS): Упрощение аутентификации между несколькими доменами.
  6. Архитектуры без серверов: Обеспечение бессерверной аутентификации, где сессии на стороне сервера трудно поддерживать.
Узнайте больше

Как проверить JWT?

Целостность JWT нужно подтвердить, чтобы убедиться, что его заголовок и полезная нагрузка не были изменены. Ниже приведены пошаговые примеры проверки JWT в популярных программных средах:

Связанные темы JWT

Все, что вам нужно знать о JWT и пошаговое руководство по проверке JWT в различных фреймворках.

Получите больше возможностей с Logto Cloud

Упростите свои рабочие процессы и обеспечьте управление пользователями с помощью Logto Cloud. Основанное на OpenID Connect (OIDC), оно использует JWT для предоставления надежной системы аутентификации и авторизации, разработанной для масштабирования в соответствии с вашими потребностями.