Permisos de los roles fijos de servidor (motor de base de datos)

SQL Server les asigna permisos específicos a los roles fijos de servidor. Los permisos de estos roles no se pueden cambiar. Los roles fijos de servidor se proporcionan con fines de comodidad y de compatibilidad con versiones anteriores. Siempre que sea posible asigne permisos más específicos.

En la siguiente tabla se describen los permisos que se conceden a los roles fijos de servidor.

Rol fijo de servidor

Permiso en el nivel de servidor

bulkadmin

Se le concede: ADMINISTER BULK OPERATIONS

dbcreator

Se le concede: CREATE ANY DATABASE

diskadmin

Se le concede: ALTER RESOURCES

processadmin

Se le conceden: ALTER ANY CONNECTION, ALTER SERVER STATE

securityadmin

Se le concede: ALTER ANY LOGIN

Nota de seguridadNota de seguridad
La capacidad de conceder acceso a Motor de base de datos y configurar los permisos de usuario permite que el administrador de seguridad asigne la mayoría de los permisos de servidor. El rol securityadmin se debe tratar como equivalente del rol sysadmin.

serveradmin

Se le conceden: ALTER ANY ENDPOINT, ALTER RESOURCES, ALTER SERVER STATE, ALTER SETTINGS, SHUTDOWN, VIEW SERVER STATE

setupadmin

Se le concede: ALTER ANY LINKED SERVER

sysadmin

Se le concede con la opción GRANT: CONTROL SERVER

Comentarios

El rol de servidor public no es un rol fijo de servidor, ya que los permisos se pueden cambiar. Al rol de servidor public se le concede el permiso VIEW ANY DATABASE y el permiso CONNECT en los extremos predeterminados (TSQL Local Machine, TSQL Named Pipes, TSQL Default TCP, TSQL Default VIA).

Los miembros del rol fijo de servidor securityadmin pueden conceder permisos de nivel de servidor y de nivel de base de datos.

Los roles fijos de servidor no son equivalentes a su permiso de nivel de servidor. Por ejemplo, el rol fijo de servidor sysadmin tiene el permiso CONTROL SERVER. Pero la concesión del permiso CONTROL SERVER no convierte ningún inicio de sesión en miembro del rol fijo de servidor sysadmin. La función IS_SRVROLEMEMBER (Transact-SQL) informará correctamente de que el inicio de sesión no es miembro del rol fijo de servidor sysadmin. Los miembros del rol fijo de servidor sysadmin se identifican como el usuario dbo en todas las bases de datos, pero los inicios de sesión con el permiso CONTROL SERVER, no.