Implementar la seguridad del Agente SQL Server

El Agente SQL Server permite al administrador de la base de datos ejecutar cada paso de trabajo en un contexto seguro que sólo tiene los permisos necesarios para realizar ese paso de trabajo, que está determinado por un servidor proxy del Agente SQL Server. Para establecer los permisos para un paso de trabajo concreto, cree un proxy que disponga de los permisos necesarios y, a continuación, asigne ese proxy al paso de trabajo. Se puede especificar un servidor proxy en más de un paso de trabajo. Para los pasos de trabajo que necesitan los mismos permisos se utiliza el mismo proxy.

Nota

Después de actualizar desde SQL Server 2000, todas las cuentas de proxy de usuario que ya existían antes de la actualización se cambian a la cuenta temporal de proxy global UpgradedProxyAccount.UpgradedProxyAccount sólo tiene acceso a los subsistemas usados de forma explícita; no tiene acceso a todos los subsistemas después de la actualización.

En las siguientes secciones se explica la función de base de datos que debe conceder a los usuarios para que puedan crear o ejecutar trabajos mediante el Agente SQL Server.

Conceder acceso al Agente SQL Server

Para utilizar el Agente SQL Server, los usuarios deben ser miembros de una o más de las siguientes funciones fijas de base de datos:

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

Estas funciones se almacenan en la base de datos msdb. De manera predeterminada, ningún usuario es miembro de estas funciones de base de datos. La pertenencia a estas funciones se debe conceder explícitamente. Los usuarios que sean miembros de la función fija de servidor sysadmin tienen acceso total al Agente SQL Server, y no necesitan ser miembros de estas funciones fijas de base de datos para utilizar el Agente SQL Server. Si un usuario no es miembro de una de estas funciones de base de datos ni de la función sysadmin, el nodo del Agente SQL Server no estará disponible para ellos cuando se conecten con SQL Server mediante SQL Server Management Studio.

Los miembros de estas funciones de base de datos pueden ver y ejecutar trabajos que les pertenecen, así como crear pasos de trabajos que se ejecuten como una cuenta de proxy existente. Para obtener más información sobre los permisos específicos que están asociados con cada una de estas funciones, vea Funciones fijas de base de datos del Agente SQL Server.

Los miembros de la función fija de servidor sysadmin tienen permiso para crear, modificar o eliminar cuentas de proxy. Los miembros de la función sysadmin tienen permiso para crear pasos de trabajo que no especifiquen un proxy, sino que se ejecuten como la cuenta de servicio del Agente SQL Server, que es la cuenta que se utiliza para iniciar el Agente SQL Server.

Instrucciones

Siga estas instrucciones para mejorar la seguridad de la implementación del Agente SQL Server:

  • Crear cuentas de usuario dedicadas especialmente para servidores proxy y utilizarlas únicamente para ejecutar pasos de trabajos.

  • Conceder sólo los permisos necesarios a las cuentas de usuarios de proxy. Conceder únicamente los permisos realmente necesarios para ejecutar los pasos de trabajo que están asignados a una cuenta de proxy determinada.

  • No ejecutar el servicio del Agente SQL Server en una cuenta de Microsoft Windows que sea miembro del grupo Administradores de Windows.