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


DENY, запрет разрешений на учетные данные для базы данных (Transact-SQL)

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

Запрещает разрешения на учетные данные для базы данных.

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

Синтаксис

  
DENY permission  [ ,...n ]   
    ON DATABASE SCOPED CREDENTIAL :: credential_name   
    TO principal [ ,...n ]  
    [ CASCADE ]  
    [ AS denying_principal ]  

Аргументы

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

ON DATABASE SCOPED CREDENTIAL ::credential_name
Указывает учетные данные для базы данных, для которых запрещается разрешение. Квалификатор области "::" является обязательным.

database_principal
Задает участника, для которого запрещается разрешение. Один из следующих:

  • пользователь базы данных;

  • роль базы данных;

  • роль приложения;

  • пользователь базы данных, сопоставленный с именем входа Windows;

  • пользователь базы данных, сопоставленный с группой Windows;

  • пользователь базы данных, сопоставленный с сертификатом;

  • пользователь базы данных, сопоставленный с асимметричным ключом;

  • пользователь базы данных, не сопоставленный с участником на уровне сервера.

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

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

  • пользователь базы данных;

  • роль базы данных;

  • роль приложения;

  • пользователь базы данных, сопоставленный с именем входа Windows;

  • пользователь базы данных, сопоставленный с группой Windows;

  • пользователь базы данных, сопоставленный с сертификатом;

  • пользователь базы данных, сопоставленный с асимметричным ключом;

  • пользователь базы данных, не сопоставленный с участником на уровне сервера.

Замечания

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

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

Разрешения

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

См. также

DENY (Transact-SQL)
GRANT, предоставление разрешений на учетные данные для базы данных (Transact-SQL)
REVOKE, отмена учетных данных для базы данных (Transact-SQL)
Разрешения (ядро СУБД)
Субъекты (ядро СУБД)
Иерархия средств шифрования