Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Применимо к:SQL Server
База данных Azure SQL
Управляемый экземпляр Azure SQL
Azure Synapse Analytics
Система платформы аналитики (PDW)
Конечная точка SQL аналитики в Microsoft Fabric
Хранилище в Microsoft Fabric
База данных SQL в Microsoft Fabric
Производит отзыв разрешений, предоставляющих или запрещающих доступ к базе данных.
Соглашения о синтаксисе Transact-SQL
Syntax
REVOKE [ GRANT OPTION FOR ] <permission> [ ,...n ]
{ TO | FROM } <database_principal> [ ,...n ]
[ CASCADE ]
[ AS <database_principal> ]
<permission> ::=
permission | ALL [ PRIVILEGES ]
<database_principal> ::=
Database_user
| Database_role
| Application_role
| Database_user_mapped_to_Windows_User
| Database_user_mapped_to_Windows_Group
| Database_user_mapped_to_certificate
| Database_user_mapped_to_asymmetric_key
| Database_user_with_no_login
Arguments
permission
Указывает отзываемое разрешение для базы данных. Список разрешений см. в подразделе "Примечания" далее в этом разделе.
ALL
Этот параметр не отменяет все возможные разрешения. Аргумент отмены ALL эквивалентен отмене следующих разрешений: BACKUP DATABASE, BACKUP LOG, CREATE DATABASE, CREATE DEFAULT, CREATE FUNCTION, CREATE PROCEDURE, CREATE RULE, CREATE TABLE и CREATE VIEW.
PRIVILEGES
Включено для обеспечения совместимости с требованиями ISO. Не изменяет работу ALL.
ОПЦИЯ ГРАНТА
Показывает, что отменяется право на предоставление указанного разрешения другим участникам. Само разрешение отменено не будет.
Important
Если участник обладает указанным разрешением без параметра GRANT, будет отменено само разрешение.
CASCADE
Показывает, что отменяемое разрешение также отменяется для других участников, для которых оно было предоставлено или запрещено данным участником.
Caution
Каскадная отмена разрешения, предоставленного с помощью параметра WITH GRANT OPTION, приведет к отмене разрешений GRANT и DENY для этого разрешения.
AS <database_principal> Указывает субъекта, от которого субъект, выполняющий данный запрос, наследует право на отмену разрешения.
Database_user
Указывает пользователя базы данных.
Database_role
Указывает роль базы данных.
Application_role
Область применения: SQL Server 2008 (10.0.x) и более поздних версий База данных SQL
Указывает роль приложения.
Database_user_mapped_to_Windows_User
Область применения: SQL Server 2008 (10.0.x) и более поздних версий
Указывает пользователя базы данных, сопоставленного с пользователем Windows.
Database_user_mapped_to_Windows_Group
Область применения: SQL Server 2008 (10.0.x) и более поздних версий
Указывает пользователя базы данных, сопоставленного с группой Windows.
Database_user_mapped_to_certificate
Область применения: SQL Server 2008 (10.0.x) и более поздних версий
Указывает пользователя базы данных, сопоставленного с сертификатом.
Database_user_mapped_to_asymmetric_key
Область применения: SQL Server 2008 (10.0.x) и более поздних версий
Указывает пользователя базы данных, сопоставленного с асимметричным ключом.
Database_user_with_no_login
Указывает пользователя базы данных, не сопоставленного с субъектом серверного уровня.
Remarks
Инструкция завершится ошибкой, если параметр CASCADE не указан при отзыве разрешения у участника, который предоставлял это разрешение с указанием параметра GRANT OPTION.
База данных — это защищаемый объект, хранящийся на сервере, который является родителем базы данных в иерархии разрешений. В следующей таблице перечислены отдельные разрешения на базу данных, которые могут быть отозваны, а также общие разрешения, которые неявно их включают.
| Разрешение базы данных | Содержится в разрешении базы данных | Подразумевается в разрешении сервера |
|---|---|---|
| УПРАВЛЕНИЕ МАССОВЫМИ ОПЕРАЦИЯМИ С БАЗОЙ ДАННЫХ Область применения: База данных SQL. |
CONTROL | сервер управления |
| ALTER | CONTROL | ALTER ANY DATABASE (ИЗМЕНЕНИЕ ЛЮБОЙ БАЗЫ ДАННЫХ). |
| ИЗМЕНИТЬ ЛЮБУЮ РОЛЬ ПРИЛОЖЕНИЯ | ALTER | сервер управления |
| ИЗМЕНИТЬ ЛЮБУЮ СБОРКУ | ALTER | сервер управления |
| Изменить любой асимметричный ключ | ALTER | сервер управления |
| ИЗМЕНИТЬ ЛЮБОЙ СЕРТИФИКАТ | ALTER | сервер управления |
| Изменить любой ключ шифрования столбца | ALTER | сервер управления |
| ИЗМЕНИТЬ ОПРЕДЕЛЕНИЕ ЛЮБОГО ГЛАВНОГО КЛЮЧА СТОЛБЦА | ALTER | сервер управления |
| ИЗМЕНЯТЬ ЛЮБОЙ КОНТРАКТ | ALTER | сервер управления |
| ИЗМЕНИТЬ ЛЮБУЮ ПРОВЕРКУ БАЗЫ ДАННЫХ | ALTER | ИЗМЕНЕНИЕ ЛЮБОГО АУДИТА СЕРВЕРА |
| ИЗМЕНИТЬ ЛЮБОЙ ТРИГГЕР DDL БАЗЫ ДАННЫХ | ALTER | сервер управления |
| Изменение любых уведомлений о событиях базы данных (ALTER ANY DATABASE EVENT NOTIFICATION) | ALTER | ИЗМЕНЕНИЕ ЛЮБОГО УВЕДОМЛЕНИЯ О СОБЫТИИ |
| ИЗМЕНИТЬ ЛЮБОЙ СЕССИЮ СОБЫТИЯ БАЗЫ ДАННЫХ Область применения: База данных SQL Azure. |
ALTER | ИЗМЕНИТЬ ЛЮБУЮ СЕССИЮ СОБЫТИЯ |
| ИЗМЕНИТЬ ЛЮБУЮ КОНФИГУРАЦИЮ В ОБЛАСТИ БАЗЫ ДАННЫХ Область применения: SQL Server 2016 (13.x) и более поздних версий База данных SQL. |
CONTROL | сервер управления |
| ИЗМЕНИТЬ ЛЮБОЕ ПРОСТРАНСТВО ДАННЫХ | ALTER | сервер управления |
| ИЗМЕНЕНИЕ ЛЮБОГО ВНЕШНЕГО ИСТОЧНИКА ДАННЫХ | ALTER | сервер управления |
| ИЗМЕНИТЬ ЛЮБОЙ ВНЕШНИЙ ФОРМАТ ФАЙЛА | ALTER | сервер управления |
| ИЗМЕНИТЬ ЛЮБУЮ ВНЕШНЮЮ БИБЛИОТЕКУ Область применения: SQL Server 2017 (14.x). |
CONTROL | сервер управления |
| ИЗМЕНИТЬ ЛЮБОЙ ПОЛНОТЕКСТОВЫЙ КАТАЛОГ | ALTER | сервер управления |
| ИЗМЕНИТЬ ЛЮБУЮ МАСКУ | CONTROL | сервер управления |
| ИЗМЕНЯТЬ ЛЮБОЙ ТИП СООБЩЕНИЯ | ALTER | сервер управления |
| ИЗМЕНИТЬ ЛЮБУЮ УДАЛЕННУЮ СВЯЗЬ СЕРВИСА | ALTER | сервер управления |
| ИЗМЕНИТЬ ЛЮБУЮ РОЛЬ | ALTER | сервер управления |
| ИЗМЕНИТЬ ЛЮБОЙ МАРШРУТ | ALTER | сервер управления |
| ИЗМЕНИТЬ ЛЮБУЮ СХЕМУ | ALTER | сервер управления |
| ИЗМЕНИТЬ ЛЮБУЮ ПОЛИТИКУ БЕЗОПАСНОСТИ Область применения: База данных SQL Azure. |
CONTROL | сервер управления |
| ИЗМЕНЕНИЕ ЛЮБОЙ СЛУЖБЫ | ALTER | сервер управления |
| ИЗМЕНИТЬ ЛЮБОЙ СИММЕТРИЧНЫЙ КЛЮЧ | ALTER | сервер управления |
| ИЗМЕНИТЬ ПОЛЬЗОВАТЕЛЯ | ALTER | сервер управления |
| AUTHENTICATE | CONTROL | ПРОВЕРКА ПОДЛИННОСТИ СЕРВЕРА |
| РЕЗЕРВНОЕ КОПИРОВАНИЕ БАЗЫ ДАННЫХ | CONTROL | сервер управления |
| ЖУРНАЛ РЕЗЕРВНОГО КОПИРОВАНИЯ | CONTROL | сервер управления |
| CHECKPOINT | CONTROL | сервер управления |
| CONNECT | РЕПЛИКАЦИЯ CONNECT | сервер управления |
| РЕПЛИКАЦИЯ CONNECT | CONTROL | сервер управления |
| CONTROL | CONTROL | сервер управления |
| СОЗДАТЬ АГГРЕГАТ | ALTER | сервер управления |
| СОЗДАНИЕ СБОРКИ | ИЗМЕНИТЬ ЛЮБУЮ СБОРКУ | сервер управления |
| СОЗДАНИЕ АСИММЕТРИЧНОГО КЛЮЧА | Изменить любой асимметричный ключ | сервер управления |
| СОЗДАТЬ СЕРТИФИКАТ | ИЗМЕНИТЬ ЛЮБОЙ СЕРТИФИКАТ | сервер управления |
| Создать договор | ИЗМЕНЯТЬ ЛЮБОЙ КОНТРАКТ | сервер управления |
| СОЗДАТЬ БАЗУ ДАННЫХ | CONTROL | CREATE ANY DATABASE (СОЗДАНИЕ ЛЮБОЙ БАЗЫ ДАННЫХ); |
| СОЗДАНИЕ УВЕДОМЛЕНИЯ О СОБЫТИЯХ БАЗЫ ДАННЫХ DDL | Изменение любых уведомлений о событиях базы данных (ALTER ANY DATABASE EVENT NOTIFICATION) | СОЗДАНИЕ УВЕДОМЛЕНИЯ О СОБЫТИИ DDL |
| СОЗДАТЬ ПО УМОЛЧАНИЮ | ALTER | сервер управления |
| СОЗДАНИЕ КАТАЛОГА FULLTEXT | ИЗМЕНИТЬ ЛЮБОЙ ПОЛНОТЕКСТОВЫЙ КАТАЛОГ | сервер управления |
| СОЗДАТЬ ФУНКЦИЮ | ALTER | сервер управления |
| СОЗДАТЬ ТИП СООБЩЕНИЯ | ИЗМЕНЯТЬ ЛЮБОЙ ТИП СООБЩЕНИЯ | сервер управления |
| СОЗДАТЬ ПРОЦЕДУРУ | ALTER | сервер управления |
| СОЗДАНИЕ ОЧЕРЕДИ | ALTER | сервер управления |
| СОЗДАНИЕ ПРИВЯЗКИ К УДАЛЕННОЙ СЛУЖБЕ | ИЗМЕНИТЬ ЛЮБУЮ УДАЛЕННУЮ СВЯЗЬ СЕРВИСА | сервер управления |
| СОЗДАТЬ РОЛЬ | ИЗМЕНИТЬ ЛЮБУЮ РОЛЬ | сервер управления |
| СОЗДАТЬ МАРШРУТ | ИЗМЕНИТЬ ЛЮБОЙ МАРШРУТ | сервер управления |
| СОЗДАНИЕ ПРАВИЛА | ALTER | сервер управления |
| СОЗДАТЬ СХЕМУ | ИЗМЕНИТЬ ЛЮБУЮ СХЕМУ | сервер управления |
| Создать сервис | ИЗМЕНЕНИЕ ЛЮБОЙ СЛУЖБЫ | сервер управления |
| СОЗДАНИЕ СИММЕТРИЧНОГО КЛЮЧА | ИЗМЕНИТЬ ЛЮБОЙ СИММЕТРИЧНЫЙ КЛЮЧ | сервер управления |
| СОЗДАТЬ СИНОНИМ | ALTER | сервер управления |
| CREATE TABLE | ALTER | сервер управления |
| СОЗДАТЬ ТИП | ALTER | сервер управления |
| СОЗДАТЬ ПРЕДСТАВЛЕНИЕ | ALTER | сервер управления |
| СОЗДАТЬ КОЛЛЕКЦИЮ XML-СХЕМ | ALTER | сервер управления |
| DELETE | CONTROL | сервер управления |
| EXECUTE | CONTROL | сервер управления |
| ВЫПОЛНЕНИЕ ЛЮБОГО ВНЕШНЕГО СКРИПТА Область применения: SQL Server 2016 (13.x). |
CONTROL | сервер управления |
| INSERT | CONTROL | сервер управления |
| Завершить подключение к базе данных Область применения: База данных SQL Azure. |
CONTROL | ИЗМЕНЕНИЕ ЛЮБОГО СОЕДИНЕНИЯ |
| REFERENCES | CONTROL | сервер управления |
| SELECT | CONTROL | сервер управления |
| SHOWPLAN | CONTROL | ALTER TRACE |
| УВЕДОМЛЕНИЯ О ЗАПРОСЕ НА ПОДПИСКУ | CONTROL | сервер управления |
| ВОЗЬМИТЕ ОТВЕТСТВЕННОСТЬ | CONTROL | сервер управления |
| UNMASK | CONTROL | сервер управления |
| UPDATE | CONTROL | сервер управления |
| ПРОСМОТР ОПРЕДЕЛЕНИЯ КЛЮЧА ШИФРОВАНИЯ СТОЛБЦА | CONTROL | Просмотреть любое определение |
| ПРОСМОТР ОПРЕДЕЛЕНИЯ ГЛАВНОГО КЛЮЧА СТОЛБЦА | CONTROL | Просмотреть любое определение |
| ПРОСМОТР СОСТОЯНИЯ БАЗЫ ДАННЫХ | CONTROL | просмотр состояния сервера |
| ПРЕДСТАВЛЕНИЕ ОПРЕДЕЛЕНИЯ | CONTROL | Просмотреть любое определение |
Permissions
Участник, выполняющий эту инструкцию (или участник, указанный параметром AS), должен иметь разрешение CONTROL на базу данных или разрешение более высокого уровня, которое включает это разрешение.
Если указан параметр AS, указанный участник должен быть владельцем базы данных.
Examples
A. Отмена разрешения на создание сертификатов
В следующем примере производится отмена разрешения CREATE CERTIFICATE на базу данных AdventureWorks2025 для пользователя MelanieK.
Область применения: SQL Server 2008 (10.0.x) и более поздних версий
USE AdventureWorks2022;
REVOKE CREATE CERTIFICATE FROM MelanieK;
GO
B. Отмена разрешения REFERENCES для роли приложения
В следующем примере производится отмена разрешения REFERENCES на базу данных AdventureWorks2025 для роли приложения AuditMonitor.
Область применения: SQL Server 2008 (10.0.x) и более поздних версий База данных SQL
USE AdventureWorks2022;
REVOKE REFERENCES FROM AuditMonitor;
GO
C. Отмена разрешения VIEW DEFINITION с параметром CASCADE
В следующем примере производится отмена разрешения VIEW DEFINITION на базу данных AdventureWorks2025 для пользователя CarmineEs и всех участников, которым CarmineEs предоставил разрешение VIEW DEFINITION.
USE AdventureWorks2022;
REVOKE VIEW DEFINITION FROM CarmineEs CASCADE;
GO
См. также
sys.database_permissions (Transact-SQL)
sys.database_principals (Transact-SQL)
Grant Database Permissions (Transact-SQL)
ЗАПРЕТИТЬ разрешения базы данных (Transact-SQL)
Разрешения (ядро СУБД)
Субъекты (ядро СУБД)