Inquiridor
Script sem pedir senha no prompt

Pergunta
-
Pessoal,
Preciso de ajuda de vocês. Tenho que atualizar um arquivo em 500 computadores do parque. Criei um script para atualizar, porem ele precisa de direito de administrador rodar os comandos que estão dentro do bat.
Criei da seguinte forma:
Option explicit
Dim oShell
set oShell= Wscript.CreateObject("WScript.Shell")
oShell.Run "runas /noprofile /user:meudominio.local\helpdesk""\\192.16.1.18\public\atutasy.bat"
WScript.Sleep 100
oShell.Sendkeys "banana123~"
Wscript.QuitPorem , ele solicita que a senha seja digitada.
Sei que enviar senha não é seguro, só por questão de 2 ou 3 dias para atualizar as maquinas, depois vou excluir o script. Até tentei fazer por GPO, mas tem muitas maquinas que não estão aplicando corretamente a GPO, por isso não quero correr o risco, e atraves do script de inicialização vejo como a melhor forma.
O comando oShell.Sendkeys não envia a senha ? Por que ele está pedindo para digitar ?
Todas as Respostas
-
-
-
Voce poderia usar o psexec primeiramente para fazer a copia do arquivo e posteriormente para executar o arquivo no destino que foi copiado o arquivo.
Para copiar:
psexec \\server -u adminuser -p adminpassword -w D:\Apps\arquivo.bat -c D:\Apps\arquivo.bat
Para executar:
psexec \\server -u username -p password -i drive:\folder\program_copy.bat -
Voce poderia usar o psexec primeiramente para fazer a copia do arquivo e posteriormente para executar o arquivo no destino que foi copiado o arquivo.
Para copiar:
psexec \\server -u adminuser -p adminpassword -w D:\Apps\arquivo.bat -c D:\Apps\arquivo.bat
Para executar:
psexec \\server -u username -p password -i drive:\folder\program_copy.batOBS: voce pode adicionar tudo isso em um FOR, por exemplo, cria um .txt com os nomes dos computadores um abaixo do outro e executa...
for /f %i in (Computadores.txt) do psexec \\%i -u ******* -p ****** -w D:\Apps\arquivo.bat -c D:\Apps\arquivo.bat
for /f %i in (Computadores.txt) do psexec \\%i -u ******* -p ****** -i D:\Apps\arquivo.bat
- Sugerido como Resposta Gabriel S Almeida quarta-feira, 1 de novembro de 2017 13:15
-
Gabriel, na realidade acho que consigo fazer isso em um passo só.
Pois preciso copiar o arquivo TNSNAMES.ORA para a pasta C:\Oracle\product\12.1.0\client_1\network\admin , sem a necessidade de executar.
Consigo fazer com o primeiro for que você deu no exemplo ?
for /f %i in (Computadores.txt) do psexec \\%i -u dominio\administrator -p ****** -w C:\teste\TNSNAMES.ORA -c C:\Oracle\product\12.1.0\client_1\network\admin\TNSNAMES.ORA
Seria isso ?
- Sugerido como Resposta Gabriel S Almeida quarta-feira, 1 de novembro de 2017 13:15
- Não Sugerido como Resposta Gabriel S Almeida quarta-feira, 1 de novembro de 2017 13:15
-
-
Olá Fabiomb77,
Voce poderia nos informar se o procedimento acima resolveu o seu problema?
A disposição,
Marcos Roberto de Lima
MCT-MCTS-MCITP-MCP
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.