Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовой_проект_ОБДЗ_пример.doc
Скачиваний:
24
Добавлен:
20.11.2019
Размер:
772.61 Кб
Скачать

5. Средства обеспечения безопасности информации в бд

Безопасность информации данных в базе данных обеспечивается с помощью введения двухуровневого управления доступом. Базы данных, как и данные, хранимые в файлах базы данных, должны быть защищены. СУБД InterBase обеспечивает двухуровневую защиту данных - аутентификация пользователя на уровне сервера и привилегии на уровне базы данных. На первом уровне осуществляется аутентификация пользователя в момент подключения к базе данных, при этом используется база данных безопасности. Второй уровень реализуется уже на уровне самой базы данных. Все привилегии по доступу к объектам базы данных хранятся в самой базе. Авторизованный пользователь не имеет никаких привилегий по доступу к данным, хранящимся в базе, пока какие-либо права не будут ему предоставлены явным образом. Контроль привилегий осуществляется на уровне таблиц. Каждому пользователю сопоставлен список операций, которые допускается произвести над данной таблицей или представлением. Этот список и составляет привилегии пользователя. Возможность использования хранимых процедур в InterBase регулируется отдельной привилегией. Право на доступ к любому объекту базы данных после его создания имеют только SYSDBA и владелец этого объекта. Владельцем объекта является пользователь, создавший этот объект. SYSDBA или владелец объекта могут выдавать привилегии другим пользователям, в том числе и привилегии на право выдачи привилегий другим пользователям. Собственно сам процесс раздачи привилегий на уровне SQL реализуется двумя операторами: GRANT и REVOKE. Оператор GRANT выдает привилегии авторизованным пользователям на доступ к таблицам или представлениям, а оператор REVOKE, соответственно, изымает ранее выданные привилегии.

Таблица 5.1 Привилегии пользователей

Привилегия

Пользователь получает возможность:

Insert

Добавлять новые строки в таблицу

Update

Изменять данные в таблице

Delete

Удалять строки из таблицы

Select

Извлекать содержимое таблицы

Execute

Выполнить хранимую процедуру

References

Сервер может проверять внешние ссылки на другие таблицы

All

Делать все выше обозначенные, за исключением Execute

Оператор GRANT. Оператор GRANT предоставляет привилегии на объект или привилегии указанному пользователю. В Таблице 5.1 представлен список привилегий, которые могут быть выданы пользователю.

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

Роли. В InterBase 5.0 было введено расширение стандартных средств SQL - роли, реализующее концепцию управления безопасностью на групповом уровне. Роли служат своего рода шаблонами для предустанавливаемых наборов привилегий. К обычному механизму привилегий SQL привилегии добавляют преимущество группового управления безопасностью, позволяя определять набор привилегий для нескольких таблиц в базе данных.

Роль служит групповым шаблоном для пользователей. Роли позволяют, также, пользователям выступать в различных ролях (т.е. получать различные наборы привилегий). Роли упрощают администрирование пользователями в существующей базе данных. Учитывая, что роли расширяют стандартный механизм разграничения доступа, нет необходимости изменять существующую схему разграничения доступа в базе данных для использования механизма ролей. Роли позволяют администратору использовать ранее определенные привилегии и одновременно определять новые привилегии. Существует несколько ключевых областей, в которых роли действительно упрощают работу администратора при управлении безопасностью в существующей базе данных. Во-первых, роли позволяют легко добавлять привилегии для нового пользователя. Во-вторых, роли реализуют управление безопасностью на групповом уровне, что, в свою очередь, делает управляемой задачу изменения привилегий для большого числа пользователей. В базе данных «EXHIBITION» созданы роли менеджера (MANAGER_1), администрации (DIRECTOR_1), а для владельцев собак введена роль других пользователей (OTHER).

Таким образом, безопасность базы данных - это существенно необходимая услуга. Стандартная модель безопасности SQL вполне адекватна и пригодна для обеспечения защиты данных. Роли базируются на стандартной модели и добавляют эффективность в управление безопасностью, обеспечивая разграничение доступа на уровне групп, отсутствующее в стандарте SQL.