SYSTEM ATLASЗагрузка материала

Ротация refresh-токенов

Refresh Token Rotation

При ротации сервер выдаёт новый refresh-токен при каждом обновлении доступа и делает предыдущий недействительным.

Простыми словами

Например, мобильное приложение обновляет access token и получает новый refresh token; повтор предыдущего завершает всю цепочку сессии. Поэтому правило проверяют ещё на этапе проектирования - иначе одна удобная лазейка может превратиться в доступ, которого у пользователя или процесса быть не должно.

Пример от @Vibeclakr

Пример при разработке

Мобильное приложение обновляет access token и получает новый refresh token; повтор предыдущего завершает всю цепочку сессии.

Это редакционный пример применения, а не часть определения или доказательство концепции.

Формальное определение

При ротации сервер выдаёт новый refresh-токен при каждом обновлении доступа и делает предыдущий недействительным.

Механизм действия

Сервер хранит связь поколений, одноразово принимает текущий токен и при повторном использовании отзывает связанную сессию.

Пример в работе

Нерабочий подход

Внедрить «Ротация refresh-токенов» как формальную настройку, не проверив сценарий отказа и ограничение: Нужны атомарность, защита от гонок и корректное поведение при потере ответа.

Системный подход

Применять «Ротация refresh-токенов» только для заявленной цели, проверять поведение на реальном контуре и сохранять наблюдаемый критерий результата.

Ограничения

Нужны атомарность, защита от гонок и корректное поведение при потере ответа.

Источник

IETF, “Best Current Practice for OAuth 2.0 Security”, 2025.

Первоисточник