好的,所以這一直困擾着我一段時間,現在我已經嘗試了太多東西。
我想運行一個PowerShell腳本 - 我的用戶帳戶是一個常規的域名,但它是我的電腦上的本地管理員。因此,我創建了一個PowerShell腳本,提示我輸入憑據(在其中鍵入我的域管理員帳戶的憑據)以用於調用需要此域管理員提升的另一個腳本。 這個腳本是這樣的:儘管是管理員,訪問被拒絕到本地主機 - PowerShell
Invoke-Command -FilePath "C:\Temp\script.ps1" -ComputerName localhost -Credential Get-Credential
這裏script.ps1
是需要域管理員海拔腳本。
執行在提示符下顯示腳本結果的憑證,然後以下錯誤:
[localhost] Connecting to remote server localhost failed with the following error message : Access is denied.
我試着.bat文件看起來像這樣瞎搞:
SET ThisScriptsDirectory=%~dp0
SET PowerShellScriptPath=%ThisScriptsDirectory%script.ps1 PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& {Start-Process PowerShell -ArgumentList '-NoProfile -ExecutionPolicy Bypass -File ""%PowerShellScriptPath%""' -Verb RunAs}";
藏漢,但我無法實現它 - 它不會將腳本提升到域管理員級別。
然而,最後,我需要提及的是,如果我使用域管理員標高打開PowerShell,導航到C:\ Temp \ script.ps1並通過。\ script.ps1執行它,那麼我想要使用域提升運行的腳本有效。
有什麼建議嗎?
如果您只是試圖在本地機器上執行腳本,爲什麼要使用invoke-command?您可以運行該腳本並在您的PowerShell主機中將參數傳遞給它。 –