Crear un proxy del Agente SQL Server

En este tema se describe cómo crea un proxy del Agente SQL Server en SQL Server 2012 mediante SQL Server Management Studio o Transact-SQL.

Una cuenta de proxy del Agente SQL Server define un contexto de seguridad en el que es posible ejecutar un paso de trabajo. Cada proxy corresponde a una credencial de seguridad. Para establecer los permisos para un paso de trabajo concreto, cree un proxy que disponga de los permisos necesarios para un subsistema del Agente SQL Server y, a continuación, asigne ese proxy al paso de trabajo.

En este tema

  • Antes de empezar:

    Limitaciones y restricciones

    Seguridad

  • Para crear un proxy del Agente SQL Server, utilizando:

    SQL Server Management Studio

    Transact-SQL

Antes de empezar

Limitaciones y restricciones

  • Debe crear una credencial antes de crear un proxy si todavía no hay uno disponible.

  • Las cuentas de proxy del Agente SQL Server utilizan credenciales para almacenar información acerca de las cuentas de usuario de Windows. El usuario especificado en las credenciales debe tener el permiso "Iniciar sesión como proceso por lotes" en el equipo en que se ejecuta SQL Server.

  • El Agente SQL Server comprueba el acceso al subsistema de un proxy y da acceso al proxy cada vez que se ejecuta el paso de trabajo. Si el proxy ya no tiene acceso al subsistema, el paso de trabajo da error. De lo contrario, el Agente SQL Server suplanta al usuario especificado en el proxy y ejecuta el paso de trabajo.

  • La creación de un proxy no cambia los permisos del usuario especificado en las credenciales del proxy. Por ejemplo, puede crear un proxy para un usuario que no tiene permisos para conectarse a una instancia de SQL Server. En este caso, los pasos de trabajo que usan el proxy no pueden conectarse a SQL Server.

  • Si el inicio de sesión del usuario tiene acceso al proxy o si el usuario pertenece a un rol con acceso al proxy, puede usarlo en un paso de trabajo.

Seguridad

Permisos

  • Solo los miembros del rol fijo de servidor sysadmin disponen del permiso necesario para crear, modificar o eliminar cuentas de proxy. Los usuarios que no son miembros del rol fijo de servidor sysadmin deben agregarse a uno de los siguientes roles fijos de base de datos del Agente de SQL Server en la base de datos msdb para usar los servidores proxy: SQLAgentUserRole, SQLAgentReaderRole o SQLAgentOperatorRole.

  • Requiere el permiso ALTER ANY CREDENTIAL si crea una credencial además del proxy.

Icono de flecha usado con el vínculo Volver al principio[Top]

Usar SQL Server Management Studio

Para crear un proxy del Agente SQL Server

  1. En el Explorador de objetos, haga clic en el signo más para expandir el servidor en el que desea crear un proxy del Agente SQL Server.

  2. Haga clic en el signo más para expandir el Agente SQL Server.

  3. Haga clic con el botón secundario en la carpeta Servidores proxy y seleccione Nuevo proxy.

  4. En del cuadro de diálogo Nueva cuenta de proxy, en la página General, especifique el nombre de la cuenta de proxy en el cuadro Nombre del proxy.

  5. En el cuadro Nombre de credencial, escriba el nombre de la credencial de seguridad que la cuenta de proxy utilizará.

  6. En el cuadro de Descripción, escriba una descripción de la cuenta de proxy

  7. En Activar para los subsistemas siguientes, seleccione el subsistema o los subsistemas apropiados para este proxy.

  8. En la página Entidades de seguridad, agregue o quite inicios de sesión o roles para conceder o quitar el acceso a la cuenta de proxy.

  9. Cuando termine, haga clic en Aceptar.

Icono de flecha usado con el vínculo Volver al principio[Top]

Usar Transact-SQL

Para crear un proxy del Agente SQL Server

  1. En el Explorador de objetos, conéctese a una instancia del Motor de base de datos.

  2. En la barra Estándar, haga clic en Nueva consulta.

  3. Copie y pegue el siguiente ejemplo en la ventana de consulta y haga clic en Ejecutar.

    -- creates credential CatalogApplicationCredential
    USE msdb ;
    GO
    CREATE CREDENTIAL CatalogApplicationCredential WITH IDENTITY = 'REDMOND/TestUser', 
        SECRET = 'G3$1o)lkJ8HNd!';
    GO
    -- creates proxy "Catalog application proxy" and assigns the credential 'CatalogApplicationCredential' to it.
    EXEC dbo.sp_add_proxy
        @proxy_name = 'Catalog application proxy',
        @enabled = 1,
        @description = 'Maintenance tasks on catalog application.',
        @credential_name = 'CatalogApplicationCredential' ;
    GO
    -- grants the proxy "Catalog application proxy" access to the ActiveX Scripting subsystem.
    EXEC dbo.sp_grant_proxy_to_subsystem
        @proxy_name = N'Catalog application proxy',
        @subsystem_id = 2 ;
    GO
    

Para obtener más información, vea:

Icono de flecha usado con el vínculo Volver al principio[Top]