Секреты
Определение: Секреты — это конфиденциальные данные, которые дают доступ к системам и данным: пароли, API-ключи, токены, приватные ключи, строки подключения к базе, ключи подписи, секреты вебхуков. Их нельзя хранить «как обычный текст» в коде, в открытых папках сайта или в публичных репозиториях.
Зачем это нужно
- Предотвращает взлом: утечка одного ключа может открыть доступ к БД, почте, оплатам и админке.
- Упрощает администрирование: секреты меняются без переписывания кода и повторных сборок.
- Позволяет разделять окружения: разные секреты для разработки, теста и продакшена.
- Снижает ущерб: можно быстро отозвать (rotate) один секрет без «переезда» всего проекта.
- Помогает контролировать доступ: секреты видят только те, кому реально нужно.
Пример
Сценарий: сайт отправляет письма и принимает оплату. Если SMTP-пароль и ключ платёжного шлюза лежат прямо в коде или случайно попали в репозиторий, злоумышленник может рассылать спам от вашего домена или проводить операции через ваш аккаунт сервиса.
Правильный подход: секреты хранятся в переменных окружения или в менеджере секретов, а в коде остаются только «имена» переменных. При утечке — секрет сразу меняют в панели сервиса и обновляют значение на сервере, не трогая код.
Скриншот
Подпись к скриншоту: показать, где в проекте хранятся секреты (переменные окружения/панель хостинга/менеджер секретов) и что значения скрыты, а доступ ограничен.
Частые ошибки
- Хранить секреты в репозитории (в коде, в конфиге, в .env) и случайно сделать его публичным.
- Класть секреты в публичную папку сайта или оставлять доступ к файлам конфигурации через веб.
- Использовать один и тот же ключ для всех окружений и всех задач (слишком широкий доступ).
- Не делать ротацию: ключи годами не меняются, даже после увольнений/инцидентов.
- Передавать секреты в чатах/почте без контроля и без понимания, кто имеет доступ к истории.
Связанные термины
- .env
- Переменные окружения
- API-ключ
- Токен
- Приватный ключ
- Ротация ключей
- Права на файлы
Наши услуги
- Техническая поддержка сайтов — настроим безопасное хранение секретов, права доступа и регулярную ротацию.
- Доработка сайтов — вынесем секреты из кода в окружение, разграничим доступы и закроем утечки.
- Создание корпоративных сайтов — развернём проект с безопасной конфигурацией и правильной инфраструктурой под ключ.