DENY, запрет разрешения на коллекцию XML-схем (Transact-SQL)

Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure

Отказывает в предоставлении разрешений на коллекцию схем XML.

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

Синтаксис

DENY permission  [ ,...n ] ON   
    XML SCHEMA COLLECTION :: [ schema_name . ]  
    XML_schema_collection_name  
    TO <database_principal> [ ,...n ]  
        [ CASCADE ]  
    [ AS <database_principal> ]   
  
<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  

Аргументы

permission
Определяет разрешение, которое можно запретить для коллекции XML-схем. Список разрешений см. в подразделе "Примечания" далее в этом разделе.

ON XML SCHEMA COLLECTION :: [ schema_name. ] XML_schema_collection_name
Определяет коллекцию XML-схем, на которую будет запрещено разрешение. Квалификатор области (::) является обязательным. Если не указан аргумент schema_name, подразумевается схема по умолчанию. Если указан аргумент schema_name, обязательно указание квалификатора области схемы (.).

TO <database_principal>
Задает участника, для которого запрещается разрешение.

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

AS <database_principal>
Задает участника, от которого участник, выполняющий данный запрос, получает право на запрет разрешения.

Database_user
Указывает пользователя базы данных.

Database_role
Указывает роль базы данных.

Application_role
Указывает роль приложения.

Database_user_mapped_to_Windows_User
Указывает пользователя базы данных, сопоставленного с пользователем Windows.

Database_user_mapped_to_Windows_Group
Указывает пользователя базы данных, сопоставленного с группой Windows.

Database_user_mapped_to_certificate
Указывает пользователя базы данных, сопоставленного с сертификатом.

Database_user_mapped_to_asymmetric_key
Указывает пользователя базы данных, сопоставленного с асимметричным ключом.

Database_user_with_no_login
Указывает пользователя базы данных, не сопоставленного с субъектом серверного уровня.

Замечания

Сведения о коллекциях XML-схем доступны в представлении каталога sys.xml_schema_collections.

Коллекция XML-схем представляет собой защищаемую сущность уровня схемы, содержащуюся в родительской схеме иерархии разрешений. Наиболее специфичные и ограниченные разрешения, которые можно запретить для коллекции XML-схем, перечислены в следующей таблице вместе с более общими разрешениями, неявно содержащими их.

Разрешение коллекции XML-схем Содержится в разрешении коллекции схем XML Содержится в разрешении схемы
ИЗМЕНИТЬ ПРОИЗВОДИТЕЛЬНОСТИ ИЗМЕНИТЬ
ПРОИЗВОДИТЕЛЬНОСТИ ПРОИЗВОДИТЕЛЬНОСТИ ПРОИЗВОДИТЕЛЬНОСТИ
Выполнение  ПРОИЗВОДИТЕЛЬНОСТИ Выполнение 
ССЫЛКИ ПРОИЗВОДИТЕЛЬНОСТИ ССЫЛКИ
TAKE OWNERSHIP ПРОИЗВОДИТЕЛЬНОСТИ ПРОИЗВОДИТЕЛЬНОСТИ
VIEW DEFINITION ПРОИЗВОДИТЕЛЬНОСТИ VIEW DEFINITION

Разрешения

Необходимо разрешение CONTROL на коллекцию XML-схем. При использовании аргумента AS указанный участник должен быть владельцем коллекции XML-схем.

Примеры

В следующем примере запрещается разрешение EXECUTE на коллекцию XML-схем Invoices4 для пользователя Wanida. Коллекция XML-схем Invoices4 размещена внутри схемы Sales базы данных AdventureWorks2022.

USE AdventureWorks2022;  
DENY EXECUTE ON XML SCHEMA COLLECTION::Sales.Invoices4 TO Wanida;  
GO  

См. также

Grant XML Schema Collection Permissions (Transact-SQL)
REVOKE XML Schema Collection Permissions (Transact-SQL)
sys.xml_schema_collections (Transact-SQL)
CREATE XML SCHEMA COLLECTION (Transact-SQL)
Разрешения (ядро СУБД)
Субъекты (ядро СУБД)