GRANT (permisos de servidor de Transact-SQL)
Concede permisos en un servidor.
Sintaxis
GRANT permission [ ,...n ]
TO <grantee_principal> [ ,...n ] [ WITH GRANT OPTION ]
[ 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 <grantee_principal>
Especifica la entidad de seguridad para la que se concede 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 conceder el permiso.WITH GRANT OPTION
Indica que la entidad de seguridad también podrá conceder el permiso especificado a otras entidades de seguridad.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.
Comentarios
Los permisos del ámbito del servidor solamente pueden concederse si la base de datos actual es maestra.
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 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 concederse para un servidor.
Permiso de servidor |
Implícito en 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 ANY SERVER AUDIT |
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
El otorgante de permisos (o la entidad de seguridad especificada en la opción AS) debe tener asignado el mismo permiso con GRANT OPTION o un permiso superior que implique el permiso que se va a otorgar. Los miembros del rol fijo de servidor sysadmin pueden conceder cualquier permiso.
Ejemplos
A. Conceder un permiso a un inicio de sesión
En el siguiente ejemplo se concede el permiso CONTROL SERVER al inicio de sesión TerryEminhizer de SQL Server.
USE master;
GRANT CONTROL SERVER TO TerryEminhizer;
GO
B. Conceder un permiso que dispone del permiso GRANT
En el siguiente ejemplo se concede ALTER ANY EVENT NOTIFICATION al inicio de sesión JanethEsteves de SQL Server con el derecho a conceder este permiso a otro inicio de sesión.
USE master;
GRANT ALTER ANY EVENT NOTIFICATION TO JanethEsteves WITH GRANT OPTION;
GO
Vea también