CREATE SERVER ROLE (Transact-SQL)
Crea un nuevo rol de servidor definido por el usuario.
Convenciones de sintaxis de Transact-SQL
Sintaxis
CREATE SERVER ROLE role_name [ AUTHORIZATION server_principal ]
Argumentos
role_name
Es el nombre del rol de servidor que se va a crear.AUTHORIZATION server_principal
Es el inicio de sesión que será propietario del nuevo rol de servidor. Si no se especifica un inicio de sesión, el rol de servidor será propiedad del inicio de sesión que ejecute CREATE SERVER ROLE.
Comentarios
Los roles de servidor son elementos protegibles en el nivel de servidor. Después de crear un rol de servidor, configure los permisos de nivel de servidor del rol utilizando GRANT, DENY y REVOKE. Para agregar o quitar inicios de sesión en un rol de servidor, utilice ALTER SERVER ROLE (Transact-SQL). Para quitar un rol de servidor, use DROP SERVER ROLE (Transact-SQL). Para obtener más información, vea sys.server_principals (Transact-SQL).
Puede ver los roles de servidor consultando las vistas de catálogo sys.server_role_members y sys.server_principals.
No se puede conceder permisos a los roles de servidor en elementos protegibles de nivel de base de datos. Para crear roles de base de datos, vea CREATE ROLE (Transact-SQL).
Permisos
Se debe disponer del permiso CREATE SERVER CONTROL o pertenecer al rol fijo de servidor sysadmin.
También se requiere el permiso IMPERSONATE en server_principal para los inicios de sesión, el permiso ALTER para los roles de servidor utilizados como server_principal o la pertenencia a un grupo de Windows utilizado como server_principal.
Esto desencadenará el evento Audit Server Principal Management con el tipo de objeto establecido en el rol de servidor y el tipo de evento que se va a agregar.
Cuando se utiliza la opción AUTHORIZATION para asignar la propiedad de roles de servidor, también se requieren los siguientes permisos:
La asignación de la propiedad de un rol de servidor a otro inicio de sesión requiere el permiso IMPERSONATE para ese inicio de sesión.
La asignación de la propiedad de un rol de servidor a otro rol de servidor requiere la pertenencia al rol de servidor receptor o el permiso ALTER para ese rol de servidor.
Ejemplos
A.Crear un rol de servidor que sea propiedad de un inicio de sesión
En el siguiente ejemplo se crea el rol de servidor buyers que es propiedad del inicio de sesión BenMiller.
USE master;
CREATE SERVER ROLE buyers AUTHORIZATION BenMiller;
GO
B.Crear un rol de servidor que sea propiedad de un rol fijo de servidor
En el siguiente ejemplo se crea el rol de servidor auditors que es propiedad del rol fijo de servidor securityadmin.
USE master;
CREATE SERVER ROLE auditors AUTHORIZATION securityadmin;
GO
Vea también
Referencia
DROP SERVER ROLE (Transact-SQL)
sp_addrolemember (Transact-SQL)
sys.database_role_members (Transact-SQL)
sys.database_principals (Transact-SQL)