Exécuter en tant que (RunAs) netonly avec des identifiants enregistrés

Je peux démarrer un processus avec runas /netonly et runas /savecred mais je ne peux pas utiliser les deux options en même temps.

Existe-t-il un moyen d’exécuter un processus en tant qu’un autre utilisateur à distance sans avoir à taper le mot de passe à chaque fois ?

Dans l’autre réponse ici, Jason note à juste titre que runas /netonly ne prend pas en charge l’enregistrement des identifiants, et Microsoft a intentionnellement rendu difficile l’utilisation de runas avec un mot de passe codé en dur (depuis un script batch).

La suggestion d’utiliser le Gestionnaire d’informations d’identification Windows que Stefano a mentionnée dans son commentaire est utile lorsque vous souhaitez toujours vous connecter au service donné (par ex. myserver.mycompany.com:XXX) en utilisant les identifiants spécifiés.

Pour une solution en ligne de commande, avec un comportement similaire à runas.exe, mais sans avoir à taper le mot de passe, j’ai trouvé le module RunAs PowerShell (qui semble implémenter ce conseil) très utile :

Installez depuis PowerShell Gallery en exécutant ce qui suit dans une invite PowerShell élevée (nécessite PowerShell v5 ou Windows 10) :

Install-Module RunAs

Chiffrez le mot de passe en exécutant :

# change `domain\username` as needed:
ConvertFrom-SecureString (Get-Credential 'domain\username').Password

Cela vous demandera le login et le mot de passe et affichera un long nombre hexadécimal, que vous devrez copier.

Maintenant vous pouvez faire l’équivalent de runas /netonly en utilisant :

Import-Module RunAs

# replace xxxx below with the encrypted password from step 2 (and `domain\username` too)
# you might want to put this into your profile: https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_profiles?view=powershell-7
$mycreds = New-Object Management.Automation.PSCredential('domain\username', (ConvertTo-SecureString 'xxxx'))

runas -netonly $mycreds "c:\Program Files (x86)\Microsoft Office\Office16\EXCEL.EXE"

P.S. beaucoup de ressources en ligne suggèrent d’utiliser psexec pour exécuter en tant qu’un autre utilisateur. Après avoir examiné comment cela fonctionne en coulisses, je ne pense pas que ce soit une alternative viable à runas /netonly