FirebirdSQL logo

REVOKE

Назначение

Отмена привилегий или отбор ролей.

Доступно в

DSQL

Синтаксис (отзыв привилегий)
REVOKE [GRANT OPTION FOR] <privileges>
  FROM <grantee_list>
  [{GRANTED BY | AS} [USER] grantor]

<privileges> ::=
   См. GRANT синтаксис

<grantee_list> ::=
   См. GRANT синтаксис
Синтаксис (отзыв ролей)
REVOKE [ADMIN OPTION FOR] <role_granted>
  FROM <role_grantee_list>
  [{GRANTED BY | AS} [USER] grantor]

<role_granted> ::=
  См. GRANT синтаксис

<role_grantee_list> ::=
  См. GRANT синтаксис
Синтаксис (отзыв всех привилегий)
REVOKE ALL ON ALL FROM <grantee_list>

<grantee_list> ::=
  GRANT синтаксис
Table 1. Параметры оператора REVOKE
Параметр Описание

grantor

Пользователь от имени, которого отзываются привилегии.

Оператор REVOKE отменяет привилегии для пользователей, ролей, хранимых процедур, хранимых функций, пакетов, триггеров и представлений выданные оператором GRANT.Подробное описание различных типов привилегий см.в GRANT.

Предложение FROM

В предложении FROM указывается список пользователей, ролей и объектов базы данных (процедур, функций, пакетов, триггеров и представлений) у которых будут отняты перечисленные привилегии.Необязательные предложения USER и ROLE позволяют уточнить, у кого именно выдаётся привилегия.Если ключевое слово USER или ROLE не указано, то сервер проверяет, существует ли роль с данным именем, если таковой не существует, то привилегии отбираются у пользователя.

Tip
Рекомендация

Несмотря на то, что ключевые слова USER и ROLE не обязательные, желательно использовать их, чтобы избежать путаницы.

Существование пользователя, у которого отбираются права, не проверяются при выполнении оператора REVOKE.Если привилегия отбирается у объекта базы данных, то необходимо обязательно указывать тип объекта.

Important

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