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


REVOKE, отмена разрешений на конечные точки (Transact-SQL)

Отменяет разрешения, предоставленные или запрещенные в конечной точке.

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

Синтаксис

REVOKE [ GRANT OPTION FOR ] permission [ ,...n ] 
    ON ENDPOINT :: endpoint_name
    { FROM | TO } <server_principal> [ ,...n ]
    [ CASCADE ]
    [ AS SQL_Server_login ] 

<server_principal> ::=  
        SQL_Server_login
    | SQL_Server_login_from_Windows_login 
    | SQL_Server_login_from_certificate 
    | SQL_Server_login_from_AsymKey

Аргументы

  • permission
    Определяет разрешения, на конечную точку, которые могут быть предоставлены. Список разрешений см. ниже в разделе «Примечания».

  • ON ENDPOINT ::endpoint_name
    Указывает конечную точку, для которой выдается разрешение. Требуется квалификатор области (
    ::
    ).

  • { FROM | TO } <server_principal>
    Указывает имя входа SQL Server, у которого отменяется разрешение.

  • SQL_Server_login
    Указывает имя входа SQL Server.

  • SQL_Server_login_from_Windows_login
    Указывает имя входа SQL Server, созданное из имени входа Windows.

  • SQL_Server_login_from_certificate
    Указывает имя входа SQL Server, сопоставленного с сертификатом.

  • SQL_Server_login_from_AsymKey
    Указывает имя входа SQL Server, сопоставленного с ассиметричным ключом.

  • GRANT OPTION
    Указывает, что право на предоставление заданного разрешения другим участникам будет отменено. Само разрешение отменено не будет.

    Важное примечаниеВажно!

    Если участник обладает указанным разрешением без параметра GRANT, будет отменено само разрешение.

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

    ПредупреждениеВнимание!

    Каскадная отмена разрешения, предоставленного с помощью параметра WITH GRANT OPTION, приведет к отмене прав GRANT и DENY для этого разрешения.

  • AS SQL_Server_login
    Указывает имя входа SQL Server, от которого участник, выполняющий этот запрос, получает право отмены разрешения.

Замечания

Разрешения в области сервера могут быть отозваны, только если текущей базой данных является master.

Сведения о конечных точках видимы в представлении каталога sys.endpoints. Сведения о серверных разрешениях видны в представлении каталога sys.server_permissions, а сведения об серверах-участниках видны в представлении каталога sys.server_principals.

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

Разрешение конечной точки

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

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

ALTER

CONTROL

ALTER ANY ENDPOINT

CONNECT

CONTROL

CONTROL SERVER

CONTROL

CONTROL

CONTROL SERVER

TAKE OWNERSHIP

CONTROL

CONTROL SERVER

VIEW DEFINITION

CONTROL

VIEW ANY DEFINITION

Разрешения

Требует разрешения CONTROL в конечной точке или разрешения ALTER ANY ENDPOINT на сервере.

Примеры

А.Отмена разрешения VIEW DEFINITION в конечной точке

В следующем примере отменяется разрешение VIEW DEFINITION в конечной точке Mirror7 из имени входа SQL Server ZArifin.

USE master;
REVOKE VIEW DEFINITION ON ENDPOINT::Mirror7 FROM ZArifin;
GO

Б.Отмена разрешения TAKE OWNERSHIP с параметром CASCADE

В следующем примере отменяется разрешение TAKE OWNERSHIP в конечной точке Shipping83 из пользователя SQL Server PKomosinski и из всех участников, которым пользователь PKomosinski предоставил разрешение TAKE OWNERSHIP для Shipping83.

USE master;
REVOKE TAKE OWNERSHIP ON ENDPOINT::Shipping83 FROM PKomosinski 
    CASCADE;
GO

См. также

Справочник

GRANT, предоставление разрешений на конечные точки (Transact-SQL)

DENY, запрет разрешений на конечную точку (Transact-SQL)

CREATE ENDPOINT (Transact-SQL)

Представления каталога конечных точек (Transact-SQL)

sys.endpoints (Transact-SQL)

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

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

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