Системные привилегии
Системные привилегии получают администраторы БД и, частично, разработчики приложений. Если разработчикам приложений дается в распоряжение собственная тестовая база данных, они получают на нее любые системные привилегии, которые им необходимы в процессе разработки и тестирования приложений.
Системные привилегии – это права на выполнение команд CREATE, ALTER DROP применительно к различным объектам базы данных в своей (или любой) схеме. Если пользователи или роли наделяются привилегией на выполнение DDL в любой схеме, к имени объекта добавляется клюсевое слово ANY.
Например:
GRANT Create table TO student
позволит включить в роль студент право создавать таблицы в своей схеме, а
GRANT Create any table TO student with grant option
право создавать таблицы в любой схеме, при этом роль student сможет передать эту привилегию другим пользователям или ролям.
Важно отметить, что пользователь, создавший таблицу (неважно где – в своей или чужой схеме), автоматически становится ее владельцем (owner), при этом он автоматически получает все права объектного уровня на эту таблицу. Другими словами, владельцу таблицы не надо предоставлять отдельные права на манипулирование данными этой таблицы, но всем остальным пользователям такие права предоставлять нужно.
Аналогично можно присвоить привилегии на любые другие команды DDL. Особо требуется отметить привилегию CREATE SESSION, которую должны получить все пользователи без исключения, поскольку это право на открытие сеанса связи с сервером Oracle (дословно – создание сессии).
Привилегия ALTER SESSION, скорее всего, не потребуется рядовым пользователям, поскольку предоставляет право изменять важные системные параметры в своем сеансе связи, которые могут повлиять, например, на производительность системы.
В качестве примера создадим системную роль account_creator, с помощью которой можно только создавать пользователей, а другие команды уровня DBA выполнять нельзя:
create role account_creator
grant CREATE SESSION, CREATE USER, ALTER USER
to account_creator
С помощью первой команды создается роль с именем account_creator. Вторая команда предоставляет этой роли возможность регистрации в базе данных, а также создания и изменения учетных записей.
Дата добавления: 2015-08-26; просмотров: 982;