Connect-WSMan
Se connecte au service WinRM sur un ordinateur distant.
Syntaxe
Connect-WSMan
[-ApplicationName <String>]
[[-ComputerName] <String>]
[-OptionSet <Hashtable>]
[-Port <Int32>]
[-SessionOption <SessionOption>]
[-UseSSL]
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[<CommonParameters>]
Connect-WSMan
[-ConnectionURI <Uri>]
[-OptionSet <Hashtable>]
[-Port <Int32>]
[-SessionOption <SessionOption>]
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[<CommonParameters>]
Description
L’applet de commande connect-WSMan
Les informations d’identification explicites sont requises lorsque les ordinateurs client et serveur se trouvent dans différents domaines ou groupes de travail.
Pour plus d’informations sur la déconnexion du service WinRM sur un ordinateur distant, consultez l’applet de commande Disconnect-WSMan.
Exemples
Exemple 1 : Se connecter à un ordinateur distant
PS C:\> Connect-WSMan -ComputerName "server01"
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
Cette commande crée une connexion à l’ordinateur serveur distant01.
L’applet de commande Connect-WSMan est généralement utilisée dans le contexte du fournisseur WSMan pour se connecter à un ordinateur distant, dans ce cas l’ordinateur server01. Toutefois, vous pouvez utiliser l’applet de commande pour établir des connexions à des ordinateurs distants avant de passer au fournisseur WSMan. Ces connexions apparaissent dans la liste ComputerName.
Exemple 2 : Se connecter à un ordinateur distant à l’aide des informations d’identification de l’administrateur
PS C:\> $cred = Get-Credential Administrator
PS C:\> Connect-WSMan -ComputerName "server01" -Credential $cred
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
Cette commande crée une connexion au serveur système distant01 à l’aide des informations d’identification du compte Administrateur.
La première commande utilise l’applet de commande Get-Credential pour obtenir les informations d’identification de l’administrateur, puis les stocke dans la variable $cred. Obtenir les informations d’identification vous invite à entrer un mot de passe de nom d’utilisateur et de mot de passe via une boîte de dialogue ou à la ligne de commande, en fonction des paramètres du Registre système.
La deuxième commande utilise le paramètre Credential pour transmettre les informations d’identification stockées dans $cred à Connect-WSMan. Connect-WSMan puis se connecte au serveur système distant01 à l’aide des informations d’identification de l’administrateur.
Exemple 3 : Se connecter à un ordinateur distant via un port spécifié
PS C:\> Connect-WSMan -ComputerName "server01" -Port 80
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
Cette commande crée une connexion à l’ordinateur serveur distant01 sur le port 80.
Exemple 4 : Se connecter à un ordinateur distant à l’aide des options de connexion
PS C:\> $a = New-WSManSessionOption -OperationTimeout 30000
PS C:\> Connect-WSMan -ComputerName "server01" -SessionOption $a
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
Cet exemple crée une connexion à l’ordinateur serveur distant01 à l’aide des options de connexion définies dans la commande New-WSManSessionOption.
La première commande utilise New-WSManSessionOption pour stocker un ensemble d’options de paramètre de connexion dans la variable $a. Dans ce cas, les options de session définissent un délai de connexion de 30 secondes (30 000 millisecondes).
La deuxième commande utilise le paramètre SessionOption
Paramètres
-ApplicationName
Spécifie le nom de l’application dans 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 :
< >de transport ://<>serveur :<>de port /<> ApplicationName
Par exemple : http://server01:8080/WSMAN
Internet Information Services (IIS), qui héberge la session, transfère les requêtes avec ce point de terminaison à l’application spécifiée. Ce paramètre par défaut de WSMAN est approprié pour la plupart des utilisations. Ce paramètre est conçu pour être utilisé si de nombreux ordinateurs établissent des connexions à distance à un ordinateur exécutant Windows PowerShell. Dans ce cas, IIS héberge les services Web pour la gestion (WS-Management) pour une efficacité.
Type: | String |
Position: | Named |
Valeur par défaut: | Wsman |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Authentication
Spécifie le mécanisme d’authentification à utiliser sur le serveur. Les valeurs acceptables pour ce paramètre sont les suivantes :
- Basique. 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.
- Faire défaut. Utilisez la méthode d’authentification implémentée par le protocole WS-Management. Il s’agit de la valeur par défaut.
- Digérer. 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.
- Négocier. Negotiate 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 de négocier 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 les informations d’identification. Cette option est conçue pour les commandes qui s’exécutent sur un ordinateur distant, mais collectent des données à partir ou exécutent des commandes supplémentaires sur 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é de l’opération à distance. Si l’ordinateur distant est compromis, lorsque les informations d’identification sont transmises, les informations d’identification peuvent être utilisées pour contrôler la session réseau.
Type: | AuthenticationMechanism |
Alias: | auth, am |
Valeurs acceptées: | None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp |
Position: | Named |
Valeur par défaut: | Default |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-CertificateThumbprint
Spécifie le certificat de clé publique numérique (X509) d’un compte d’utilisateur autorisé à effectuer cette action. Entrez l’empreinte numérique du certificat.
Les certificats sont utilisés dans l’authentification basée sur les certificats client. Ils ne peuvent être mappés qu’à des comptes d’utilisateur locaux ; ils ne fonctionnent pas avec les comptes de domaine.
Pour obtenir une empreinte numérique de certificat, utilisez la commande Get-Item ou Get-ChildItem dans le lecteur Windows PowerShell Cert : .
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ComputerName
Spécifie l’ordinateur sur lequel 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. Lorsque l’ordinateur distant se trouve dans un domaine différent de celui de l’utilisateur, vous devez utiliser un nom de domaine complet. Vous pouvez diriger une valeur pour ce paramètre vers l’applet de commande.
Type: | String |
Alias: | cn |
Position: | 0 |
Valeur par défaut: | Localhost |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ConnectionURI
Spécifie le point de terminaison de connexion. Le format de cette chaîne est le suivant :
< >de transport ://<Server>:<>de port /<Nom_application>
La chaîne suivante est une valeur correctement mise en forme pour ce paramètre :
http://Server01:8080/WSMAN
L’URI doit être complet.
Type: | Uri |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Credential
Spécifie un compte d’utilisateur autorisé à effectuer 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 commande Get-Credential. Lorsque vous tapez un nom d’utilisateur, cette applet de commande vous invite à entrer un mot de passe.
Type: | PSCredential |
Alias: | cred, c |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-OptionSet
Spécifie un ensemble de commutateurs vers un service pour modifier ou affiner la nature de la requête. Ces commutateurs ressemblent aux commutateurs utilisés dans les interpréteurs de commandes, car ils sont spécifiques au service. Vous pouvez spécifier n’importe quel nombre d’options.
L’exemple suivant illustre la syntaxe qui transmet les valeurs 1, 2 et 3 pour les paramètres a, b et c :
-OptionSet @{a=1;b=2;c=3}
Type: | Hashtable |
Alias: | os |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | 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 HTTPS comme transport, la valeur du paramètre ComputerName doit correspondre au nom commun du certificat (CN) 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 besoin de 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 |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-SessionOption
Spécifie les options étendues de la session WS-Management.
Entrez un objet SessionOption que vous créez à l’aide de l’applet de commande New-WSManSessionOption.
Pour plus d’informations sur les options disponibles, tapez Get-Help New-WSManSessionOption
.
Type: | SessionOption |
Alias: | so |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | 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 Windows 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 utilisé pour la connexion et que vous spécifiez ce paramètre, la commande échoue.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
None
Cette applet de commande n’accepte aucune entrée.
Sorties
None
Cette applet de commande ne génère aucune sortie.
Notes
Vous pouvez exécuter des commandes de gestion ou interroger des données de gestion sur un ordinateur distant sans créer de session WS-Management. Pour ce faire, utilisez les paramètres ComputerName de Invoke-WSManAction et Get-WSManInstance. Lorsque vous utilisez le paramètre ComputerName, Windows PowerShell crée une connexion temporaire utilisée pour la commande unique. Une fois la commande exécutée, la connexion est fermée.