Выбор ответа Middle Аутентификация и права обновлено
Ротация refresh-токенов
Вопрос
Зачем при каждом обмене refresh-токена выдавать новый refresh и инвалидировать старый?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Украденный refresh быстро бесполезен, а повтор старого выдаёт кражу. Если злоумышленник и пользователь оба попытаются обменять один и тот же refresh, второй обмен увидит уже использованный токен.
Варианты ответа
- Чтобы уменьшить размер токена: новый refresh содержит меньше claims
- Украденный refresh быстро бесполезен, а повтор старого выдаёт кражуправильный ответ
- Чтобы токен работал без HTTPS: каждый новый токен нельзя переиспользовать
- Ротация нужна для access-токенов, а refresh меняют только при смене пароля
Разбор
Если злоумышленник и пользователь оба попытаются обменять один и тот же refresh, второй обмен увидит уже использованный токен. Сервер может трактовать это как кражу и отозвать всю цепочку сессии. Без ротации украденный refresh даёт доступ на недели. Размер и HTTPS тут ни при чём, а access-токены не обмениваются.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.