Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Системные привилегии




 

Системные привилегии получают администраторы БД и, частично, разработчики приложений. Если разработчикам приложений дается в распоряжение собственная тестовая база данных, они получают на нее любые системные привилегии, которые им необходимы в процессе разработки и тестирования приложений.

Системные привилегии – это права на выполнение команд 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. Вторая команда предоставляет этой роли возможность регистрации в базе данных, а также создания и изменения учетных записей.

 

Объектные привилегии

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

Объектные привилегии выдаются при помощи уже известной универсальной команды GRANT…

GRANT список_объектных_привилегий

ON имя таблицы/представления/процедуры

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...