REVOKE (サーバー プリンシパルの権限の取り消し) (Transact-SQL)

SQL Server ログインに対して許可または拒否された権限を取り消します。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

REVOKE [ GRANT OPTION FOR ] permission [ ,...n ] } 
    ON LOGIN :: SQL_Server_login
    { 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
    SQL Server ログインで取り消せる権限を指定します。権限の一覧については、後の「解説」を参照してください。

  • LOGIN :: SQL_Server_login
    取り消される権限の対象となる SQL Server ログインを指定します。スコープ修飾子 (::) が必要です。

  • { FROM | TO } SQL_Server_login
    権限を取り消す SQL Server ログインを指定します。

  • SQL_Server_login
    SQL Server ログインの名前を指定します。

  • SQL_Server_login_from_Windows_login
    Windows ログインから作成された SQL Server ログインの名前を指定します。

  • SQL_Server_login_from_certificate
    証明書にマップされている SQL Server ログインの名前を指定します。

  • SQL_Server_login_from_AsymKey
    非対称キーにマップされている SQL Server ログインの名前を指定します。

  • GRANT OPTION
    指定した権限を他のプリンシパルに許可するための権利が、取り消されます。権限自体は取り消されません。

    重要な注意事項重要

    指定した権限が GRANT オプションなしでプリンシパルに許可されている場合は、その権限自体が取り消されます。

  • CASCADE
    このプリンシパルによって権限が許可または拒否されている他のプリンシパルからも、同じ権限が取り消されることを示します。

    注記注意

    WITH GRANT OPTION で許可されている権限を CASCADE で取り消すと、その権限の GRANT および DENY の両方が取り消されます。

  • AS SQL_Server_login
    このクエリを実行するプリンシパルが権限を取り消す権利を取得した、元の SQL Server ログインを指定します。

説明

SQL Server ログインは、サーバー レベルのセキュリティ保護可能なリソースです。次の表に、SQL Server ログインで取り消すことができる権限のうち最も限定的なものを、それらを暗黙的に含む一般的な権限と共に示します。

SQL Server ログイン権限

権限が含まれる SQL Server ログイン権限

権限が含まれるサーバー権限

CONTROL

CONTROL

CONTROL SERVER

IMPERSONATE

CONTROL

CONTROL SERVER

VIEW DEFINITION

CONTROL

VIEW ANY DEFINITION

ALTER

CONTROL

ALTER ANY LOGIN

権限

ログインに対する CONTROL 権限、またはサーバーに対する ALTER ANY LOGIN 権限が必要です。

A. ログインの IMPERSONATE 権限を取り消す

次の例では、SQL Server ログイン WanidaBenshoof の IMPERSONATE 権限を、Windows ユーザー AdvWorks\YoonM を基に作成された SQL Server ログインから取り消します。

USE master;
REVOKE IMPERSONATE ON LOGIN::WanidaBenshoof FROM [AdvWorks\YoonM];
GO

B. CASCADE を指定して VIEW DEFINITION 権限を取り消す

次の例では、SQL Server ログイン EricKurjan の VIEW DEFINITION 権限を、SQL Server ログイン RMeyyappan から取り消します。ここでは CASCADE オプションを使用して、RMeyyappan がこの権限を許可したプリンシパルに対しても、EricKurjan の VIEW DEFINITION 権限を取り消すことを指定します。

USE master;
REVOKE VIEW DEFINITION ON LOGIN::EricKurjan FROM RMeyyappan 
    CASCADE;
GO