Секреты и API-ключи
Как хранить токены и пароли так, чтобы они не попадали в frontend и переписку с AI.
Где добавлять секреты
Откройте проект и перейдите в «Данные → Секреты». Укажите имя переменной и её значение.
Используйте понятные имена в верхнем регистре, например CRM_API_TOKEN.
Имя должно состоять из латинских букв, цифр и символа подчёркивания. Не добавляйте в название само секретное значение и не используйте одно имя для ключей разных сервисов.
Как Vixy хранит значения
Значения шифруются перед сохранением. Интерфейс и API не возвращают сохранённый секрет открытым текстом. Секреты подставляются только во время серверного выполнения управляемой функции.
Карточка секрета показывает только имя и дату обновления. Чтобы заменить ключ, сохраните новое значение под тем же именем. После удаления функции, которая использовала ключ, удалите и ненужный секрет.
Как использовать секрет
Секрет указывается по имени в декларации управляемой функции. Во время вызова Vixy подставляет его в разрешённый заголовок, тело запроса или Basic Auth на сервере. Браузер получает только результат функции.
Не пытайтесь читать секрет через window.vixy, таблицу проекта или переменную import.meta.env: публичного метода чтения значений намеренно нет.
Правила безопасности
- не записывайте ключи в React-, HTML- или JavaScript-файлы;
- не отправляйте ключи в чат с AI;
- не используйте секрет в публичном API-запросе из браузера;
- замените ключ у провайдера, если он оказался в истории проекта или логах.
Если ключ оказался в коде
- Немедленно отзовите или перевыпустите ключ у провайдера.
- Удалите значение из файлов проекта и истории внешнего репозитория.
- Добавьте новый ключ в «Данные → Секреты».
- Проверьте журналы провайдера на неизвестные обращения.
- Обновите функцию или готовую интеграцию и выполните тестовый запрос.
Готовые интеграции самостоятельно запрашивают необходимые реквизиты и сохраняют их в это же защищённое хранилище.