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


DENY, запрет разрешений на сертификат (Transact-SQL)

Запрещает разрешения на сертификат.

Применимо для следующих объектов: SQL Server (начиная с SQL Server 2008 до текущей версии).

Значок ссылки на раздел Синтаксические обозначения в Transact-SQL

Синтаксис

DENY permission  [ ,...n ] 
    ON CERTIFICATE :: certificate_name 
    TO principal [ ,...n ]
    [ CASCADE ]
    [ AS denying_principal ]

Аргументы

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

  • ON CERTIFICATE **::**certificate_name
    Указывает сертификат, для которого выполняется запрет разрешения. Необходим квалификатор области «::».

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Замечания

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

Разрешение сертификата

Содержится в разрешении сертификата

Содержится в разрешении базы данных

CONTROL

CONTROL

CONTROL

TAKE OWNERSHIP

CONTROL

CONTROL

ALTER

CONTROL

ALTER ANY CERTIFICATE

REFERENCES

CONTROL

REFERENCES

VIEW DEFINITION

CONTROL

VIEW DEFINITION

Разрешения

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

См. также

Справочник

DENY (Transact-SQL)

Инструкция CREATE CERTIFICATE (Transact-SQL)

CREATE ASYMMETRIC KEY (Transact-SQL)

CREATE APPLICATION ROLE (Transact-SQL)

Основные понятия

Разрешения (компонент Database Engine)

Участники (компонент Database Engine)

Иерархия средств шифрования