Partilhar via


Criar um proxy do SQL Server Agent

Este tópico descreve como criar um proxy do SQL Server Agent no SQL Server 2014 usando o SQL Server Management Studio ou o Transact-SQL.

Uma conta proxy do SQL Server Agent define um contexto de segurança no qual uma etapa de trabalho pode ser executada. Cada proxy corresponde a uma credencial de segurança. Para definir permissões para uma etapa de trabalho específica, crie um proxy que tenha as permissões necessárias para um subsistema do SQL Server Agent e, em seguida, atribua esse proxy à etapa de trabalho.

Nesse Tópico

Antes de começar

Limitações e restrições

  • Você deve criar uma credencial antes de criar um proxy se ainda não estiver disponível.

  • Os proxies do SQL Server Agent usam credenciais para armazenar informações sobre contas de usuário do Windows. O usuário especificado na credencial precisa ter a permissão “Fazer logon como um trabalho em lote” no computador no qual o SQL Server está em execução.

  • O SQL Server Agent verifica o acesso ao subsistema para um proxy e concede acesso ao proxy sempre que a etapa de trabalho é executada. Se o proxy não tiver mais acesso ao subsistema, a etapa de trabalho falhará. Caso contrário, o SQL Server Agent representará o usuário especificado no proxy e executará a etapa de trabalho.

  • A criação de um proxy não altera as permissões para o usuário especificado na credencial do proxy. Por exemplo, você pode criar um proxy para um usuário que não tem permissão para se conectar a uma instância do SQL Server. Nesse caso, as etapas de trabalho que usam esse proxy não podem se conectar ao SQL Server.

  • Se o logon do usuário tiver acesso ao proxy ou o usuário pertencer a qualquer função com acesso ao proxy, o usuário poderá usar o proxy em uma etapa de trabalho.

Segurança

Permissões

  • Somente os membros do sysadmin função de servidor fixa têm permissão para criar, modificar ou excluir contas proxy. Os usuários que não são membros da função de servidor fixa sysadmin devem ser adicionados a uma das seguintes funções de banco de dados fixas do SQL Server Agent no banco de dados msdb para usar proxies: SQLAgentUserRole, SQLAgentReaderRole ou SQLAgentOperatorRole.

  • Requer permissão ALTER ANY CREDENTIAL se for criar uma credencial além de usar o proxy.

Como usar o SQL Server Management Studio.

Para criar um proxy do SQL Server Agent

  1. No Pesquisador de Objetos, clique no sinal de adição para expandir o servidor no qual você deseja criar um proxy no SQL Server Agent.

  2. Clique no sinal de mais para expandir o SQL Server Agent .

  3. Clique com o botão direito do mouse na pasta Proxies e selecione Novo Proxy.

  4. Na caixa de diálogo Nova Conta de Proxy, na página Geral, insira o nome da conta proxy na caixa nome do Proxy.

  5. Na caixa Nome da Credencial, insira o nome da credencial de segurança que a conta proxy usará.

  6. Na caixa Descrição, insira uma descrição para a conta proxy

  7. Selecione, em Ativo para os seguintes subsistemas, o subsistema ou os subsistemas apropriados para este proxy.

  8. Na página Principais, adicione ou remova logins ou funções para conceder ou remover acesso à conta proxy.

  9. Quando terminar, clique em OK.

Usando Transact-SQL

Para criar um proxy do SQL Server Agent

  1. No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.

  2. Na barra Padrão, clique em Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e clique em Executar.

    -- 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 obter mais informações, consulte: