REVOKE 서버 보안 주체 사용 권한(Transact-SQL)

적용 대상:SQL ServerAzure SQL Managed Instance

SQL Server 로그인에 대해 부여되거나 거부된 사용 권한을 취소합니다.

Transact-SQL 구문 표기 규칙

Syntax

REVOKE [ GRANT OPTION FOR ] permission [ ,...n ] }   
    ON   
    { [ LOGIN :: SQL_Server_login ]  
      | [ SERVER ROLE :: server_role ] }   
    { 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     
    | server_role  

참고 항목

SQL Server 2014(12.x) 및 이전 버전에 대한 Transact-SQL 구문을 보려면 이전 버전 설명서를 참조 하세요.

인수

permission
SQL Server 로그인에 대해 취소할 수 있는 사용 권한을 지정합니다. 사용 권한 목록은 이 항목의 뒤에 나오는 주의 섹션을 참조하세요.

LOGIN ::SQL_Server_login
사용 권한을 취소할 SQL Server 로그인을 지정합니다. 범위 한정자( :: )가 필요합니다.

SERVER ROLE ::server_role
사용 권한을 취소할 서버 역할을 지정합니다. 범위 한정자( :: )가 필요합니다.

{ FROM | TO } <server_principal> 사용 권한을 취소할 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 로그인의 이름을 지정합니다.

server_role
사용자 정의 서버 역할의 이름을 지정합니다.

GRANT OPTION
지정한 사용 권한을 다른 보안 주체에게 부여할 수 있는 권한이 취소됨을 나타냅니다. 사용 권한 자체는 취소되지 않습니다.

중요

보안 주체에 GRANT 옵션 없이 지정된 사용 권한이 있는 경우 사용 권한 자체가 취소됩니다.

CASCADE
사용 권한이 취소된 보안 주체에게 사용 권한을 부여 받거나 거부당한 다른 보안 주체의 사용 권한도 취소됨을 나타냅니다.

주의

WITH GRANT OPTION을 부여 받은 사용 권한이 연계되어 취소되면 해당 사용 권한의 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

ALTER ANY SERVER ROLE

사용 권한

로그인의 경우 로그인에 대한 CONTROL 권한 또는 서버에 대한 ALTER ANY LOGIN 권한이 필요합니다.

서버 역할의 경우 서버 역할에 대한 CONTROL 권한 또는 서버에 대한 ALTER ANY SERVER ROLE 권한이 필요합니다.

예제

A. 로그인에 대한 IMPERSONATE 권한 취소

다음 예에서는 사용자 AdvWorks\YoonM에서 생성된 SQL Server 로그인에게 SQL Server 로그인 WanidaBenshoof에 대한 IMPERSONATE 권한을 취소합니다.

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

B. CASCADE를 지정하여 VIEW DEFINITION 권한 취소

다음 예에서는 SQL Server 로그인 VIEW DEFINITION으로부터 SQL Server 로그인 EricKurjan에 대한 RMeyyappan 권한을 취소합니다. CASCADE 옵션은 VIEW DEFINITION에 대한 EricKurjan 권한도 RMeyyappan이 이 사용 권한을 부여한 보안 주체로부터 취소됨을 나타냅니다.

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

C. 서버 역할에 대한 VIEW DEFINITION 권한 취소

다음 예에서는 VIEW DEFINITION 서버 역할에 대한 SalesAuditors 서버 역할에서 취소합니다.

USE master;  
REVOKE VIEW DEFINITION ON SERVER ROLE::Sales TO Auditors ;  
GO   

참고 항목

sys.server_principals(Transact-SQL)
sys.server_permissions(Transact-SQL)
GRANT 서버 보안 주체 사용 권한(Transact-SQL)
DENY 서버 보안 주체 사용 권한(Transact-SQL)
CREATE LOGIN(Transact-SQL)
보안 주체(데이터베이스 엔진)
사용 권한(데이터베이스 엔진)
보안 함수(Transact-SQL)
보안 저장 프로시저(Transact-SQL)