REVOKE (permisos de servidor de Transact-SQL)

Quita los permisos de nivel de servidor GRANT y DENY.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

REVOKE [ GRANT OPTION FOR ] permission  [ ,...n ] 
    { TO | FROM } <grantee_principal> [ ,...n ]
        [ CASCADE ]
    [ AS <grantor_principal> ] 

<grantee_principal> ::= SQL_Server_login 
        | SQL_Server_login_mapped_to_Windows_login
    | SQL_Server_login_mapped_to_Windows_group
    | SQL_Server_login_mapped_to_certificate
    | SQL_Server_login_mapped_to_asymmetric_key

<grantor_principal> ::= SQL_Server_login 
    | SQL_Server_login_mapped_to_Windows_login
    | SQL_Server_login_mapped_to_Windows_group
    | SQL_Server_login_mapped_to_certificate
    | SQL_Server_login_mapped_to_asymmetric_key

Argumentos

  • permission
    Especifica un permiso que se puede conceder en un servidor. Para obtener una lista de permisos, vea la sección Notas más adelante en este tema.
  • { TO | FROM } <grantee_principal>
    Especifica la entidad de seguridad de la que se va a revocar el permiso.
  • AS <grantor_principal>
    Especifica la entidad de seguridad de la que la entidad de seguridad que ejecuta esta consulta deriva su derecho de revocar el permiso.
  • GRANT OPTION FOR
    Indica que se revocará el derecho de conceder el permiso especificado a otras entidades de seguridad. No se revocará el permiso.

    ms186308.note(es-es,SQL.90).gifImportante:
    Si la entidad de seguridad dispone del permiso especificado sin la opción GRANT, se revocará el permiso.
  • 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.

    ms186308.Caution(es-es,SQL.90).gifAdvertencia:
    Una revocación en cascada de un permiso concedido WITH GRANT OPTION revocará tanto GRANT como DENY de dicho permiso.
  • SQL_Server_login
    Especifica un inicio de sesión de SQL Server.
  • SQL_Server_login_mapped_to_Windows_login
    Especifica un inicio de sesión de SQL Server asignado a un inicio de sesión de Windows.
  • SQL_Server_login_mapped_to_Windows_group
    Especifica un inicio de sesión de SQL Server asignado a un grupo de Windows.
  • SQL_Server_login_mapped_to_certificate
    Especifica un inicio de sesión de SQL Server asignado a un certificado.
  • SQL_Server_login_mapped_to_asymmetric_key
    Especifica un inicio de sesión de SQL Server asignado a una clave asimétrica.

Notas

Los permisos del ámbito del servidor sólo pueden revocarse si la base de datos actual es master.

REVOKE quita los permisos GRANT y DENY.

Utilice REVOKE GRANT OPTION FOR para revocar el derecho a volver a conceder el permiso especificado. Si la entidad de seguridad dispone del permiso con derecho a concederlo, se revocará el derecho a conceder el permiso, pero no se revocará el permiso. Pero si la entidad de seguridad dispone del permiso especificado sin la opción GRANT, se revocará el permiso.

Puede ver la información acerca de los permisos del servidor en la vista de catálogo sys.server_permissions, mientras que la información acerca de las entidades de seguridad de servidor puede verse en la vista de catálogo sys.server_principals. Puede ver la información acerca de la pertenencia de funciones de servidor en la vista de catálogo sys.server_role_members.

Un servidor ocupa el nivel más alto en la jerarquía de permisos. En la siguiente tabla se muestran los permisos más específicos y limitados que pueden revocarse en un servidor.

Permiso de servidor Implicado por el permiso de servidor

ADMINISTER BULK OPERATIONS

CONTROL SERVER

ALTER ANY CONNECTION

CONTROL SERVER

ALTER ANY CREDENTIAL

CONTROL SERVER

ALTER ANY DATABASE

CONTROL SERVER

ALTER ANY ENDPOINT

CONTROL SERVER

ALTER ANY EVENT NOTIFICATION

CONTROL SERVER

ALTER ANY LINKED SERVER

CONTROL SERVER

ALTER ANY LOGIN

CONTROL SERVER

ALTER RESOURCES

CONTROL SERVER

ALTER SERVER STATE

CONTROL SERVER

ALTER SETTINGS

CONTROL SERVER

ALTER TRACE

CONTROL SERVER

AUTHENTICATE SERVER

CONTROL SERVER

CONNECT SQL

CONTROL SERVER

CONTROL SERVER

CONTROL SERVER

CREATE ANY DATABASE

ALTER ANY DATABASE

CREATE DDL EVENT NOTIFICATION

ALTER ANY EVENT NOTIFICATION

CREATE ENDPOINT

ALTER ANY ENDPOINT

CREATE TRACE EVENT NOTIFICATION

ALTER ANY EVENT NOTIFICATION

EXTERNAL ACCESS ASSEMBLY

CONTROL SERVER

SHUTDOWN

CONTROL SERVER

UNSAFE ASSEMBLY

CONTROL SERVER

VIEW ANY DATABASE

VIEW ANY DEFINITION

VIEW ANY DEFINITION

CONTROL SERVER

VIEW SERVER STATE

ALTER SERVER STATE

Permisos

Debe disponer del permiso CONTROL SERVER o pertenecer a la función fija de servidor sysadmin.

Ejemplos

A. Revocar un permiso de un inicio de sesión

En el siguiente ejemplo se revoca el permiso VIEW SERVER STATE del inicio de sesión WanidaBenshoof de SQL Server.

USE master;
REVOKE VIEW SERVER STATE FROM WanidaBenshoof;
GO

B. Revocar la opción WITH GRANT

En el siguiente ejemplo se revoca el derecho a conceder CONNECT SQL desde el inicio de sesión JanethEsteves de SQL Server.

USE master;
REVOKE GRANT OPTION FOR CONNECT SQL FROM JanethEsteves;
GO

El inicio de sesión todavía dispone del permiso CONNECT SQL, pero ya no puede conceder el permiso a otras entidades de seguridad.

Vea también

Referencia

GRANT (Transact-SQL)
DENY (Transact-SQL)
DENY (permisos de servidor de Transact-SQL)
REVOKE (permisos de servidor de Transact-SQL)

Otros recursos

Jerarquía de permisos

Ayuda e información

Obtener ayuda sobre SQL Server 2005