Поделиться через


DENY, запрет разрешений на схему (Transact-SQL)

Применимо к:SQL ServerБаза данных SQL AzureУправляемый экземпляр SQL AzureБаза данных SQL в Microsoft Fabric

Запрещает разрешения на схему.

Соглашения о синтаксисе Transact-SQL

Syntax

DENY permission  [ ,...n ] } ON SCHEMA :: schema_name  
    TO database_principal [ ,...n ]   
    [ CASCADE ]  
        [ AS denying_principal ]  

Arguments

permission
Указывает разрешение, которое может быть запрещено на схему. Список разрешений см. в подразделе "Примечания" далее в этом разделе.

ON SCHEMA :: schema*_name*
Указывает схему, на которую запрещается разрешение. Квалификатор области :: является обязательным.

database_principal
Указывает участника, для которого запрещается разрешение. database_principal может быть одним из следующих:

  • пользователь базы данных;
  • роль базы данных;
  • Роль приложения
  • пользователь базы данных, сопоставленный с именем входа Windows;
  • пользователь базы данных, сопоставленный с группой Windows;
  • пользователь базы данных, сопоставленный с сертификатом;
  • пользователь базы данных, сопоставленный с асимметричным ключом;
  • пользователь базы данных, не сопоставленный с сервером-участником.

CASCADE
Запрещает разрешение для любых других участников, которым database_principal явно предоставил разрешение.

denying_principal
Задает участника, от которого участник, выполняющий данный запрос, получает право на запрет разрешения. denying_principal может быть одним из следующих:

  • пользователь базы данных;
  • роль базы данных;
  • Роль приложения
  • пользователь базы данных, сопоставленный с именем входа Windows;
  • пользователь базы данных, сопоставленный с группой Windows;
  • пользователь базы данных, сопоставленный с сертификатом;
  • пользователь базы данных, сопоставленный с асимметричным ключом;
  • пользователь базы данных, не сопоставленный с сервером-участником.

Remarks

Схема — это защищаемый объект уровня базы данных. Она находится в базе данных, которая является родительской в иерархии разрешений. Наиболее часто указываемые и ограниченные разрешения, которые могут быть запрещены в схеме, перечислены в следующей таблице. В таблице показаны наиболее общие разрешения, неявно их содержащие.

Разрешение на схему Содержится в разрешении схемы Содержится в разрешении базы данных
ALTER CONTROL ИЗМЕНИТЬ ЛЮБУЮ СХЕМУ
CONTROL CONTROL CONTROL
СОЗДАТЬ ПОСЛЕДОВАТЕЛЬНОСТЬ ALTER ИЗМЕНИТЬ ЛЮБУЮ СХЕМУ
DELETE CONTROL DELETE
EXECUTE CONTROL EXECUTE
INSERT CONTROL INSERT
REFERENCES CONTROL REFERENCES
SELECT CONTROL SELECT
ВОЗЬМИТЕ ОТВЕТСТВЕННОСТЬ CONTROL CONTROL
UPDATE CONTROL UPDATE
ПРОСМОТР ИЗМЕНЕНИЙ CONTROL CONTROL
ПРЕДСТАВЛЕНИЕ ОПРЕДЕЛЕНИЯ CONTROL ПРЕДСТАВЛЕНИЕ ОПРЕДЕЛЕНИЯ

Permissions

Требуется разрешение CONTROL для схемы. Если указан параметр AS, указанный участник должен быть владельцем схемы.

См. также

CREATE SCHEMA (Transact-SQL)
ЗАПРЕТИТЬ (Transact-SQL)
Разрешения (ядро СУБД)
Субъекты (ядро СУБД)
sys.fn_builtin_permissions (Transact-SQL)
sys.fn_my_permissions (Transact-SQL)
HAS_PERMS_BY_NAME (Transact-SQL)