Идентификация сервисов и жизненный цикл токенов
Frigolive Public API не использует пароли пользователей-людей. Он работает на основе отдельной интеграционной учетной записи — client credentials, выпущенной для вашего бэкенд-сервиса. Такое разделение обеспечивает непрерывный поток данных между машинами (machine-to-machine), даже если сотрудники увольняются или завершается сессия в веб-интерфейсе.
Что получает клиент
Каждая интеграция получает публичный client ID и секрет (client secret), который отображается только при первоначальном создании или ротации. Секрет клиента не хранится в открытом виде в базе данных Frigolive. Вам следует сохранять его в переменных окружения бэкенда или, предпочтительно, в специализированном менеджере секретов (secret manager).
Секрет клиента не является постоянным токеном API. Это мастер-ключ, используемый для получения краткосрочного токена доступа (access token). Токен доступа действует примерно один час и содержит либо все предоставленные интеграции области доступа (scopes), либо запрошенное вами их подмножество.
Как происходит обновление токена
Public API не выпускает refresh-токены. Ваш бэкенд повторно выполняет процедуру client credentials незадолго до истечения срока действия токена доступа. Если одновременно нескольким запросам требуется обновление, следует запустить только один запрос токена, а полученный результат использовать для всех параллельных операций.
При отзыве учетных данных или повышении версии безопасности ранее выпущенные токены доступа немедленно аннулируются, даже если их срок действия еще не истек.
Ротация секретов
При генерации нового секрета клиента для старого секрета можно задать короткое окно параллельного действия (overlap window). Сначала загрузите новое значение в свой менеджер секретов, перезапустите сервисы и убедитесь, что токены успешно выпускаются. По завершении окна старый секрет перестает действовать автоматически.
Ограничение на сетевом уровне (список разрешенных IP)
Вы можете зарегистрировать список разрешенных IP-адресов или подсетей CIDR. После настройки как запросы токенов, так и вызовы данных будут приниматься только с этих адресов, поэтому скомпрометированный секрет нельзя будет использовать из другой сети.
Граница браузера и мобильных приложений
Никогда не размещайте секрет клиента в браузере, мобильном приложении, Git-репозитории или любом публичном коде. Ваш интерфейс взаимодействует только с вашим бэкендом (паттерн BFF). Панель авторизации на этом портале для разработчиков аналогично хранит в памяти браузера только ранее выпущенный краткосрочный токен доступа — она никогда не принимает секрет клиента.