SQL Server ОТЗЫВ

В этом руководстве вы узнаете, как использовать оператор SQL Server REVOKE для удаления ранее предоставленных разрешений субъекту.

Введение в оператор REVOKE SQL Server

Оператор REVOKE удаляет ранее предоставленные разрешения на защищаемый объект из принципала. Ниже показан синтаксис оператора REVOKE:

REVOKE permissions
ON securable
FROM principal;

В этом синтаксисе:

  • Сначала укажите одно или несколько разрешений в предложении REVOKE.
  • Во-вторых, укажите защищаемый объект в пункте ON.
  • В-третьих, укажите принцип в предложении FROM.

Пример оператора REVOKE SQL Server

Чтобы следовать примеру, вам необходимо завершить пример оператора GRANT, который создает пользователя peter, и предоставить пользователю peter разрешения SELECT, INSERT и DELETE на таблицу People.

Сначала подключитесь к SQL Server, используя учетную запись системного администратора(sa), и используйте оператор REVOKE, чтобы удалить разрешение DELETE на таблицу People у пользователя peter:

REVOKE DELETE
ON People
FROM peter;

Во-вторых, подключитесь к SQL Server, используя пользователя peter, и выполните оператор DELETE для проверки разрешения:

DELETE FROM People;

Ошибка:

The DELETE permission was denied on the object 'People', database 'HR', schema 'dbo'.

Работает так, как и ожидалось.

В-третьих, выберите данные из таблицы «Люди»:

SELECT * FROM People;

В-четвертых, удалите разрешения SELECT и UPDATE для таблицы People у пользователя peter:

REVOKE SELECT, INSERT
ON People
FROM peter;

Наконец, переключите соединение на пользователя peter и выберите данные из таблицы People:

SELECT * FROM People;

Ошибка:

The SELECT permission was denied on the object 'People', database 'HR', schema 'dbo'.

Ошибка указывает на то, что отзыв был выполнен успешно.

Краткое содержание

  • Используйте оператор SQL Server REVOKE для удаления ранее предоставленных разрешений на защищаемый объект у субъекта.
Мирослав С.

Автор статей, ИБ-специалист