JWT — формат передачи claims. Распространённый подписанный JWT состоит из header, payload и signature; подпись обеспечивает целостность, но не скрывает содержимое.
Расскажите всё, что знаете о JWT-токенах.
JWT — формат передачи claims. Распространённый подписанный JWT состоит из header, payload и signature; подпись обеспечивает целостность, но не скрывает содержимое.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
JWT — формат передачи claims. Распространённый подписанный JWT состоит из header, payload и signature; подпись обеспечивает целостность, но не скрывает содержимое.
Проверяющий сервис должен явно ограничивать алгоритмы, выбирать доверенный ключ и проверять применимые exp, nbf, iss, aud. Base64url — кодирование, не шифрование; секретные данные в payload помещать нельзя.
JWT удобен для проверяемых утверждений между системами, но усложняет немедленный отзыв и ротацию ключей. Access token может быть JWT, refresh token — непрозрачной случайной строкой. Возможны и зашифрованные JWT/JWE, но это другой способ защиты. Не принимайте токен только потому, что удалось декодировать JSON.