Объект ::= [table] {Имя_таблицы | Имя_встроенного_представления} | procedure Имя_процедуры | datasource Имя_внешнего_источника_данных | function Имя_встроенной_функции
Общая_привилегия ::= create table | create datasource | create procedure | create profile | create user | create role
Аргументы:
Аргумент
Значение
all privileges
Отзываются все права, которые имеет текущий пользователь для указанного объекта.
select
Отзывается право получать результаты выполнения поискового запроса по указанной таблице или встроенного представления.
delete
Отзывается право удалять записи из указанной таблицы.
update
Отзывается право изменять записи в указанной таблице.
insert
Отзывается право добавлять записи в указанную таблицу.
trigger
Отзывается право создавать, изменять или удалять триггера для указанной таблицы.
index
Отзывается право индексировать указанную таблицу.
diff
Отзывается право удалять переменную часть таблицы.
alter
Отзывается право изменять характеристики таблицы или ремонтировать ее.
usage
Отзывается право использовать указанный объект. Эта привилегия используется только для процедур, внешних источников данных и некоторых встроенных функций.
create table
Отзывается право создавать или удалять постоянные таблицы.
create role
Отзывается право создавать или удалять роли, или управлять назначением ролей.
create user
Отзывается право создавать или удалять пользователей, или изменять их характеристики.
create datasource
Отзывается право создавать или удалять источники данных, или изменять их характеристики.
create procedure
Отзывается право создавать или удалять процедуры, или изменять их характеристики.
create profile
Отзывается право создавать или удалять профили, или изменять их характеристики.
Пользователь
Имя пользователя или роли, у которых отзываются указанные права.
public
Указанные права отзываются у всех пользователей, которые их получали по имени public.
grant option for
Привилегии у пользователя остаются, однако он теряет возможность передавать полученные права другим пользователям.
cascade
При отмене привилегий у пользователя, отменяются все привилегии, которые он передавал другим пользователям.
restrict
Если при отмене привилегий у пользователя необходимо отменить переданные другим пользователям привилегии, то операция завершается с ошибкой.
Для отзыва прав у пользователей или ролей необходимо выполнение одного из условий:
· Пользователь является администратором базы данных;
· Пользователь передавал право, которое он отзывает.
Примеры.
Отменить пользователю USER1 право на select, insert, update в таблице TAB1.
revoke select, insert, update on TAB1 from USER1;
Отменить пользователю USER1 право на создание таблиц.
revoke create table from USER1;
Отменить пользователю USER1 все права на таблицу TAB1, которыми обладает текущий пользователь.