ГЛОССАРИЙ#IT#security

Что такое JWT (JSON Web Token)

JWT (JSON Web Token) — открытый стандарт RFC 7519 для безопасной передачи информации между сторонами в виде подписанного JSON-объекта. Главный механизм аутентификации в современных API.

Структура JWT

header.payload.signature Пример: eyJhbGciOiJIUzI1NiIs...

Три части токена

  • Header — JSON с типом ({"typ":"JWT"}) и алгоритмом подписи ({"alg":"HS256"}). Кодируется в Base64URL.
  • Payload — JSON с claims (утверждениями): sub (subject), iat (issued at), exp (expiration), любые пользовательские поля.
  • Signature — HMAC-SHA256 или RSA-подпись header+payload секретным ключом.

Как работает аутентификация

1) Клиент отправляет логин/пароль на сервер. 2) Сервер проверяет, генерирует JWT и возвращает клиенту. 3) Клиент сохраняет JWT (localStorage, cookie). 4) При каждом запросе клиент отправляет JWT в заголовке Authorization: Bearer ... 5) Сервер проверяет подпись и срок действия.

Преимущества JWT

  • Stateless — серверу не нужна сессия, можно масштабировать горизонтально;
  • Содержит информацию о пользователе (нет лишних запросов в БД);
  • Универсальный формат для всех платформ;
  • Подходит для микросервисов и SSO.
Связанные калькуляторы
/glossariy/chto-takoe-jwt← Все термины
Лиана Арифметова
АВТОРverifiedред. calcal.ru

Лиана Арифметова

Создатель и главный редактор

Миссия: демократизировать сложные расчёты. Превратить страх перед числами в ясность и контроль. Девиз: «Любая повторяющаяся задача заслуживает своего калькулятора».

Mathematical Engineering · МФТИ · редактирует каталог с 2012 года

Был ли этот калькулятор полезен?

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ

Инструмент справочный — не заменяет эксперта

Только для информационных целей. Все расчёты, результаты и данные, предоставляемые инструментом, носят исключительно ознакомительный и справочный характер. Они не являются профессиональной консультацией — медицинской, юридической, финансовой, инженерной или иной.

Точность результатов. Калькулятор основан на общепринятых формулах и методиках, однако фактические результаты могут отличаться в зависимости от индивидуальных условий, исходных данных и применяемых стандартов. Мы не гарантируем полноту, точность или актуальность приведённых расчётов.

Профессиональные решения — медицинские, финансовые, инженерные — должны приниматься только после консультации с квалифицированным специалистом. Не используйте автоматический расчёт как единственное основание для важных решений.

Ограничение ответственности. Авторы и разработчики сервиса не несут ответственности за прямой или косвенный ущерб, возникший из-за использования данных расчётов. Пользователь принимает на себя всю ответственность за интерпретацию результатов.