- •2 8. Функциональные зависимости и 1нф.
- •29. Полная функциональная зависимость и 2нф
- •30. Транзитивная зависимость и 3нф
- •31. Нормальная форма Бойса-Кодда
- •32. Понятие er-модели
- •33. Показатель кардинальности связи и степень участия сущностей
- •36. Логическое проектирование бд с помощью case-средства OpenModelSphere.
- •37. Физическое проектирование бд с помощью case-средства OpenModelSphere.
- •40. Язык запросов sql.
- •41. Операторы манипулирования данными языка sql.
- •47. Диалекты базы данных FireBird.
- •48. Типы данных с фиксированной точкой.
- •49. Безопасность бд в операционной среде.
- •50. Защита сервера.
- •51. Безопасность на уровне базы данных.
- •52. Файл конфигурации FireBird.
49. Безопасность бд в операционной среде.
В Firebird не существует средств для шифрования и дешифрования данных (кроме паролей пользователей), которые передаются через клиентский интерфейс на сервер. На уровне ПОя нет защиты от налётчиков, которые установили доступ к вашей БД без авторизации.
Следует содержать серверы и критичные клиентские машины в помещениях с хорошо закрываемыми дверями. Основной фактор физической безопасности - защита чувствительных к безопасности машин от физических контактов неавторизованных лиц.
Необходимо заблокировать CD-ROM, накопители на гибких магнитных дисках и драйверы USB, отключить порты, через которые можно получить доступ к устройствам первоначальной загрузки, или установить такие режимы в BIOS, которые предотвратят загрузку со съёмных устройств. Следует установить в BIOS защиту по паролю. Установить защиту по паролю на все серверы и РС.
Пользователям удалённых БД (клиентским приложениям) не следует давать полномочия на непосредственный доступ к файлам БД, а также к внешним приложениям (UDF), которые связаны с таблицами БД. Сервер можно сконфигурировать (файл Firebird.conf) так, чтобы уменьшить риск постороннего воздействия.
Нужно выполнять резервное копирование на переносимые носители и сохранять их в защищённом месте. Не оставлять резервные копии и архивы БД в сетевом окружении, где гуляющие по сети могут их найти.
На практике предпочтение отдаётся ОС Linux. ПО ОС Windows не даёт надёжных гарантий безопасности серверов БД в локальной сети или за её пределами. Поэтому доступ пользователей должен быть чётко сконфигурирован с помощью LAN и других продуктов сетевой защиты сторонних разработчиков для блокирования атак. Выполнение сервиса FIREBIRD в Windows несёт в себе явный риск выполнения произвольного кода, созданного со злым умыслом.
Необходимо исключить использование на хост-машине других серверов, особенно таких уязвимых, как Web-серверы и FTP-серверы, которые потенциально принимают безымянные подключения. При использовании Windows следует ограничит сетевой доступ к реестру на серверах БД.
50. Защита сервера.
При инсталляции сервера Firebird устанавливается БД идентификации пользователя, которая хранит описание всех пользователей, имеющих доступ к серверу Firebird. Для каждого пользователя должен быть определён чувствительный к регистру пароль, который должен использоваться для доступа к серверу. Эта БД находится в файле security.fdb. Он должен размещаться в корневом каталоге Firebird.
Рекомендуется избегать соединений из пользовательского приложения или из инструмента администратора непосредственно с БД для запуска скрипта для пакетного ввода пользователей. При стандартном вводе учётных данных пользователя (инструмент gsec) пароли перед их сохранением шифруются. При непосредственном вводе паролей в БД security.fdb они сохраняются в виде незашифрованного текста.
Обслуживать БД безопасности может только пользователь SYSDBA. Не поддерживаются изменения пользователями своих собственных паролей. Требуемыми данными являются имя пользователя и пароль.
Имя пользователя чувствительно к регистру и должно быть уникальным. Оно может содержать только символы: A – Z (a – z), цифры и символы !, #, $, &, @. Длина имени пользователя -не больше 31 символа.
Пароль может содержать до 32 символов, первые восемь являются значимыми. Пароли masterkey и masterkeeper для сервера идентичны. Пароли чувствительны к регистру. Допустимые символы такие же.
Для шифрования паролей используется метод, основанный на алгоритме DES (Data Encryption Standard). При этом используется шифрование с потерей данных, которое не позволяет восстановить исходный пароль путём шифрования.
При назначении паролей рекомендуется смешивать регистры, включать в текст пароля цифры. Для обеспечения безопасности следует регулярно изменять пароли.
Для поддержки пользователей не существует специального SQL-оператора. Имена пользователей могут использоваться в SQL в качестве аргументов операторов GRANT…TO и REVOKE…FROM.
Имя пользователя доступно в SQL через переменную CURRENT_USER и серверный литерал USER.
При установке Firebird для Windows в БД безопасности добавляется пользователь SYSDBA с паролем masterkey. С целью обеспечения безопасности пароль должен быть изменён в первую очередь.
Пользователь SYSDBA является владельцем БД безопасности. В качестве интерфейса командной строки для работы с БД безопасности существует утилита gsec.