REVOKE Permisos principales del servidor (Transact-SQL)

Se aplica a:SQL ServerAzure SQL Managed Instance

Revoca los permisos concedidos o denegados para un inicio de sesión de SQL Server.

Convenciones de sintaxis de Transact-SQL

Sintaxis

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  

Argumentos

permission
Especifica un permiso que se puede revocar en un inicio de sesión de SQL Server. Para obtener una lista de permisos, vea la sección Comentarios que se muestra posteriormente en este tema.

LOGIN ::SQL_Server_login
Especifica el inicio de sesión de SQL Server en el que se va a revocar el permiso. El calificador de ámbito ( :: ) es obligatorio.

SERVER ROLE ::server_role
Especifica el rol de servidor para el que se revoca el permiso. El calificador de ámbito ( :: ) es obligatorio.

{ FROM | TO } <server_principal> Especifica el rol de servidor o el inicio de sesión de SQL Server desde el que se va a revocar el permiso.

SQL_Server_login
Especifica el nombre de un inicio de sesión de SQL Server.

SQL_Server_login_from_Windows_login
Especifica el nombre de un inicio de sesión de SQL Server creado desde un inicio de sesión de Windows.

SQL_Server_login_from_certificate
Especifica el nombre de un inicio de sesión de SQL Server asignado a un certificado.

SQL_Server_login_from_AsymKey
Especifica el nombre de un inicio de sesión de SQL Server asignado a una clave asimétrica.

server_role
Especifica el nombre de un rol de servidor definido por el usuario.

GRANT OPCIÓN
Indica que se revocará el derecho de conceder el permiso especificado a otras entidades de seguridad. No se revocará el permiso.

Importante

Si el principal tiene el permiso especificado sin la GRANT opción, el permiso será revocado.

CASCADE
Indica que el permiso que se va a revocar también se revocará de otras entidades de seguridad a las que esta entidad de seguridad ha concedido o denegado permisos.

Precaución

Una revocación en cascada de un permiso concedido CON GRANT OPCIÓN revocará tanto GRANT como DENY a ese permiso.

COMO SQL_Server_login
Especifica el inicio de sesión de SQL Server del que la entidad de seguridad que ejecuta esta consulta deriva su derecho para revocar el permiso.

Observaciones

Los roles de servidor y los inicios de sesión de SQL Server son protegibles en el nivel de servidor. La mayoría de permisos limitados y específicos que se pueden revocar para un rol de servidor o un inicio de sesión de SQL Server se muestran en la siguiente tabla, junto con los permisos más generales que los incluyen por implicación.

Permiso de rol de servidor o de inicio de sesión de SQL Server Permiso de rol de servidor o inicio de sesión implícito de SQL Server Implícito en el permiso de servidor
CONTROL CONTROL SERVIDOR DE CONTROL
IMPERSONATE CONTROL SERVIDOR DE CONTROL
VIEW DEFINICIÓN CONTROL VIEW CUALQUIER DEFINICIÓN
ALTER CONTROL ALTERAR CUALQUIER LOGIN

ALTERAR CUALQUIER SERVER ROLE

Permisos

Para iniciar sesión, requiere permiso CONTROL en el inicio de sesión o ALTERAR CUALQUIER LOGIN permiso en el servidor.

Para roles de servidor, requiere permiso CONTROL sobre el rol del servidor o ALTERAR CUALQUIER SERVER ROLE permiso en el servidor.

Ejemplos

A. Revocar el permiso IMPERSONATE en un inicio de sesión

En el siguiente ejemplo se revoca el permiso IMPERSONATE para el inicio de sesión de SQL ServerWanidaBenshoof desde un inicio de sesión de SQL Server creado desde el usuario de Windows AdvWorks\YoonM.

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

B. Revocando VIEW permiso de DEFINICIÓN con CASCADE

En el siguiente ejemplo se revoca el permiso VIEW DEFINITION para el inicio de sesión EricKurjan de SQL Server del inicio de sesión RMeyyappan de SQL Server. La opción CASCADE indica que el permiso VIEW DEFINITION para EricKurjan también se revocará a las entidades de seguridad a las que RMeyyappan concedió el permiso.

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

C. Revocar VIEW permiso de DEFINICIÓN en un rol de servidor

En el siguiente ejemplo se revoca el permiso VIEW DEFINITION en el rol de servidor Sales al rol de servidor Auditors.

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

Consulte también

sys.server_principals (Transact-SQL)
sys.server_permissions (Transact-SQL)
GRANT Permisos de entidad de seguridad de servidor (Transact-SQL)
DENY Permisos de entidad de seguridad de servidor (Transact-SQL)
CREATE LOGIN (Transact-SQL)
Entidades de seguridad (motor de base de datos)
Permisos (motor de base de datos)
Funciones de seguridad (Transact-SQL)
Procedimientos almacenados de seguridad (Transact-SQL)