6. Безопасность данных
6.1. Модели управления доступом
В этом разделе мы рассматриваем защиту СУБД и БД от несанкционированного доступа.
Каждый акт доступа включает в себя три составляющие:
· субъект - тот, кто выполняет доступ, мы будем отождествлять субъекта с пользователем, так как все приложения, утилиты, интерактивные сеансы действуют "от имени" конкретного пользователя;
· объект - то, к чему выполняется доступ, - БД, таблица, строка, утилита и т.д.;
· вид доступа - операция, выполняемая субъектом над объектом - чтение, изменение и т.д.
Санкционированным является тот акт доступа, в котором выполняется операция, разрешенная данному субъекту над данным объектом. Операции, разрешенные субъекту, называются правами или привилегиями субъекта. Следует отличать успешный доступ от успешного выполнения операции. Доступ считается успешным, если субъекту только разрешено выполнение операции. Само же выполнение может закончиться с ошибкой, вызванной неправильной формулировкой запроса, отсутствием искомых данных, блокировкой объекта и т.д., и т.п. Причины возникновения ошибок при выполнении операции не связаны с проблемами безопасности.
Существуют две основные модели управления доступом: обязательная и избирательная. Обязательная модель предписывает жесткое администрирование и четкое централизованное определение привилегий для каждого субъекта. Избирательная модель допускает произвольное предоставление прав доступа. В современных СУБД используются комбинации обеих моделей.
Обязательное управление требует, чтобы каждый субъект имел определенный "уровень допуска", а каждый объект - "уровень квалификации". Доступ субъекта к объекту разрешается только в случае, когда соотношение уровня допуска субъекта и уровня квалификации объекта удовлетворяют некоторому критерию. В частности, рассматриваемые нами роли администратора СУБД и администратора БД определяются преде всего через их привилегии (уровень допуска). Администратор - это прежде всего привилегированный пользователь. Список привилегий (класс привилегий) администратора предустановлен в СУБД и имеет специальное имя (SYSADM, SYS, SA и т.п.), как правило, привилегии системного администратора всеохватывающи, то есть, разрешают ему любой доступ к любым объектам. Простейшей схемой обязательного управления доступом является иерархическая, в которой доступ разрешается, если уровень допуска субъекта не ниже уровня квалификации объекта. Более сложные схемы обязательного управления подразумевают распределений ролей между пользователями. Списки привилегий для ролей могут перекрываться полностью или частично или вообще не пересекаться. Так, наряду с системным администратором и администратором БД могут быть предусмотрены роли "управляющих" СУБД и БД. Субъекты, выступающие в ролях "управляющих" имеют доступ к функциям управления СУБД и отдельных БД, как, например, копирование-восстановление, экспорт-импорт, регистрация субъектов и т.п., но не имеют доступа к данным, хранящимся в БД.
Избирательная модель управления доступом исходит из того, что у объекта имеется владелец, который обладает полным списком прав по отношению к своему объекту. Владелец может передавать права - в полном объеме или выборочно - другим субъектам. Наряду с операционными привилегиями (чтение, модификация и прочие операции доступа) владелец может передавать и право передачи привилегий третьим лицам, что создает потенциальную возможность бесконтрольного распространения привилегий. Права владельца обычно предоставляются создателю объекта, но могут быть им переданы. Избирательное управление доступом реализовано во всех современных промышленных СУБД, так как средства такого управления входят в стандарт языка SQL в виде операторов GRANT и REVOKE.
6.2. Управление субъектами
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.