Я пытаюсь запустить сценарий, который требует повышения прав для установки определенных значений реестра, чтобы разрешить 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
Это работает, но это так ужасно ... Может кто-нибудь помочь мне найти лучшее решение?