使用非提升的信用從提升的 powershell 呼叫命令

使用非提升的信用從提升的 powershell 呼叫命令

我正在嘗試運行一個需要提升的腳本,以設定某些註冊表值以允許本地和遠端電腦上的 CredSSP,並且在此腳本期間,我需要以非提升帳戶的身份存取網路共用。

我最初的想法是嘗試

Invoke-Command -ScriptBlock { [IO.Directory]::GetFiles($networkShare) } -Credential $cred其中 $cred 是未提升使用者的憑證。不幸的是,這不起作用,因為這個錯誤

給出的解決方法是使用-ComputerName localhost,但這需要我的本機設定 PS Remote,但我不想這樣做。

我發現的最好的解決方法是使用

$foo = Start-Job -Credential $cred -ScriptBlock { [IO.Directory]::GetFiles($networkShare) }
$out = Receive-Job $foo

這可行,但太難看了......任何人都可以幫我找到更好的解決方案嗎?

相關內容