Документация FirebirdДокументация по FirebirdБезопасность файлов и метаданных → Исходные условия
Firebird home Firebird home Пред.: Безопасность файлов и метаданныхНачало: Документация FirebirdУровень выше: Безопасность файлов и метаданныхСлед.: Проблема

Исходные условия

Чтобы получить доступ к базе данных СУБД Firebird, приложению (пользователю) необходимо подключиться к процессу сервера Firebird. При получении запроса на соединение процесс сервера удостоверяет пользователя по базе данных безопасности (security database). После успешного удостоверения сервер разрешает приложению (пользователю) произвести доступ к любой базе данных, а затем сервер использует роли и права пользователей, определенные в самой базе данных, чтобы обеспечить тонкую настройку системы доступа к объектам базы данных.

Никогда при подключении к базе данных пользователю нет необходимости иметь прямой доступ к, собственно, файлу базы данных. Все соединения и весь доступ происходит через процесс сервера баз данных, который выполняет обращение к файлу базы данных по необходимости, с целью выполнить запросы пользователя. Сервер является тем «устройством», которое ограничивает или разрешает доступ зарегистрированным пользователям в соответствии с правами этих пользователей, определенными для каждого конкретного пользователя в каждой конкретной базе данных.

Замечание

«Встроенная» версия СУБД Firebird имеет другой механизм работы системы безопасности, и она не пригодна для безопасных инсталляций (установок и настроек) СУБД и базы данных. Факт существования «встроенной» версии сервера практически не изменяет вопросы безопасности, обсуждаемые в этой статье, а только лишь выделяет важность использования эффективных методов обеспечения безопасности всего рабочего окружения в безопасной инсталляции СУБД и баз данных. «Встроенная» версия СУБД обсуждается более подробно далее.

Каждая установленная СУБД Firebird имеет предопределенного пользователя с именем SYSDBA. Этот пользователь является администратором, и имеет неограниченный доступ ко всем базам данных, доступным СУБД. Права, определенные в конкретной базе данных, игнорируются, если подключение к базе данных осуществлется пользователем SYSDBA. Когда Вы впервые копируете базу данных на сервер, Вы можете использовать учетную запись SYSDBA для настройки привилегий в соответствии с определенными для СУБД пользователями и требованиями сервера. Однако это также означает, что если у кого-то есть прямой доступ к файлу базы данных, то он без труда сможет скопировать этот файл с сервера, где пароль пользователя SYSDBA неизвестен, на другой сервер, где пароль будет известен, что приведет к возможности неограниченного доступа к содержимому базы данных.

Как Вы видите, безопасность СУБД Firebird исходит из предположения о том, что серверный процесс будет работать в достаточно безопасном окружении. Сама СУБД Firebird не предпринимает никаких мер для обеспечения внешней безопасности. Как только некто получает физический доступ к файлу базы данных, не существует способов предотвратить доступ ко всем данным (в том числе, метаданным) этого файла.

Замечание

«Достаточность» безопасности определяется уровнем безопасности, необходимым и/или требуемым конкретной инсталляции (установке) СУБД. Этот уровень весьма сильно изменяется от инсталляции к инсталляции.

Это означает, что для обеспечения разумной безопасности, процесс инсталляции должен удостовериться, что файл базы данных достаточно защищен. В большинстве случаев, это равносильно тому, что процесс сервера Firebird должен работать с правами отдельного пользователя (учетной записи) операционной системы, и только эта учетная запись (и еще, быть может, администратор операционной системы) должна иметь прямой доступ на уровне операционной системы к файлам баз данных. Файлы базы данных никогда не следует располагать в папках, к которым открыт доступ из сети или доступ любых локальных пользователей, кроме специально оговоренного персонала.

Чтобы меры безопасности были эффективны, также очень желательно, чтобы серверное оборудование было установлено в месте, куда ограничен физический доступ посторонних лиц, дабы не допустить несанкционированный доступ к жестким дискам сервера.

Однако приведенное объяснение вовсе не обязательно будет полезно разработчикам, которые создают базы данных для распространения и установки на удаленных серверах, но хотели бы защитить свою интеллектуальную собственность, реализованную и находящуюся в самих базах данных. Такие случаи могут включать метаданные (структуры таблиц и отношений, исходные и скомпилированные тексты хранимых процедур и триггеров), а также некоторые данные, содержащиеся в таблицах. Эти случаи и являются основным фокусом этой статьи.

Пред.: Безопасность файлов и метаданныхНачало: Документация FirebirdУровень выше: Безопасность файлов и метаданныхСлед.: Проблема
Документация FirebirdДокументация по FirebirdБезопасность файлов и метаданных → Исходные условия