Interbase
.pdfАдминистрирование базы данных |
235 |
|
|
|
|
В списке кодировок Borland InterBase есть еще одна русскоязычная - CYRL (866), соответствующая кодировке в DOS, однако ее лучше не использовать, поскольку это немедленно приведет либо к проблеме со шрифтами в приложении, либо к необходимости в постоянной перекодировке данных. Тем более что какой-либо необходимости в этом не видно, разве что при использовании старых баз, созданных в DOS. Но и в этом случае проще перекодировать их при перемещении в InterBase.
Следует, правда, отметить, что собственно утилиты BDE не всегда корректно ведут себя с упомянутыми кодировками, особенно, если необходимо одновременно работать с базами InterBase и локальными таблицами Paradox или dBASE. В этом смысле работа без явного указания CHARACTER SET предпочтительнее. На сегодняшний день здесь не возникает никаких проблем.
8.4. Управление доступом к данным
Управление доступом к данным в системах с одним или несколькими пользователями не представляет проблемы. Все данные доступны для всех. Если пользователей у системы много, то возникает проблема защиты данных от несанкционированного доступа, чаще всего это связано не столько с секретностью данных, хотя в ряде случаев они могут носить и сугубо конфиденциальный характер, сколько с защитой, как от случайных, так и преднамеренных искажений.
Для этого формируется список пользователей и каждому пользователю предоставляются права на доступ к определенным данным.
Управление доступом к данным включает, прежде всего, управление списком пользователей и правами их доступа к данным и процедурам.
При большом числе пользователей следить за предоставлением прав каждому пользователю становится малоприятной задачей, тем более что во многих случаях пользователи явно распадаются на группы, например кассиры в большом магазине. Ясно, что все они работают с одними и теми же данными, одними и теми же средствами, следовательно, должны иметь те же права, а имя пользователя нужно только для идентификации вносимых ими данных.
Для регулирования доступа таких групп в InterBase предусмотрен механизм «ролей».
Рассмотрим подробнее процедуры управления списками пользователей и ролей, предоставления им прав доступа к объектам базы данных.
Создание списка пользователей
Рассмотрим выполнение этой работы в среде Windows. Для создания списка пользователей можно воспользоваться диспетчером серверов - InterBase Server Manager (ibmgr32.exe) при работе с InterBase версий 4 и 5, либо IBConsole.exe для версий 6.
В первом случае стартуем диспетчер серверов.
242 |
Глава 8 |
•Формирование списка прав, связанных с ролью (включение элементов - прав в множество).
•Формирование прав пользователей на основе ролей
•Связывание пользователей с ролями, то есть передача им множества прав, описанных в роли.
КомандыCREATEROLE,DROPROLE
Команда CREATE ROLE реализует первый этап действий при работе с ролями: создает (объявляет) роль в базе данных.
Синтаксис:
CREATE ROLE rolename;
Таблица 8.9. Опции команды CREATE ROLE
Параметр |
Описание |
Rolename |
Имя роли; должно быть уникальным среди функциональных |
|
имен в базе данных |
Пример 8.10
Следующая команда создает роль, называемую "bibrole".
CREATE ROLE bibrole;
Команда DROP ROLE выполняет действия, обратные CREATE ROLE - удаляет роль из базы данных.
Синтаксис:
DROP ROLE rolename;
Таблица 8.10. Опции команды DROP ROLE
Параметр Описание
Rolename |
Имя существующей роли, которая удаляется из базы данных |
Роль может быть удалена либо ее создателем, либо пользователем SYSDBA, либо другим пользователем с аналогичными правами.