none
Excecutar Script com o comando RUNAS RRS feed

  • Pergunta

  • Bom dia Pessoal,

    Antes de abrir esse tópico, pesquisei sobre o assunto e achei diversos posts, mas nenhum que resolve-se o meu problema, pois meu caso é o seguinte:

    Tenho um Script VBS que cria portas locais de TCP/IP e faz o mapeamento das impressoras, o problema é que pelo fato de uma instalaçao de impressora LOCAL, é considerado como alteração no sistema,´que é a permissão que usuários padrões não tem.

    Então quando faço logon com uma conta de Administrador Local Interno, o Script funciona perfeitamente, mas quando usuários do domínio que tem permissões padrões, não conseguem executar o Script, é apresentada uma mensagem de "Acesso Negado".

    Andei pesquisando nos foruns, e meu problema é parecido com esse tópico aqui, só é diferente o ambiente em que quero implantar meu Script. http://social.technet.microsoft.com/Forums/pt-BR/scriptadminpt/thread/f336dbf4-62bf-4495-a8fd-deac39a04f18

    Neste tópico acima, ele quer colocar o script VBS no perfil de domínio do usuário, e já eu quero colocar esse Script VBS no caminho "C:\Documents and Settings\All Users\Menu Iniciar\Inicializar", para forçar todos os usuários que logarem nesta máquina a ter uma impressora padrão configurada pelo Script.

    Eu já coloquei o Script no caminho informado acima, se eu fizer logon com contas que tem privilégios administrativos, o Script é executado sem erros, já quando um usuário do domínio faz logo, recebe a mensagem de Acesso Negado. Eu quero deixar o script na máquina, e não no perfil do usuário. E meu problema é que todos os tópicos orientam a como usar o comando RUNAS com contas de domínio.

    Exemplo: Option explicit

    Dim oShell

    set oShell= Wscript.CreateObject("WScript.Shell")

    oShell.Run "runas /user:administrator@contoso.local ""C:\script.vbs"""

    WScript.Sleep 100

    'deixe o ~"
    oShell.Sendkeys "senha~"

    Wscript.Quit

    Prestem atenção neste detalhe "runas /user:administrator@contoso.local". Após o @ é pra digitar o domínio onde o perfil esta, mas a conta que quero utilizar o RUNAS é a conta de administrador local interno de cada´máquina, e quero que a senha fique salva no Script, vou codificar o Script depois.

    Meu Script é esse aqui...

    'Instalando porta da impressora

    Set objWMIService = GetObject("winmgmts:")
    Set objNewPort = objWMIService.Get _
    ("Win32_TCPIPPrinterPort").SpawnInstance_
    objNewPort.Name = "IP_10.11.0.32"
    objNewPort.Protocol = 1
    objNewPort.HostAddress = "10.11.0.32"
    objNewPort.PortNumber = "9100"
    objNewPort.SNMPEnabled = False
    objNewPort.Put_


    'Mapeando a impressora HP CP 1515n

    strComputer = "."
    Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

    Set objPrinter = objWMIService.Get("Win32_Printer").SpawnInstance_

    objPrinter.DriverName = "HP Color LaserJet CP1510 Series PS"
    objPrinter.PortName = "IP_10.11.0.32"
    objPrinter.DeviceID = "HPCP1515_SEC"
    objPrinter.Location = "Sala das Secretárias Executivas / COlor Laser"
    objPrinter.Network = True
    objPrinter.Put_

    'Definindo como padrao impressora
    Set colInstalledPrinters = objWMIService.ExecQuery _
    ("Select * from Win32_Printer Where Name = 'HPCP1515_SEC'")

    For Each objPrinter in colInstalledPrinters
    objPrinter.SetDefaultPrinter()
    objPrinter.Put_

    Next

    Como ficaria o meu Script, utilzando o comando RUNAS para usar a conta de Administrador Local? Para que os usuários do domínio quando logarem nessa máquina tenham essa impressra configurada como padrão obrigatoriamente pelo Script.

    Obs.: Seu que dá pra colocar no perfil do usuário esse Script, mas quero que fique no Inicializar do usuário All Users.

    Se alguém Puder, me mosta como ficaria o meu código com o que eu to querendo fazer já incluido no Script. Vamos supor que o usuário de Administrador Local Interno tenha sido renomeado seja XXXXX e a senha dele para YYYYY.

    Ficarei muito grato com quem puder me ajudar. 


    terça-feira, 14 de setembro de 2010 12:53

Respostas

Todas as Respostas