← К заметкам

Заметки

Как хранить OAuth-токены приложения

Токены нужно хранить раздельно для каждой установки приложения. Один глобальный access_token рано или поздно приведёт к запросу на чужой портал.

В серверном хранилище свяжите авторизацию с установкой, пользователем и member_id. Сохраните адрес REST endpoint, срок действия и пару access/refresh. Секреты не должны попадать в клиентский JavaScript, репозиторий или журнал HTTP-запросов.

При обновлении сохраняйте новую пару токенов вместе. Если два задания одновременно пытаются обновить одну авторизацию, понадобится блокировка на эту установку: иначе более поздняя запись может затереть актуальный результат устаревшим.

Переустановка и удаление приложения — отдельные события жизненного цикла. Старую авторизацию нельзя бесконечно использовать только потому, что запись ещё лежит в базе.