Управление доступом

Для каждого пользователя система под­держивает паспорт пользователя, составленный администратором базы данных. В паспорте присутствует системный идентификационный номер пользователя, имя процедуры подтверждения подлинности, перечень разрешенных операций. Паспорт определяет профиль пользователя.

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

пароль, предъявляемый при модификации этих данных, и т. п.

Специальная подпрограмма СУБД проверяет, не нарушено ли какое-либо ограничение из набора. В случае нарушения подавляется выполнение операции пользователя, выдается ему сигнал ошиб­ки и фиксируется в специальном журнале факт попытки нарушения безопасности данных.

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

Аксиома безопасности. Если комбинация атрибутов Л доступна (запрещена) пользователю Х в зависимости от условия В, то каждая подкомбинация А также доступна (запрещена) пользо­вателю Х по условию В.

Состав проверок может быть, например, следующим.

1. Все ли отношения, упомянутые в запросе, доступны пользователю X?

2. Все ли поколения, упомянутые в запросе, доступны пользователю X?

3. Все ли комбинации атрибутов, упомянутые в запросе, доступны пользователю X?

4. Задано ли квалифицирующее выражение, которое ограничивает для пользователя Х диапазон значений атрибутов, и если да, то лежат ли их значения внутри диапазона, доступного для X?

Если в результате проверок будет получен отрицательный ответ, то программа информирует пользователя об отклонении его за­проса.








Дата добавления: 2015-02-10; просмотров: 534;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.