Invoke-WSManAction

Appelle une action sur l'objet qui est spécifié par l'URI de ressource et par les sélecteurs.

Syntax

Invoke-WSManAction
      [-Action] <String>
      [-ConnectionURI <Uri>]
      [-FilePath <String>]
      [-OptionSet <Hashtable>]
      [[-SelectorSet] <Hashtable>]
      [-SessionOption <SessionOption>]
      [-ValueSet <Hashtable>]
      [-ResourceURI] <Uri>
      [-Credential <PSCredential>]
      [-Authentication <AuthenticationMechanism>]
      [-CertificateThumbprint <String>]
      [<CommonParameters>]
Invoke-WSManAction
      [-Action] <String>
      [-ApplicationName <String>]
      [-ComputerName <String>]
      [-FilePath <String>]
      [-OptionSet <Hashtable>]
      [-Port <Int32>]
      [[-SelectorSet] <Hashtable>]
      [-SessionOption <SessionOption>]
      [-UseSSL]
      [-ValueSet <Hashtable>]
      [-ResourceURI] <Uri>
      [-Credential <PSCredential>]
      [-Authentication <AuthenticationMechanism>]
      [-CertificateThumbprint <String>]
      [<CommonParameters>]

Description

Cette applet de commande est disponible uniquement sur la plateforme Windows.

L’exécution Invoke-WSManAction d’une action sur l’objet spécifié par RESOURCE_URI, où les paramètres sont spécifiés par des paires clé-valeur.

Cette applet de commande utilise la couche de connexion/transport WSMan pour exécuter l'action.

Exemples

Exemple 1 : Appeler une méthode

Invoke-WSManAction -Action startservice -ResourceURI wmicimv2/win32_service  -SelectorSet @{name="spooler"} -Authentication default

xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ReturnValue : 0

Cette commande appelle la méthode StartService de l'instance de classe WMI Win32_Service qui correspond au service Spooler.

La valeur de retour indique si l'action a réussi. Si c'est le cas, la valeur de retour est 0. Une valeur de retour de 5 indique que le service est déjà démarré.

Exemple 2 : Appeler une méthode

Invoke-WSManAction -Action stopservice -ResourceURI wmicimv2/Win32_Service -SelectorSet @{Name="spooler"} -FilePath:input.xml -Authentication default

xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ReturnValue : 0

Cette commande appelle la méthode StopService sur le service Spooler à l’aide d’une entrée à partir d’un fichier. Le fichier contient Input.xmlle contenu suivant :

<p:StopService_INPUT xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service" />

Exemple 3 : Appeler une méthode avec des valeurs de paramètre spécifiées

Invoke-WSManAction -Action create -ResourceURI wmicimv2/win32_process -ValueSet @{commandline="notepad.exe";currentdirectory="C:\"}

xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Process
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ProcessId   : 6356
ReturnValue : 0

Cette commande appelle la méthode Create de la classe Win32_Process. Il transmet la méthode deux valeurs de paramètre et Notepad.exeC:\. Par conséquent, un nouveau processus est créé pour exécuter Bloc-notes Windows, et le répertoire actuel du nouveau processus est défini C:\sur .

Exemple 4 : Appeler une méthode sur un ordinateur distant

Invoke-WSManAction -Action startservice -ResourceURI wmicimv2/win32_service  -SelectorSet @{name="spooler"} -ComputerName server01 -Authentication default

xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ReturnValue : 0

Cette commande appelle la méthode StartService de l'instance de classe WMI Win32_Service qui correspond au service Spooler. Comme le paramètre ComputerName est spécifié, la commande s'exécute sur l'ordinateur distant server01.

La valeur de retour indique si l'action a réussi. Si c'est le cas, la valeur de retour est 0. Une valeur de retour de 5 indique que le service est déjà démarré.

Paramètres

-Action

Spécifie la méthode à exécuter sur l’objet de gestion spécifié par resourceURI et les sélecteurs.

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationName

Spécifie le nom d'application de la connexion. La valeur par défaut du paramètre ApplicationName est WSMAN. L'identificateur complet du point de terminaison distant est au format suivant :

<Transport>://<Server>:<Port>/<ApplicationName>

Par exemple :

http://server01:8080/WSMAN

Internet Information Services, qui héberge la session, transfère les demandes avec ce point de terminaison à l'application spécifiée. La valeur par défaut « WSMAN » est appropriée pour la plupart des utilisations. Ce paramètre est conçu pour être utilisé quand de nombreux ordinateurs établissent des connexions à distance à un ordinateur qui exécute Windows PowerShell. Dans ce cas, IIS héberge Web Services for Management (WS-Management) pour plus d'efficacité.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Authentication

Spécifie le mécanisme d’authentification à utiliser au niveau du serveur. Les valeurs possibles sont les suivantes :

  • Basic - De base est un schéma dans lequel le nom d’utilisateur et le mot de passe sont envoyés en texte clair au serveur ou au proxy.
  • Default - Utilisez la méthode d’authentification implémentée par le protocole WS-Management. Il s’agit de la valeur par défaut.
  • Digest - Digest est un schéma de réponse aux défis qui utilise une chaîne de données spécifiée par le serveur pour le défi.
  • Kerberos - L’ordinateur client et le serveur s’authentifient mutuellement à l’aide de certificats Kerberos.
  • Negotiate - Négocier est un schéma de réponse aux défis qui négocie avec le serveur ou le proxy pour déterminer le schéma à utiliser pour l’authentification. Par exemple, cette valeur de paramètre permet à la négociation de déterminer si le protocole Kerberos ou NTLM est utilisé.
  • CredSSP - Utilisez l’authentification CredSSP (Credential Security Support Provider), qui permet à l’utilisateur de déléguer des informations d’identification. Cette option est conçue pour les commandes qui s'exécutent sur un ordinateur distant, mais qui collectent des données ou exécutent des commandes supplémentaires à partir d'autres ordinateurs distants.

Attention

CredSSP délègue les informations d’identification de l’utilisateur de l’ordinateur local à un ordinateur distant. Cette pratique augmente le risque de sécurité lié à l'opération distante. Si l'ordinateur distant n'est pas fiable, les informations d'identification qui lui sont passées peuvent être utilisées pour contrôler la session réseau.

Type:AuthenticationMechanism
Aliases:auth, am
Accepted values:None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificateThumbprint

Spécifie le certificat de clé publique numérique (X509) d'un compte d'utilisateur qui a l'autorisation d'exécuter cette action. Entrez l’empreinte numérique du certificat.

Les certificats sont utilisés dans l'authentification par certificat client. Ils peuvent être mappés uniquement aux comptes d'utilisateur locaux ; ils ne fonctionnent pas avec les comptes de domaine.

Pour obtenir une empreinte numérique de certificat, utilisez le ou Get-ChildItem la Get-Item commande dans le lecteur Windows PowerShell Cert : .

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

Spécifie l'ordinateur sur lequel vous souhaitez exécuter l'opération de gestion. La valeur peut être un nom de domaine complet, un nom NetBIOS ou une adresse IP. Utilisez le nom de l’ordinateur local, utilisez localhost ou utilisez un point (.) pour spécifier l’ordinateur local. L'ordinateur local est la valeur par défaut. Quand l'ordinateur distant est dans un domaine différent de celui de l'utilisateur, vous devez utiliser un nom de domaine complet. Vous pouvez acheminer par canal une valeur de ce paramètre vers l'applet de commande.

Type:String
Aliases:cn
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ConnectionURI

Spécifie le point de terminaison de connexion. Le format de cette chaîne est :

<Transport>://<Server>:<Port>/<ApplicationName>

La chaîne suivante est une valeur au format correct pour ce paramètre :

http://Server01:8080/WSMAN

L’URI doit être complet.

Type:Uri
Aliases:CURI, CU
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Spécifie un compte d’utilisateur qui a l’autorisation d’exécuter cette action. La valeur par défaut est l’utilisateur actuel. Tapez un nom d’utilisateur, tel que « User01 », « Domain01\User01 » ou User@Domain.com. Vous pouvez également entrer un objet PSCredential, tel qu’un objet retourné par l’applet de Get-Credential commande. Lorsque vous tapez un nom d’utilisateur, vous êtes invité à entrer un mot de passe.

Type:PSCredential
Aliases:cred, c
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-FilePath

Spécifie le chemin d'accès d'un fichier qui est utilisé pour mettre à jour une ressource de gestion. Vous spécifiez la ressource de gestion à l'aide des paramètres ResourceURI et SelectorSet. Par exemple, la commande suivante utilise le paramètre de FilePath :

Invoke-WSManAction -Action stopservice -ResourceUri wmicimv2/Win32_Service -SelectorSet @{Name="spooler"} -FilePath c:\input.xml -Authentication default

Cette commande appelle la méthode StopService sur le service Spooler à l’aide d’une entrée à partir d’un fichier. Le fichier contient Input.xmlle contenu suivant :

<p:StopService_INPUT xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service" />

Type:String
Aliases:Path
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OptionSet

Transmet un ensemble de commutateurs à un service pour modifier ou affiner la nature de la demande. Ceux-ci sont similaires aux commutateurs utilisés dans des shells de ligne de commande, car spécifiques au service. N'importe quel nombre d'options peut être spécifié.

L'exemple suivant illustre la syntaxe qui passe les valeurs 1, 2 et 3 pour les paramètres a, b et c :

-OptionSet @{a=1;b=2;c=3}

Type:Hashtable
Aliases:os
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Port

Spécifie le port à utiliser lorsque le client se connecte au service WinRM. Lorsque le transport est HTTP, le port par défaut est 80. Lorsque le transport est HTTPS, le port par défaut est 443. Lorsque vous utilisez le protocole HTTPS, la valeur du paramètre ComputerName doit correspondre au nom commun du certificat du serveur. Toutefois, si le paramètre SkipCNCheck est spécifié dans le cadre du paramètre SessionOption, le nom commun du certificat du serveur n'a pas à correspondre au nom d'hôte du serveur. Le paramètre SkipCNCheck doit être utilisé uniquement pour les ordinateurs approuvés.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceURI

Contient l'URI de l'instance ou de la classe de ressource. L'URI est utilisé pour identifier un type particulier de ressource, comme un disque ou un processus, sur un ordinateur.

Un URI se compose d'un préfixe et d'un chemin d'accès à une ressource. Par exemple :

http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk

http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSensor

Type:Uri
Aliases:ruri
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SelectorSet

Spécifie un jeu de paires de valeur utilisées pour sélectionner des instances de ressources de gestion particulières. SelectorSet est utilisé lorsque plusieurs instances de la ressource existent. La valeur de SelectorSet doit être une table de hachage.

L'exemple suivant montre comment spécifier une valeur pour ce paramètre :

-SelectorSet @{Name="WinRM";ID="yyy"}

Type:Hashtable
Position:2
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-SessionOption

Définit un ensemble d'options étendues pour la session WS-Management. Entrez un objet SessionOption que vous créez à l’aide de l’applet de New-WSManSessionOption commande. Pour plus d’informations sur les options disponibles, consultez New-WSManSessionOption.

Type:SessionOption
Aliases:so
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseSSL

Spécifie que le protocole SSL (Secure Sockets Layer) est utilisé pour établir une connexion à l’ordinateur distant. Par défaut, SSL n'est pas utilisé.

WS-Management chiffre tout le contenu PowerShell transmis sur le réseau. Le paramètre UseSSL vous permet de spécifier la protection supplémentaire du protocole HTTPS au lieu de HTTP. Si SSL n'est pas disponible sur le port qui est utilisé pour la connexion et que vous spécifiez ce paramètre, la commande échoue.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ValueSet

Spécifie une table de hachage qui permet de modifier une ressource de gestion. Vous spécifiez la ressource de gestion à l’aide des paramètres ResourceURI et SelectorSet . La valeur du paramètre ValueSet doit être une table de hachage.

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entrées

None

Vous ne pouvez pas diriger les objets vers cette applet de commande.

Sorties

XmlElement

Cette applet de commande retourne le résultat de l’opération en tant qu’objet XmlElement .