Это максимально близко к точному вопросу, который у меня есть., но, похоже, он нашел другой способ, который соответствует потребностям, поэтому он был отмечен как решенный:
У меня есть скрипт Powershell, работающий на сервере A
, и я хочу запустить другой скрипт Powershell на сервере B
.
Скрипт на сервере B
будет работать нормально, если я запущу его локально, но его нужно запускать как по опции Run as Administrator
. Я не могу найти способ запустить скрипт на сервере B
с сервера A
, который не даст мне проблем с разрешениями.
На данный момент я попробовал:
- invoke-command с использованием
PScreds
объекта с учетной записью локального администратора - start-process бросает a,
PSSession
используя-Verb runas
флаг, изменяющий скрипт сервераB
на «Self Elevate», но он все равно терпит неудачу из-заA
- создание пакетного файла-оболочки с
Start-process
Есть ли другой способ попробовать, который я не придумал? Цель (на случай, если у кого-то есть более универсальный способ) — запустить обновления Windows на сервере B
с сервера A
. Я хочу иметь возможность делать это по требованию, а не иметь, Scheduled Task
о котором я в конечном итоге забуду и который будет срабатывать, когда я этого не хочу.
решение1
Можно ли использовать psexec.exe? Если да, то можно использовать его с параметром -h.
Если целевая система — Vista или выше, процесс запускается с использованием повышенного токена учетной записи, если он доступен.
решение2
Мне бы хотелось вызвать SCHTASKS.EXE и использовать его/RL ВЫСОКИЙвариант. Я понимаю, что это выходит за рамки области «удалённого» взаимодействия Windows Server 2008 / PowerShell, но это, по крайней мере, работает.