Токен обновления

Срок действия токенов доступа намеренно короткий, поэтому украденный токен полезен лишь ненадолго. Токен обновления — это его более длительный срок действия: клиент хранит его, никогда не отправляет на серверы ресурсов и предъявляет его только серверу авторизации, когда ему требуется новый токен доступа.

Как это работает

Когда API выдает ошибку 401 из-за истечения срока действия токена доступа — или чуть раньше, — клиент отправляет POST-запрос grant_type=refresh_token на конечную точку токена и получает новый токен доступа, часто с новым токеном обновления, который заменяет старый (ротация). Повторное использование ротированного токена обновления является признаком кражи, и хорошо спроектированные серверы затем отзывают всю цепочку.

Заблуждение

Обновление при каждой ошибке 401 — это правильно. Ошибка 401, вызванная отозванным или недействительным токеном, снова завершится неудачей после обновления; клиент, который обновляет и повторяет попытки без ограничений, превращает выход из системы в бесконечный цикл. Обновите один раз, повторите попытку один раз и отправьте пользователя на повторный вход, если это не удастся.

Попробуйте здесь.

POST /auth/v1/oauth/token выдает токен обновления в потоке кода авторизации и принимает grantType refresh_token с этим refreshToken для получения нового токена доступа. Токены доступа здесь истекают через 15 секунд, поэтому путь обновления достигается быстро.

Источники

Другие термины

Читать страницу на английском

Все термины · Приёмы тестирования · Все 39 mock REST API

Последнее обновление