Безопасность БД.
Сеть и инфраструктура
- Доступ к БД только через приватную сеть или VPN
- Firewall: открыт только порт СУБД
- БД не должна быть напрямую в интернете
⸻
Файлы и ОС
- Права доступа на уровне ОС для файлов БД
- Регулярные обновления безопасности ОС
- Шифрование диска (LUKS/BitLocker/TPM) для защиты данных «на физическом носителе»
⸻
Пользователи и доступы
- Принцип минимальных прав (Least Privilege)
- Только нужные права: SELECT / INSERT / UPDATE / DELETE
- Не использовать root / postgres в приложениях
- Не хранить пароли в коде
⸻
Аудит и логирование
- Аудит: кто, когда, что делал, с какими объектами
- Логирование: подключения, ошибки, подозрительная активность
- Профайлер / планы запросов: выявление тяжёлых запросов → предотвращение DoS или неправильного доступа
⸻
SQL-инъекции
- П араметризованные запросы / prepared statements
⸻
Бэкапы
- Цель: ошибки пользователей, сбои, атаки
- Типы бэкапов:
- Полный — вся база
- Инкрементальный — изменения с последнего бэкапа
- Дифференциальный — изменения с последнего полного бэкапа
- Методы:
- SQL-дампы — перенос структуры и данных
- Файловый — точная копия файлов
- Стриминг (WAL) — откат к любому моменту времени
- Практика: хранить отдельно, шифровать, проверять восстановление
⸻
Прочее
- Разделение сред: dev / stage / prod
- 2FA для админов
- Отключить пользователей и базы по умолчанию
- Отключить анонимные подключения
- SSL / TLS: шифрование трафика (пароли и PII)
Безопасность БД = сеть + доступы + шифрование + аудит + бэкапы + защита данных + ограничения ресурсов
No comments to display
No comments to display