Invoke-Command do powershell elevado com creds não elevados

1

Estou tentando executar um script que requer elevação para definir determinados valores do 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 $cred em que $ cred é uma credencial de usuários não elevados. Infelizmente, isso não funciona devido a este bug .

A solução dada é usar -ComputerName localhost , mas isso requer que minha máquina local seja configurada para o PS Remote, o que eu não quero fazer.

A melhor solução encontrada é 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?

    
por Kairos 12.10.2015 / 19:12

0 respostas