ローカル コンピューターとリモート コンピューターで 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
それは機能しますが、とても醜いです...誰かもっと良い解決策を見つけるのを手伝ってくれませんか?