runas sem pedir uma senha

3

Em um servidor Windows que está em um domínio, tenho um script que executo a partir de tarefas agendadas.

Eu quero que esse script seja executado com uma conta de usuário mydomain\peter . É simples fazer isso com tarefas agendadas, se você souber a senha de Peter. E uma vez feito, o script pára quando Peter decide (ou tem que) mudar sua senha.

No Linux, um trabalho cron pode ser executado com qualquer conta de usuário sem precisar saber a senha correspondente. E root pode executar qualquer coisa em nome de outro usuário (com su e sudo ).

Qualquer maneira de fazer isso com o Windows?

A minha necessidade é para um servidor antigo do Windows 2003, mas consigo executar de outro computador.

    
por Gregory MOUSSAT 24.09.2012 / 18:56

3 respostas

3

Este é exatamente o caso de uso para contas de serviço. Por que não configurar uma conta de serviço de usuário de domínio para essa tarefa agendada?

É provavelmente o que você deve fazer de qualquer maneira, em vez de executar tarefas agendadas ou scripts como um usuário real. Você pode desativar a expiração da senha na conta para que o trabalho não falhe sempre que o Pete tiver que alterar sua senha, para outro benefício.

    
por 25.09.2012 / 16:20
6

Isso não é suportado no Windows. Por razões de responsabilidade, você não deve personificar outros usuários, nem mesmo como administrador.

    
por 24.09.2012 / 19:22
1

OK, já que você só quer reduzir seus direitos de acesso (ao invés de realmente rodar como Peter per se) você pode ter algumas opções.

No Windows 7 (e no Windows Server 2008 R2), o agendador de tarefas oferece suporte a isso diretamente (por meio da opção "Não armazenar senha"), mas não acredito que exista um equivalente interno para o Windows Server 2003. Tarefa dessa maneira em uma máquina diferente provavelmente não ajudará porque você não tem acesso à rede.

Pode ser feito em software, mesmo no Windows 2003, através do CreateRestrictedToken Função Win32. Uma pesquisa do Google encontrou um software chamado ulimitnt que parece ser capaz de fazer o que você quer (via -RSid opção). Note que eu nunca usei este programa, então não posso garantir sua confiabilidade.

Usando essa abordagem, o script só tem acesso a arquivos que concedem acesso a ambos sistema local e a Peter. (Observe que a conta do sistema local pertence implicitamente ao grupo Administradores, portanto, se os Administradores tiverem acesso, isso será suficiente.)

    
por 26.09.2012 / 00:53