Invoke-Command do PowerShell elevado com credenciais não elevadas

Invoke-Command do PowerShell elevado com credenciais não elevadas

Estou tentando executar um script que requer elevação para definir determinados valores de registro para permitir o CredSSP em computadores locais e remotos e, durante esse script, preciso acessar um compartilhamento de rede como uma conta não elevada.

Meu pensamento inicial foi tentar

Invoke-Command -ScriptBlock { [IO.Directory]::GetFiles($networkShare) } -Credential $credonde $cred são credenciais de usuários não elevados. Infelizmente, isso não funciona devido aesse bug.

A solução alternativa fornecida é usar, -ComputerName localhostmas requer que minha máquina local seja configurada para PS Remote, o que não quero fazer.

A melhor solução alternativa que encontrei é usar

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

Isso funciona, mas é tão feio... alguém pode me ajudar a encontrar uma solução melhor?

informação relacionada