Запускать скрипт Powershell от имени конкретного пользователя в PHP

1

Я создаю VBS в php, который сохраняется на удаленном сервере в сети, я создаю скрипт powershell для его запуска и выполнения с PHP.

$ITIMHOS = "ABD-DEF-123";    
//create the ps1
    $fs = fopen("\\\\spc-nsa-001\\nscap\\RunVBS.ps1","a"); //create batch file
    fwrite($fs,"Start-Process cmd.exe /c'\\\\spc-nsa-001\\nscap\\JP-Computer-import-".$ITIMHOS.".vbs'"); //write batch file contents
    fclose($fs);

VBS должен быть запущен на этом удаленном сервере, поэтому я делаю это таким образом, и он должен запускаться конкретным пользователем и с тем, с чем у меня возникают проблемы. В настоящее время я использую это:

 $psRun = '\\\\spc-nsa-001\\c$\\windows\\syswow64\\WindowsPowerShell\\v1.0\\powershell.exe'; //64bit server, 32bit web server
 $ps1File = '\\\\spc-nsa-001\\nscap\\runVBS.ps1';
exec($psRun.' -command '.$ps1File);

Может ли кто-нибудь посоветовать/помочь с тем, как я могу запустить его с другим пользователем (DOMAIN\user.name, P4 $$ word)

Теги:
powershell

1 ответ

1

Вы можете использовать Invoke-command или Enter-PSSession. Вот пример с Invoke-command

$computername = "remote computer"
$cred = Get-Credential
Invoke-Command -ComputerName $computername -Credential $cred -ScriptBlock {

    #command that you will run on remote system
}

Обратите внимание, что для использования этого командлета необходимо настроить WinRM. Дополнительные сведения см. Здесь - https://technet.microsoft.com/en-us/library/hh849694.aspx

Ещё вопросы

Сообщество Overcoder
Наверх
Меню