Roles de Agente SQL Server
RDS para SQL Server admite los siguientes roles de Agente SQL Server con diferentes niveles de permisos para administrar los trabajos:
SQLAgentUserRole
Permisos
Crear y administrar trabajos, programaciones y operadores propios
Ver las propiedades de los trabajos y las programaciones propios
No puede ver ni administrar trabajos creados por otros usuarios
Este rol es adecuado para usuarios que necesitan crear y administrar trabajos propios, pero no requieren acceso a los trabajos creados por otros usuarios.
-
SQLAgentReaderRole
Permisos
Todos los permisos de SQLAgentUserRole
Ver una lista de todos los trabajos y programaciones, incluidos los creados por otros
Ver las propiedades de todos los trabajos
Consultar el historial de trabajos
Este rol es adecuado para usuarios que necesitan supervisar el estado de todos los trabajos, pero no necesitan administrarlos.
-
SQLAgentOperatorRole
Permisos
Todos los permisos de SQLAgentUserRole y SQLAgentReaderRole
Ejecutar, detener o iniciar trabajos
Administrar el historial de trabajos
Habilitar o deshabilitar trabajos y programaciones
Ver operadores y proxies
Este rol proporciona los permisos más completos y es adecuado para usuarios que necesitan tener control total sobre todos los trabajos.
Utilice el siguiente comando para asignar los roles al inicio de sesión de SQL Server:
USE msdb; EXEC sp_addrolemember 'SQLAgentOperatorRole', 'username';
Administración de SQLAgentOperatorRole en RDS para SQL Server
Para ver los trabajos actuales, debe agregar SQLAgentOperatorRole al inicio de sesión de SQL Server y eliminarlo antes de desconectarse de la base de datos.
Para visualizar el árbol de Agente SQL Server en SQL Server Management Studio, siga estas instrucciones:
Visualización de Agente SQL Server en SQL Server Management Studio (SSMS)
-
Con las credenciales maestras de RDS, inicie sesión en la instancia de RDS SQL Server y conceda al usuario deseado el rol SQLAgentUserRole.
USE msdb GO IF NOT EXISTS(SELECT name FROM sys.database_principals WHERE name = 'UserName') BEGIN CREATE USER UserName FROM LOGIN UserName END GO ALTER ROLE SQLAgentUserRole ADD MEMBER UserName GO GRANT ALTER ON ROLE::[SQLAgentOperatorRole] to UserName GOEstos comandos crean el usuario en la base de datos
msdb, en caso de que no exista. También agrega al usuario a SQLAgentUserRole, para que se pueda ver el árbol de Agente SQL Server en SSMS. Por último, concede permisos de alteración en SQLAgentOperatorRole al usuario. Esto permite al usuario agregarse o eliminarse de ese rol. -
Para agregarse al rol mencionado anteriormente, conéctese a la instancia de RDS SQL Server con el usuario que necesita ver los trabajos y ejecute el siguiente script.
use msdb go ALTER ROLE SQLAgentOperatorRole ADD MEMBER UserName GODespués de esto, haga clic con el botón derecho en la carpeta Trabajos y elija Actualizar.
-
Al realizar esta acción, la pestaña Trabajos muestra el botón + (más). Haga clic para expandir la lista de trabajos de Agente SQL Server.
-
importante
Antes de desconectarse de la instancia de RDS SQL Server, debe eliminarse de SQLAgentOperatorRole.
Para eliminar el inicio de sesión de SQLAgentOperatorRole, ejecute la siguiente consulta antes de desconectarse o cerrar Management Studio:
USE msdb GO ALTER ROLE SQLAgentOperatorRole DROP MEMBER UserName GO
Para obtener más información, consulte Leveraging SQLAgentOperatorRole in RDS SQL Server