.cmd no agendador de tarefas do Windows Server 2008 com privilégios mais altos

1

É possível executar o script CMD no agendador de tarefas como um usuário específico sem a opção "Executar com privilégios mais altos"?

Teste simples:

  1. Crie D: \ Admin \ Scripts \ TestScripts \ testscript.cmd
  2. O script é muito simples: echo success > D:\Admin\Scripts\TestScripts\out.txt
  3. Conceda permissões completas ao usuário mydoman \ admin (membro do grupo Admins. do Domínio incluído no grupo Administradores local quando o servidor for membro do domínio) para D: \ Admin \ Scripts \ TestScripts e todos os subdiretórios e arquivos
  4. Criar tarefa com ação:
    • comando: D:\Admin\Scripts\TestScripts\testscript.cmd
    • inicie em: D:\Admin\Scripts\TestScripts
  5. Alterar usuário para mydoman \ admin
  6. Selecione "Executar se o usuário está conectado de não"
  7. NÃO selecione "Executar com privilégios mais altos"
  8. OK, digite a senha, pronto

Inicie a tarefa manualmente e termine com o código 0x1.

Se eu marcar a opção "Executar com privilégios mais altos", ele será executado. O arquivo out.txt é criado.

O mesmo efeito é quando a tarefa é criada com parâmetros:

  • comando: cmd.exe
  • args: /c D:\Admin\Scripts\TestScripts\testscript.cmd
  • inicie em: D:\Admin\Scripts\TestScripts

As perguntas são:

  1. É obrigatório verificar "Executar com privilégios mais altos"?
  2. O script CMD pode ser executado sem os privilégios mais altos?
  3. O MS tem algum artigo com explicações claras sobre como e por que executar arquivos CMD no Agendador de Tarefas?
por Vladimir Yumashev 07.09.2013 / 14:02

2 respostas

1

Este é o UAC dando o pontapé inicial. Para encurtar a história, você precisa fornecer acesso de gravação ao diretório de destino para o usuário determinado, SEM depender da associação do usuário ao grupo Administradores.

por exemplo: se as ACLs do diretório atual forem:

Administrators:(OI)(CI)(F)
SYSTEM:(OI)(CI)(F)
Authenticated Users:(OI)(CI)(RX)

... você precisa adicionar uma entrada ACL direta, por exemplo: nome de usuário :( OI) (CI) (M) ou uma entrada ACL para um grupo que o usuário é um membro de.

O motivo é que o UAC está impedindo que a associação do grupo Administradores tenha algum efeito, sem elevação anterior. Isso é por design.

Espero que isso faça sentido.

    
por 07.09.2013 / 22:27
0
  1. Não
  2. Sim

Contanto que o usuário (admin), que executa as tarefas, possa executar a mesma operação em um prompt de comando normal não elevado, ele também deve funcionar no agendador de tarefas.

O mais provável é que seu usuário administrativo precise de elevação para gravar um arquivo nesse diretório. Então, o mesmo acontece com a tarefa.

"Executar com privilégios mais altos" apenas informa ao agendador de tarefas para elevar o usuário antes de executar o comando.

Tente escrever um arquivo em um diretório onde 'usuários' tenham permissões de gravação, ele funcionará sem 'privilégios mais altos'

    
por 07.09.2013 / 19:00