Что это
Токены ботов, пароли баз и ключи API хранятся отдельно от кода: в файле .env на сервере или в самом сервисе. Тогда код можно показать или передать, не раскрыв доступы.
Как используем
Ключи Gemini и токены ботов задаются в .env, в сценариях n8n ключи живут в самом n8n, а не в файле сценария. Приложения маскируют ссылки подписок, ключи и токены ещё на устройстве, прежде чем отправить журнал разработчику.
Где это нужно бизнесу
- Код проекта передают другому разработчику или показывают, и доступы при этом не должны утечь.
- В резервной копии или журнале не должно оказаться паролей.
- Токен бота или ключ API скомпрометирован, и его нужно поменять за минуты, без выпуска новой версии.
Как мы это используем
.env на сервере. Токен бота и ID администраторов в боте дней рождений берутся из окружения, ключи Gemini и списки моделей в финансовом ассистенте — из .env, а не из кода.- Ключи внутри сервиса. В n8n ключи и токены живут в самом n8n, а не в файле сценария.
- Ничего лишнего в git. В обследовании сети
.gitignore не пускает в репозиторий ключи, конфигурации доступа и дампы, а пароли служб описаны словами. - Шифрование в базе. В тикет-системе пароли реестра хранятся шифротекстом, ключ — только в окружении сервера: еженедельный дамп базы уходит в Telegram, и без шифрования пароли поехали бы открытым текстом.
- Маскировка в отчётах. Приложения при записи журнала заменяют ссылки подписок, ключи, UUID, пароли и токены заглушками ещё на устройстве — приёмник отчётов.
Типичные проблемы
- Реквизиты в коде. В одном из наших ботов вынести настройки в
.env ещё предстоит — это записано в планы, а не забыто. - Секрет в истории git. Попавший в репозиторий ключ остаётся в истории; его нужно менять, а не просто удалять файл.
Когда это не нужно
У статической страницы без форм и интеграций секретов нет — и .env ей не нужен.