Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:SQL Server
Azure SQL Managed Instance
Elimina permisos a nivel GRANT de servidor y DENY permisos.
Convenciones 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
| server_role
<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
| server_role
Argumentos
permission
Especifica un permiso que se puede conceder para un servidor. Para obtener una lista de permisos, vea la sección Comentarios que se muestra posteriormente en este tema.
{ TO | FROM } <grantee_principal> especifica la entidad de seguridad a la que se revoca 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 OPCIÓN PARA
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.
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.
server_role
Especifica un rol de servidor definido por el usuario.
Observaciones
Los permisos del ámbito del servidor solamente pueden revocarse si la base de datos actual es maestra.
REVOKE elimina ambos GRANT permisos y DENY la de los permisos.
Utiliza REVOKEGRANT OPTION FOR para revocar el derecho 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 el principal tiene el permiso especificado sin la GRANT opción, el permiso será revocado.
Puede ver 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. Encontrará información sobre la pertenencia de roles 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 | Implícito en el permiso de servidor |
|---|---|
| ADMINISTRACIÓN DE OPERACIONES MASIVAS | SERVIDOR DE CONTROL |
| ALTERAR CUALQUIER AVAILABILITY GROUP Se aplica a: SQL Server (SQL Server 2012 (11.x) a través de la versión actual). |
SERVIDOR DE CONTROL |
| ALTERAR CUALQUIER CONEXIÓN | SERVIDOR DE CONTROL |
| ALTERAR CUALQUIER CREDENTIAL | SERVIDOR DE CONTROL |
| ALTERAR CUALQUIER DATABASE | SERVIDOR DE CONTROL |
| ALTERAR CUALQUIER ENDPOINT | SERVIDOR DE CONTROL |
| ALTERAR CUALQUIER EVENT NOTIFICATION | SERVIDOR DE CONTROL |
| ALTERAR CUALQUIER EVENT SESSION | SERVIDOR DE CONTROL |
| ALTERAR CUALQUIER SERVIDOR VINCULADO | SERVIDOR DE CONTROL |
| ALTERAR CUALQUIER LOGIN | SERVIDOR DE CONTROL |
| ALTERAR CUALQUIER SERVER AUDIT | SERVIDOR DE CONTROL |
| ALTERAR CUALQUIER SERVER ROLE Se aplica a: SQL Server (SQL Server 2012 (11.x) a través de la versión actual). |
SERVIDOR DE CONTROL |
| MODIFICAR RECURSOS | SERVIDOR DE CONTROL |
| ALTERAR ESTADO DEL SERVIDOR | SERVIDOR DE CONTROL |
| MODIFICAR CONFIGURACIONES | SERVIDOR DE CONTROL |
| ALTER TRACE | SERVIDOR DE CONTROL |
| AUTENTICAR SERVIDOR | SERVIDOR DE CONTROL |
| CONECTAR CUALQUIERA DATABASE Se aplica a: SQL Server (SQL Server 2014 (12.x) a través de la versión actual). |
SERVIDOR DE CONTROL |
| Conectar a SQL | SERVIDOR DE CONTROL |
| SERVIDOR DE CONTROL | SERVIDOR DE CONTROL |
| CREA CUALQUIERA DATABASE | ALTERAR CUALQUIER DATABASE |
| CREATE AVAILABILITY GROUP Se aplica a: SQL Server (SQL Server 2012 (11.x) a través de la versión actual). |
ALTERAR CUALQUIER AVAILABILITY GROUP |
| CREAR DDL EVENT NOTIFICATION | ALTERAR CUALQUIER EVENT NOTIFICATION |
| CREATE ENDPOINT | ALTERAR CUALQUIER ENDPOINT |
| CREATE SERVER ROLE Se aplica a: SQL Server (SQL Server 2012 (11.x) a través de la versión actual). |
ALTERAR CUALQUIER SERVER ROLE |
| CREAR TRACE EVENT NOTIFICATION | ALTERAR CUALQUIER EVENT NOTIFICATION |
| ACCESO EXTERNO ASSEMBLY | SERVIDOR DE CONTROL |
| SUPLANTAR A CUALQUIERA LOGIN Se aplica a: SQL Server (SQL Server 2014 (12.x) a través de la versión actual). |
SERVIDOR DE CONTROL |
| SELECCIONAR TODOS LOS USER ELEMENTOS PROTEGIBLES Se aplica a: SQL Server (SQL Server 2014 (12.x) a través de la versión actual). |
SERVIDOR DE CONTROL |
| SHUTDOWN | SERVIDOR DE CONTROL |
| INSEGURO ASSEMBLY | SERVIDOR DE CONTROL |
| VIEW CUALQUIERA DATABASE | VIEW CUALQUIER DEFINICIÓN |
| VIEW CUALQUIER DEFINICIÓN | SERVIDOR DE CONTROL |
| VIEW ESTADO DEL SERVIDOR | ALTERAR ESTADO DEL SERVIDOR |
Permisos
Debe disponer del permiso CONTROL SERVER o pertenecer al rol fijo 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 de SQL Server de WanidaBenshoof.
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 del inicio de sesión de SQL Server de JanethEsteves.
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.
Consulte también
GRANT (Transact-SQL)
DENY (Transact-SQL)
DENY Permisos de servidor (Transact-SQL)
REVOKE Permisos de servidor (Transact-SQL)
Jerarquía de permisos (motor de base de datos)
sys.fn_builtin_permissions (Transact-SQL)
sys.fn_my_permissions (Transact-SQL)
HAS_PERMS_BY_NAME (Transact-SQL)