locked
Job não utiliza usuário do Agent para executar RRS feed

  • Pergunta

  • Pessoal,

    Tenho uma situação atípica. Tenho um job SQL (2005 Standard 64bits) que executa 3 pacotes do SSIS. Estes pacotes fazem deploy em um servidor web (IIS) através do sharepoint.
    Todos os serviços como o engine, integration, agent, etc... estão configurados com o uso de um usuário de dominio.

    Bom, qual o problema:
    - Ao executar o job recebo a seguinte mensagem: System.Net.WebException: The request failed with HTTP status 401: Unauthorized.

    Verificamos no jog do IIS que o usuário que estava "batendo" era o MEU ! particular, como se eu estivesse executando o pacote. Mas o pior de tudo é que eu realizo a execução do job logado no servidor com o usuário dos serviços do SQL e não o meu.

    A impressao que tenho é que de alguma forma meu usuário ficou "resgistrado" em algum lugar.

    Alguem teria uma luz, uma dica, qq coisa ?

    abraço  e obrigado !
    Felipe Souza Rasche
    quarta-feira, 1 de abril de 2009 10:58

Respostas

  • Felipe, abra o Management Studio, vá em SQL Server Agent > Jobs > seu Job > nas propriedades > steps (passos) > clique duas vezes no seu step > vai aparecer o nome do passo, em baixo o tipo (que deve ser SQL  Server Integration Services  Package) abaixo existe um campo chamado "Run as" com uma lista, o que aparece selecionado? Se a resposta é SQL Agent Servicee Account, faça o seguinte:

    Crie uma credential em: Servidor > Security > Credentials (coloque um nome, o usuário de rede com a permissão na rede e senha de rede dele no campo senha)

    Crie um proxy em: Servidor > SQL Server Agent > Proxies > SSIS Package Execution (coloque um nome, selecione na caixa logo abaixo sua credencial recém criada"em browse", e selecione nas caixas a opção "SQL Services Integration Services Package")

    Volte no step do seu job e seu proxy aparecerá na lista, selecione ele e rode seu job de novo.

    O step preecisa de proxy para rodar em outra conta.
    domingo, 19 de julho de 2009 21:36

Todas as Respostas

  • Felipe, abra o Management Studio, vá em SQL Server Agent > Jobs > seu Job > nas propriedades > steps (passos) > clique duas vezes no seu step > vai aparecer o nome do passo, em baixo o tipo (que deve ser SQL  Server Integration Services  Package) abaixo existe um campo chamado "Run as" com uma lista, o que aparece selecionado? Se a resposta é SQL Agent Servicee Account, faça o seguinte:

    Crie uma credential em: Servidor > Security > Credentials (coloque um nome, o usuário de rede com a permissão na rede e senha de rede dele no campo senha)

    Crie um proxy em: Servidor > SQL Server Agent > Proxies > SSIS Package Execution (coloque um nome, selecione na caixa logo abaixo sua credencial recém criada"em browse", e selecione nas caixas a opção "SQL Services Integration Services Package")

    Volte no step do seu job e seu proxy aparecerá na lista, selecione ele e rode seu job de novo.

    O step preecisa de proxy para rodar em outra conta.
    domingo, 19 de julho de 2009 21:36
  • Boa Noite,

    Verifique quem é o Owner do Job. Se for o seu usuário mude-o.

    [ ]s,
     
    Gustavo Maia Aguiar
    http://gustavomaiaaguiar.spaces.live.com

    Mitos do SQL Server – A ordem das tabelas influencia no desempenho de uma instrução SELECT ?
    http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!643.entry 


    Classifique as respostas. O seu feedback é imprescindível
    segunda-feira, 20 de julho de 2009 04:44
  • É verdade, o owner do job também ajuda na hora da ladeira, lembro que uma vez tive esse problema. Check os dois!
    segunda-feira, 20 de julho de 2009 10:25
  • Lênin,

    Na verdade o owner é o responsável pelo controle da execução do Job.


    Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA
    segunda-feira, 20 de julho de 2009 12:43
    Moderador