Безопасность и интеграция с связкой ключей
Узнайте, как HarborDB использует связку ключей macOS и функции безопасности для защиты ваших учетных данных и данных базы данных
Безопасность и интеграция с связкой ключей
Добро пожаловать в руководство по безопасности HarborDB. Этот всеобъемлющий ресурс объясняет, как HarborDB использует функции безопасности macOS, особенно связку ключей, для защиты ваших учетных данных базы данных и данных. Независимо от того, работаете ли вы с локальными базами данных для разработки или производственными серверами, понимание этих функций безопасности необходимо для защиты конфиденциальной информации.
Почему важна безопасность
Подключения к базе данных часто содержат конфиденциальную информацию:
- Имена пользователей и пароли для серверов PostgreSQL
- Детали подключения, включая имена хостов и порты
- Результаты запросов, которые могут содержать конфиденциальные данные
- Экспортированные файлы с критически важной для бизнеса информацией
HarborDB разработан с безопасностью в качестве основного принципа, использующим родные технологии macOS для обеспечения защиты уровня предприятия без ущерба для удобства использования.
Связка ключей macOS: ваш цифровой сейф
Что такое связка ключей?
Связка ключей — это встроенная в macOS система управления паролями. Представьте её как цифровой сейф, где macOS хранит:
- Пароли для приложений и веб-сайтов
- Ключи шифрования для безопасной связи
- Сертификаты для проверки подлинности
- Безопасные заметки для конфиденциальной информации
Как связка ключей защищает ваши данные
- Шифрование при хранении: Все данные связки ключей зашифрованы с использованием шифрования AES-256
- Контроль доступа: Каждое приложение должно запрашивать разрешение на доступ к элементам связки ключей
- Изоляция пользователей: Элементы связки ключей привязаны к вашей учетной записи пользователя
- Автоматическая блокировка: Связка ключей блокируется, когда ваш Mac переходит в спящий режим или блокируется
Интеграция HarborDB и связки ключей
Автоматическое хранение паролей
Когда вы сохраняете подключение в HarborDB:
- Пароль извлекается из настроек подключения
- Шифруется и сохраняется в связке ключей вашего пользователя
- Файл подключения сохраняет только неконфиденциальную информацию
- При следующем подключении HarborDB извлекает пароль из связки ключей
Что и где хранится
| Место хранения | Что хранится | Уровень безопасности | | ------------------------- | ---------------------------------- | ------------------------------ | | Связка ключей macOS | Только пароли | 🔒 Максимальный (AES-256) | | Файл подключения | Хост, порт, база данных, имя пользователя | 🔐 Средний (права доступа к файлам) | | Память приложения | Расшифрованные пароли во время сессии | 🔐 Высокий (шифрование ОЗУ) | | Кэш на диске | Результаты запросов, временные файлы | 🔐 Средний (FileVault) |
Структура элемента связки ключей
Каждое подключение HarborDB создает элемент связки ключей с:
- Имя службы:
HarborDB - Имя учетной записи:
connection:[имя_подключения] - Пароль: Ваш зашифрованный пароль PostgreSQL
- Группа доступа: Ограничена приложением HarborDB
Лучшие практики безопасности
1. Управление паролями
Делайте:
- ✅ Используйте надежные уникальные пароли для каждой базы данных
- ✅ Меняйте пароли периодически (каждые 90 дней)
- ✅ Используйте менеджеры паролей для дополнительной безопасности
- ✅ Включайте двухфакторную аутентификацию, где это возможно
Не делайте:
- ❌ Используйте одни и те же пароли на разных серверах
- ❌ Храните пароли в обычных текстовых файлах
- ❌ Делитесь паролями из связки ключей с другими
- ❌ Используйте простые или пароли по умолчанию
2. Безопасность подключений
Локальные базы данных:
Хост: localhost или 127.0.0.1
SSL: Опционально (обратная петля безопасна)
Связка ключей: Рекомендуется
Серверы разработки:
Хост: dev-db.internal
SSL: Предпочитать или Требовать
Связка ключей: Требуется
Брандмауэр: Ограничить внутренней сетью
Производственные серверы:
Хост: prod-db.example.com
SSL: Требовать или Полная проверка
Связка ключей: Требуется
VPN: Рекомендуется для доступа
3. Безопасность файлов
- Храните файлы подключений в безопасных местах
- Используйте FileVault для полного шифрования диска
- Регулярно создавайте резервные копии связки ключей (через Time Machine)
- Защищайте папки экспорта соответствующими правами доступа
Touch ID и биометрическая интеграция
Использование Touch ID с HarborDB
Если ваш Mac имеет Touch ID (или Face ID на новых моделях), вы можете повысить безопасность:
- Включите Touch ID для связки ключей в Системных настройках
- HarborDB будет запрашивать отпечаток пальца при доступе к паролям
- Резервный вариант - пароль в случае сбоя биометрии
Настройка биометрической аутентификации
- Откройте Системные настройки → Touch ID & Пароль
- Добавьте ваши отпечатки пальцев (до 3)
- Отметьте "Связка ключей" в списке применений
- Перезапустите HarborDB для применения изменений
Преимущества биометрической интеграции
- Удобство: Нет необходимости вводить мастер-пароль
- Безопасность: Уникальность для вас (нельзя передать)
- Скорость: Быстрее, чем ввод пароля
- Аудит доступа: Каждый доступ уникально идентифицируется
FileVault и шифрование диска
Что такое FileVault?
FileVault — функция полного шифрования диска в macOS:
- Шифрует весь загрузочный диск
- Защищает данные при хранении
- Прозрачно для приложений
- Требуется для некоторых стандартов соответствия
Включение FileVault
- Откройте Системные настройки → Конфиденциальность и безопасность
- Нажмите FileVault
- Нажмите Включить
- Выберите метод восстановления (iCloud или ключ восстановления)
- Дождитесь завершения шифрования (фоновый процесс)
Как FileVault защищает данные HarborDB
При включенном FileVault:
- Файлы подключений зашифрованы на диске
- Экспортированные файлы защищены
- Временные файлы не могут быть восстановлены
- Кэшированные файлы защищены даже при краже Mac
Сетевая безопасность (SSL/TLS)
Понимание SSL/TLS
SSL (Secure Sockets Layer) и TLS (Transport Layer Security) шифруют данные при передаче:
HarborDB (macOS) → Зашифрованный туннель → Сервер PostgreSQL
Режимы SSL в HarborDB
| Режим | Уровень безопасности | Случай использования | | ---------------- | -------------------- | ---------------------------- | | Отключить | ❌ Нет | Только локальная разработка | | Разрешить | ⚠️ Низкий | Предпочитать незашифрованное | | Предпочитать | ✅ Средний | По умолчанию для большинства случаев | | Требовать | ✅ Высокий | Удаленные серверы | | Проверить-CA | ✅✅ Высокий | Проверка центра сертификации | | Полная проверка | ✅✅✅ Наивысший | Полная проверка сертификата |
Настройка SSL в HarborDB
- Измените подключение в HarborDB
- Выберите режим SSL из выпадающего списка
- Импортируйте сертификаты, если используете Полную проверку
- Проверьте подключение, чтобы убедиться в успешном SSL-рукопожатии
Управление сертификатами
Для корпоративных сред:
- Импортируйте сертификаты CA в Связку ключей
- Используйте клиентские сертификаты для взаимного TLS
- Настройте оповещения об истечении срока действия сертификатов
- Регулярно обновляйте отозванные сертификаты
Устранение общих проблем
Проблемы доступа к связке ключей
"HarborDB не может получить доступ к связке ключей"
-
Проверьте разрешения:
# Откройте Связку ключей open /Applications/Utilities/Keychain\ Access.app -
Сбросьте разрешения HarborDB:
- Удалите и снова добавьте подключение
- Предоставьте разрешение при запросе
-
Исправьте связку ключей:
- Откройте Связку ключей
- Выберите связку ключей "Вход"
- Файл → "Первая помощь для связки ключей"
"Пароль не найден в связке ключей"
- Убедитесь, что имя подключения не изменилось
- Проверьте несколько связок ключей (Вход, Системная, iCloud)
- Перестройте индекс связки ключей:
security delete-keychain ~/Library/Keychains/login.keychain-db # Будет воссоздана при следующем входе
Проблемы подключения SSL
"SSL-рукопожатие не удалось"
-
Проверьте конфигурацию SSL PostgreSQL:
# В postgresql.conf ssl = on ssl_cert_file = 'server.crt' ssl_key_file = 'server.key' -
Проверьте действительность сертификата:
openssl x509 -in server.crt -text -noout -
Попробуйте другой режим SSL (Требовать → Предпочитать)
Общие проблемы безопасности
Ошибки "В доступе отказано"
-
Проверьте права доступа к файлам:
ls -la ~/Library/Application\ Support/HarborDB/ -
Сбросьте разрешения HarborDB:
- Переместите файл настроек
- Перезапустите HarborDB
-
Проверьте права доступа к диску:
diskutil verifyVolume /
Расширенные функции безопасности
Пользовательская конфигурация связки ключей
Для опытных пользователей:
-
Создайте выделенную связку ключей для HarborDB:
security create-keychain -P harbor.keychain security set-keychain-settings harbor.keychain -
Установите более короткий таймаут для чувствительных подключений:
security set-keychain-settings -t 300 harbor.keychain -
Заблокируйте связку ключей, когда она не используется:
security lock-keychain harbor.keychain
Аудит и мониторинг
-
Включите логирование подключений в Настройках
-
Просмотрите журналы доступа к связке ключей:
log show --predicate 'subsystem == "com.apple.security"' -
Настройте оповещения о неудачных подключениях
-
Регулярно просматривайте журналы доступа к экспортированным файлам
Соображения по соответствию
Соответствие GDPR/CCPA:
- Шифрование персональных данных при хранении и передаче
- Ведение журналов доступа и аудиторских записей
- Политики хранения данных для экспорта
Соответствие HIPAA:
- Полное шифрование диска (FileVault)
- Таймаут сессии для неактивных подключений
- Безопасное удаление временных файлов
Соответствие PCI DSS:
- Никогда не храните номера кредитных карт в запросах
- Маскируйте конфиденциальные данные в экспортах
- Регулярные оценки безопасности
Контрольный список безопасности
Ежедневные практики
- [ ] Блокируйте Mac при отходе
- [ ] Проверяйте безопасность подключения перед использованием
- [ ] Проверяйте наличие обновлений безопасности macOS
- [ ] Просматривайте недавние попытки подключения
Еженедельные практики
- [ ] Просматривайте места хранения экспортированных файлов
- [ ] Проверяйте связку ключей на устаревшие записи
- [ ] Убедитесь, что FileVault активен
- [ ] Создавайте резервные копии конфигураций безопасности
Ежемесячные практики
- [ ] Меняйте пароли базы данных
- [ ] Просматривайте SSL-сертификаты
- [ ] Проводите аудит разрешений подключений
- [ ] Тестируйте процедуры восстановления после сбоев
Получение помощи
Инциденты безопасности
Если вы подозреваете проблему безопасности:
-
Немедленные действия:
- Измените пароли затронутых баз данных
- Отзовите скомпрометированные сертификаты
- Включите дополнительное логирование
-
Обратитесь в службу поддержки с:
- Временными рамками инцидента
- Затронутыми подключениями
- Любыми сообщениями об ошибках
- Уже предпринятыми шагами
Консультации по безопасности
Для корпоративных потребностей в безопасности:
- Пользовательские оценки безопасности
- Руководство по соответствию (GDPR, HIPAA, PCI DSS)
- Интеграция с корпоративными системами безопасности
- Обучение для членов команды
Дополнительные ресурсы
- Руководство по безопасности платформы Apple
- Документация по безопасности PostgreSQL
- Руководство по поддержке HarborDB
- Функции безопасности macOS
Безопасность — это общая ответственность. Понимая и правильно используя функции безопасности macOS с HarborDB, вы создаете надежную защиту от утечек данных и несанкционированного доступа. Помните: хорошие практики безопасности становятся привычками, которые защищают ваши данные каждый день.
Последнее обновление: {{current_date}}
Обратная связь
Помогите нам улучшить документацию