Mon scénario: Connectez-vous à la machine distante via la connexion Bureau à distance et ouvrez l'invite de commande en tant qu'administrateur et exécutez certaines commandes d'administration dans l'invite de commande. J'essaye d'automatiser le scénario ci-dessus par powershell à partir de ma machine locale.PowerShell: Comment exécuter les commandes d'invite de commande à distance en tant qu'administrateur à partir de PowerShell?
Voici les étapes que je l'ai fait:
- Pour vérifier le bon fonctionnement de mon script Powershell, je me suis connecté manuellement dans la machine distante (Admin Cred) et exécuté cette commande
Start-Process cmd -ArgumentList '/c cmdcommand > output.txt -Verb runas
. Cela fonctionne comme prévu dans la machine distante car j'obtiens la sortie désirée. - Maintenant, j'ai essayé d'exécuter cette commande à partir du script PowerShell local via
Invoke-Command -ComputerName computername - ScriptBlock {Start-Process cmd -ArgumentList '/c cmdcommand > output.txt -Verb runas} -Credentials $cred
. Je n'ai pas de sortie. - Mais, quand j'essaye d'exécuter la commande ci-dessus sans le paramètre
runas
, j'obtiens la sortie disant que cette commande particulière a besoin d'informations d'identification d'administrateur qui sont attendues.Invoke-Command -ComputerName computername - ScriptBlock {Start-Process cmd -ArgumentList '/c cmdcommand > output.txt} -Credentials $cred
.
Est-ce qu'il me manque quelque chose ici?
Merci pour le commentaire. J'ai d'abord invoqué la session windows.powershell pour la communication à distance et avec cette session, j'ai pu exécuter les commandes à distance en tant qu'administrateur depuis mon ordinateur client. –