01Безопасность
Управление секретами
Где хранить, как ротировать, как обнаружить утечку.
Настрой управление секретами.
Где НЕ хранить
- ❌ В коде / репозитории
- ❌ В Slack / email
- ❌ В дашборде без 2FA
Где хранить
- ✓ Platform secret store (Vercel/Render/Fly)
- ✓ 1Password / Bitwarden для команды
- ✓ AWS Secrets Manager / GCP Secret Manager
- ✓ HashiCorp Vault — энтерпрайз
Принципы
1. Принцип наименьших привилегий
- Каждый сервис имеет свой секрет
- Read-only там где можно
- Production-секрет = только production-сервис
2. Ротация
- API keys: каждые 90 дней
- Database passwords: 180 дней
- При уходе сотрудника — все ключи к которым имел доступ
- При подозрении на утечку — немедленно
3. .env.example в репо
Без значений, с комментариями где брать.
4. Detection — leak monitoring
- GitHub Secret Scanning (вкл по умолчанию)
- gitleaks / trufflehog в pre-commit hook
- Sentry / лог-агрегатор фильтрует
*_KEY,*_TOKEN
5. При утечке
- Немедленно revoke
- Сгенерировать новый
- Обновить везде где использовался
- Аудит: что могло быть скомпрометировано
- Notify юзеров если данные могли утечь
- Post-mortem
Анти-паттерны
- ❌ Один
.envфайл расшарен по Slack - ❌ Hardcoded fallback в коде
- ❌ Один root API key для всего
Похожие промты
site / security
Content Security Policy и security headers
CSP, HSTS, X-Frame, Permissions-Policy — закрыть основные классы атак за один проход.
securitycspheaders
Открыть
Продвинутый30-60 мин
site / security
Аутентификация и rate limiting
Защита логина, реги, восстановления пароля от brute force.
securityauthrate-limit
Открыть
Продвинутый30-60 мин
site / security
Дизайн 2FA
TOTP / SMS / passkey: enrollment UX, recovery codes, lost-device flow, обязательность по ролям.
security2faauth
Открыть
Продвинутый1-2 часа