Выбор ответа Junior Авторизация и безопасность API спрашивают часто обновлено

Из чего состоит JWT

Вопрос

Что верно про JWT вида xxxxx.yyyyy.zzzzz?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Заголовок, payload и подпись; первые две части читает любой через Base64URL. Обычный JWT (JWS) подписан, но не зашифрован: payload открыт, поэтому туда нельзя класть секреты и персональные данные сверх нужного.

Варианты ответа

  1. Весь токен зашифрован ключом сервера, прочитать его содержимое без ключа нельзя
  2. Подпись хранит хеш пароля пользователя, по ней сервер сверяет вход
  3. Заголовок, payload и подпись; первые две части читает любой через Base64URLправильный ответ
  4. Сервер хранит каждый выданный JWT в базе, иначе токен не пройдёт проверку

Разбор

Обычный JWT (JWS) подписан, но не зашифрован: payload открыт, поэтому туда нельзя класть секреты и персональные данные сверх нужного. Подпись защищает от подделки: изменить role и не перевыпустить подпись нельзя. Хранить JWT на сервере не обязательно, в этом и смысл: проверка без похода в базу. Зашифрованный вариант называется JWE и встречается реже.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме