Per Документы Google, казалось бы, токены обновления необходимы только для автономных приложений (приложений, которые могут запускаться в токен с истекшим доступом, когда пользователь не вокруг).
токены доступа периодически истекают. Вы можете обновить токен доступа без запроса пользователю разрешения (в том числе, когда пользователь нет), если вы запросили автономный доступ к связанным областям с токеном.
...
Запрос на автономный доступ является требованием для любого приложения, которое необходимо получить доступ к API Google, если пользователь отсутствует. Для например, приложение, которое выполняет службы резервного копирования или выполняет действия в предопределенное время должно быть в состоянии обновить свой токен доступа, когда пользователя нет. Стиль доступа по умолчанию называется онлайн.
Однако описание токенов обновления в целом и этот вопрос в частности оба, похоже, подразумевают, что токены обновления необходимы в любое время, когда вы хотите запросить новый токен доступа.
Я думаю, что согласен с объяснением Google и не использую токены обновления. Мой опыт работы с поставщиками OIDC состоял в том, что обновление работает следующим образом:
- Пользователь запрашивает защищенный ресурс с клиентского сервера
- Клиентский сервер определяет, что токен доступа истек.
- Клиентский сервер перенаправляет пользователя на конечную точку аутентификации OP
- OP аутентифицирует пользователя без взаимодействия из-за файлов cookie, хранящихся в браузере пользователя с доменом OP.
- Клиентский сервер завершает запрос.
Пользователь может видеть несколько переадресаций, но кроме этого повторная аутентификация прошла без какого-либо взаимодействия с ними. Учитывая это, нужно ли беспокоиться об обновлении токенов, если пользователь всегда будет присутствовать в приложении?