36 Разграничение доступа к данным. Разрешения на уровне БД, таблиц, представлений, отдельных полей. Инструменты разграниченияя доступа к данным.

Базовым механизмом разграничения доступа явл-ся ролевой доступ – при настройке конфигурации в сис-ме определяются роли, позволяющие пользователям выполнять опред ф-циональные обязанности и имеющие опред права.

Кроме ролей, права могут назначаться на пользователя, группу пользователей и на подразделение оргструктуры. Приоритеты прав настраиваются, по умолчанию права пользователя имеют приоритет над правами роли, группы пользователей и подразделения.

Пользователей СУБД м. разделить на три группы: 1.Прикладные программисты - отвечают за создание прог, использующих БД. В смысле защиты данных программист м.б. как пользователем, имеющим привилегии создания объектов данных и манипулирования ими, так и пользователем, имеющим привилегии только манипулирования данными.

2. Конечные пользователи БД - работают с БД непосредственно через терминал или рабочую станцию. Конечные пользователи имеют строго ограниченный набор привилегий манипулирования данными. Этот набор м. определяться при конфигурировании интерфейса конечного пользователя и не изменяться. Политику безопасности в данном случае определяет администратор безопасности или администратор БД (если это 1 и то же должностное лицо).

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

Основные принципы контроля доступа: дискреционный и мандатный. Реш-е о санкционированности запроса на доступ принимается только при одновременном разрешении его по обоим принципам. Дискреционный принцип контроля доступа (наиболее часто встречающийся в ИС) позволяет для любого из объектов сис-мы определить права кажд пользователя и групп пользователей на выполнение операций над объектом. «-» данного принципа: при активном допуске новых сотрудников к работе с сис-мой, при изменении должности, звания и др статусов сотрудника необходимо всякий раз пересматривать его права доступа к кажд их объектов сис-мы.

Но дискреционная защита явл-ся слабой, т.к. доступ ограничивается только к именованным объектам, а не собственно к хранящимся данным. В случае реализации ИС с использованием реляционной СУБД объектом будет, напр-р, именованное отношение (т.е. таблица), а субъектом — зарегистрированный пользователь. В этом случае нельзя в полном объеме ограничить доступ только к части инфы, хранящейся в табл. Частично проблему ограничения доступа к инфе решают представления и использование хранимых процедур, кот реализуют тот или иной набор бизнес-действий.

Представление (view) — это сформированная выборка кортежей(послед-ть полей, для кот определены знач-е и тип), хранящихся в таблице (таблицах). К представлению м. обращаться так и к табл, за исключением операций модификации данных, поскольку некоторые типы представлений явл-ся немодифицируемыми. Часто в реализациях view хранится текст, описывающий запрос выборки, а не собственно выборка данных; выборка же создается динамически на момент выполнения предложения SQL, использующего view. Но разграничить доступ, напр-р, к двум док-там, кот удовлетворяют 1 и тому же усл-ю выборки, уже нельзя. Это связано с тем, что даже если ввести отдельный атрибут, кот будет хранить инфу о метке конфиденциальности док-та, то средствами SQL можно будет получить выборку данных без учета атрибута данной метки. Это значит, что либо сам сервер БД должен предоставить более высокий уровень защиты инфы, либо придется реализовать данный уровень защиты инфы с помощью жесткого ограничения операций, кот. пользователь м. выполнить посредством SQL. На некотором уровне такое разграничение м. реализовать с помощью хранимых процедур, но не полностью — в том смысле, что само ядро СУБД позволяет разорвать связь «защищаемый объект - метка конфиденциальности».

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

Допуск присваивается не только пользователям, но и их группам. При проверках вычисляется эффективный допуск — max знач-е из допуска пользователя и всех групп, в кот он входит. Мандатный принцип позволяет одновременно, путем простого изменения допуска соответствующего пользователя или группы контролировать доступ пользователя или группы к большому кол-ву объектов.

Метка объекта включает след:

1. Группа субъекта, кот внес данный объект.

2. Уровень доступа на чтение — RAL (Read Access Level).

3. Уровень доступа на запись — WAL (Write Access Level). Метка субъекта выглядит аналогично:

1. Группа, к кот. принадлежит субъект.

2. RAL-уровень субъекта, кот представляет собой max RAL-уровень доступной субъекту инфы.

3. WAL-уровень субъекта, т.е. min RAL-уровень объекта, кот м.б. создан этим субъектом.