No voy a entrar en todos los detalles de por qué necesito esto, pero los usuarios deben ser capaces de lanzar PowerShell como una cuenta de servicio y cuando PowerShell carga necesita ejecutar un script. Ya puedo lanzar PowerShell con las credenciales almacenadas (almacenadas como una cadena segura), pero por mi vida no puedo conseguir que el script (ubicado en $args) se ejecute. He intentado una variedad de cosas, y abajo es donde estoy actualmente. Cualquier ayuda sería muy 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")
Puede abrir una nueva ventana de powershell bajo una credencial de usuario especificada de esta manera:
start powershell -credential ""
Esto me ha funcionado.
$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
Actualizado: se ha cambiado el uso de comillas simples para evitar los problemas de caracteres especiales señalados por Paddy.