CREATE SERVER ROLE (Transact-SQL)

Crea un nuevo rol de servidor definido por el usuario.

Icono de vínculo a temas 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)

EVENTDATA (Transact-SQL)

sp_addrolemember (Transact-SQL)

sys.database_role_members (Transact-SQL)

sys.database_principals (Transact-SQL)

Conceptos

Entidades de seguridad (motor de base de datos)