Executando o PowerShell como outro usuário, e lançando um script

Eu ganhei'não entrar em todos os detalhes do porque eu preciso disso, mas os usuários devem ser capazes de lançar o PowerShell como uma conta de serviço e quando o PowerShell carregar ele precisa executar um script. Eu já posso lançar o PowerShell com as credenciais armazenadas (armazenadas como uma string segura), mas por toda a minha vida não consigo que o script (localizado em $args) seja executado. Eu tentei uma variedade de coisas, e abaixo é onde eu estou atualmente. Qualquer ajuda seria muito apreciada.

$user = "domain\service.account" 
$pwd1 = "big long huge string of characters"
$pwd = ($pwd1 | ConvertTo-SecureString)
$Credential = New-Object System.Management.Automation.PSCredential $user, $pwd
$args = "\\domain.local\location\location\location\Script\script.ps1"
Start-Process powershell.exe -Credential $Credential -ArgumentList ("-file $args")

Você pode abrir uma nova janela de powershell sob uma credencial de usuário especificada como esta:

start powershell -credential ""

Comentários (5)

Descobri que isto funcionou para mim.

$username = 'user'
$password = 'password'

$securePassword = ConvertTo-SecureString $password -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential $username, $securePassword
Start-Process Notepad.exe -Credential $credential

Atualizado: alterado para usar citações simples para evitar problemas de caracteres especiais anotados por Paddy.

Comentários (3)

Tente adicionar a opção "RunAs" ao seu "Start-Process".

Start-Process powershell.exe -Credential $Credential -Verb RunAs -ArgumentList ("-file $args")
Comentários (3)