Отмена привилегий доступа к ресурсам БД и операций с ними
Функция
Определение оператора отмены привилегий доступа к ресурсам БД и операций с ними.
Спецификация
::=
::=
{SELECT|INSERT|DELETE|UPDATE|ALTER|INDEX|REFERENCES}[, …]}
ON [TABLE] [имя схемы.]{имя таблицы|имя представления|имя синонима}
FROM {PUBLIC | { имя пользователя | имя роли}[, …]}
::=
Синтаксические правила
-
Спецификация конструкций
<привилегия>
,<пользователь>
,<категория пользователя>
,<список пользователей>
приведена в пункте Определение привилегий доступа к ресурсам БД и операций с ними. -
<Имя таблицы>
должно задавать базовую таблицу. -
Опция
ALL
равнозначна списку, отменяющему все привилегии для<имени таблицы>
(SELECT
+INSERT
+DELETE
+UPDATE
+ALTER
+INDEX
+REFERENCES
).revoke all on auto from "Иванов";
-
Если вместо списка пользователей указано
PUBLIC
, то для всех пользователей (существующих и будущих) указанные привилегии будут отменены, за исключением тех пользователей, которым эти привилегии назначены персонально.revoke select, index on Auto from PUBLIC;
-
Привилегии может отменять только владелец таблицы/представления/синонима.
-
Нельзя отменить привилегии самому себе.
-
Отнять (понизить) категорию пользователя может только администратор БД (категория DBA). При этом считается, что категория
DBA
включает в себя привилегии категорииRESOURCE
и категорияRESOURCE
включает в себя привилегии категорииCONNECT
, т.е. категории упорядочены. Когда отнимается какая-либо категория, это означает снижение категории на один уровень. Например:Существующая категория Отнимаемая категория Получаемая категория DBA DBA RESOURCE DBA RESOURCE CONNECT RESOURCE RESOURCE CONNECT REVOKE RESOURCE FROM User_1,User_2;
-
Лишение всех привилегий (
CONNECT
) равноценно запрету доступа пользователя к БД. -
Конструкция
REVOKE REFERENCES …
отменяет ранее предоставленную привилегиюREFERENCES
, т.е. запрещает создавать ссылки на столбец (столбцы) указанной в<имени таблицы>
таблицы от других таблиц БД. -
Конструкция
REVOKE BACKUP
запрещает пользователю оперативное архивирование БД или её отдельных объектов.