這與我提出的問題非常接近,但看起來他找到了另一種適合需求的方法,因此它已被標記為已回答:
我有一個在伺服器上運行的 Powershell 腳本A
,我想在伺服器上啟動另一個 Powershell 腳本B
。
如果我在本地運行它,伺服器上的腳本B
將運行良好,但必須像通過選項一樣啟動它Run as Administrator
。我找不到B
從伺服器啟動伺服器上的腳本A
而不會出現權限問題的方法。
到目前為止,我已經嘗試過:
PScreds
使用具有本機管理員帳戶的物件呼叫命令- 啟動進程拋出一個
PSSession
使用將-Verb runas
伺服器B
腳本修改為「自提升」的標誌,但它仍然失敗A
- 建立批次文件包裝器
Start-process
有其他我沒想到的方法可以嘗試嗎?目的(如果有人有更好的全面方法)是B
從 伺服器啟動伺服器上的 Windows 更新A
。我希望能夠按需執行此操作,而不是有一個Scheduled Task
我最終會忘記的並且在我不希望時觸發的情況。
答案1
使用 psexec.exe 是選項嗎?如果是這樣,您可以將其與 -h 參數一起使用。
如果目標系統是 Vista 或更高版本,則使用帳戶的提升令牌(如果可用)執行進程。
答案2
我很想呼叫 SCHTASKS.EXE,並使用它的/RL 最高選項。我很欣賞這走出了 Windows Server 2008/PowerShell「遠端處理」領域,但它至少確實有效。