Partager via


New-PSSession

Crée une connexion persistante à un ordinateur local ou distant.

Syntaxe

ComputerName (Par défaut)

New-PSSession
    [[-ComputerName] <String[]>]
    [-Credential <PSCredential>]
    [-Name <String[]>]
    [-EnableNetworkAccess]
    [-ConfigurationName <String>]
    [-Port <Int32>]
    [-UseSSL]
    [-ApplicationName <String>]
    [-ThrottleLimit <Int32>]
    [-SessionOption <PSSessionOption>]
    [-Authentication <AuthenticationMechanism>]
    [-CertificateThumbprint <String>]
    [<CommonParameters>]

Uri

New-PSSession
    [-ConnectionUri] <Uri[]>
    [-Credential <PSCredential>]
    [-Name <String[]>]
    [-EnableNetworkAccess]
    [-ConfigurationName <String>]
    [-ThrottleLimit <Int32>]
    [-AllowRedirection]
    [-SessionOption <PSSessionOption>]
    [-Authentication <AuthenticationMechanism>]
    [-CertificateThumbprint <String>]
    [<CommonParameters>]

VMId

New-PSSession
    [-VMId] <Guid[]>
    -Credential <PSCredential>
    [-Name <String[]>]
    [-ConfigurationName <String>]
    [-ThrottleLimit <Int32>]
    [<CommonParameters>]

VMName

New-PSSession
    -Credential <PSCredential>
    -VMName <String[]>
    [-Name <String[]>]
    [-ConfigurationName <String>]
    [-ThrottleLimit <Int32>]
    [<CommonParameters>]

Session

New-PSSession
    [[-Session] <PSSession[]>]
    [-Name <String[]>]
    [-EnableNetworkAccess]
    [-ThrottleLimit <Int32>]
    [<CommonParameters>]

ContainerId

New-PSSession
    -ContainerId <String[]>
    [-Name <String[]>]
    [-ConfigurationName <String>]
    [-RunAsAdministrator]
    [-ThrottleLimit <Int32>]
    [<CommonParameters>]

Description

L’applet de commande New-PSSession crée une session PowerShell (psSession) sur un ordinateur local ou distant. Lorsque vous créez un psSession, PowerShell établit une connexion persistante à l’ordinateur distant.

Utilisez un PSSession pour exécuter plusieurs commandes qui partagent des données, telles qu’une fonction ou la valeur d’une variable. Pour exécuter des commandes dans un PSSession, utilisez l’applet de commande Invoke-Command. Pour utiliser le PSSession pour interagir directement avec un ordinateur distant, utilisez l’applet de commande Enter-PSSession. Pour plus d’informations, consultez about_PSSessions.

Vous pouvez exécuter des commandes sur un ordinateur distant sans créer de PSSession à l’aide des paramètres ComputerName de Enter-PSSession ou de Invoke-Command. Lorsque vous utilisez le paramètre ComputerName, PowerShell crée une connexion temporaire utilisée pour la commande, puis fermée.

Exemples

Exemple 1 : Créer une session sur l’ordinateur local

$s = New-PSSession

Cette commande crée une PSSession sur l’ordinateur local et enregistre le PSSession dans la variable $s.

Vous pouvez maintenant utiliser cette PSSession pour exécuter des commandes sur l’ordinateur local.

Exemple 2 : Créer une session sur un ordinateur distant

$Server01 = New-PSSession -ComputerName Server01

Cette commande crée une psSession sur l’ordinateur Server01 et l’enregistre dans la variable $Server01.

Lors de la création de plusieurs objets PSSession, affectez-les à des variables avec des noms utiles. Cela vous aidera à gérer les objets PSSession dans les commandes suivantes.

Exemple 3 : Créer des sessions sur plusieurs ordinateurs

$s1, $s2, $s3 = New-PSSession -ComputerName Server01,Server02,Server03

Cette commande crée trois objets PSSession, un sur chacun des ordinateurs spécifiés par le paramètre ComputerName.

La commande utilise l’opérateur d’affectation (=) pour affecter les nouveaux objets PSSession aux variables : $s1, $s2, $s3. Il affecte le PSSession server01 à $s1, le PSSession server02 à $s2, et le PSSession server03 à $s3.

Lorsque vous affectez plusieurs objets à une série de variables, PowerShell affecte chaque objet à une variable de la série respectivement. S’il existe plus d’objets que de variables, tous les objets restants sont affectés à la dernière variable. S’il existe plus de variables que d’objets, les variables restantes sont vides ($null).

Exemple 4 : Créer une session avec un port spécifié

New-PSSession -ComputerName Server01 -Port 8081 -UseSSL -ConfigurationName E12

Cette commande crée une nouvelle PSSession sur l’ordinateur Server01 qui se connecte au port du serveur 8081 et utilise le protocole SSL. Le nouveau PSSession utilise une autre configuration de session appelée E12.

Avant de définir le port, vous devez configurer l’écouteur WinRM sur l’ordinateur distant pour écouter sur le port 8081. Pour plus d’informations, consultez la description du paramètre port.

Exemple 5 : Créer une session basée sur une session existante

New-PSSession -Session $s -Credential Domain01\User01

Cette commande crée une PSSession avec les mêmes propriétés qu’une psSessionexistante. Vous pouvez utiliser ce format de commande lorsque les ressources d’une PSSession existantes sont épuisées et qu’une nouvelle psSession est nécessaire pour décharger une partie de la demande.

La commande utilise le paramètre Session de New-PSSession pour spécifier le PSSession enregistré dans la variable $s. Il utilise les informations d’identification de l’utilisateur Domain1\Admin01 pour terminer la commande.

Exemple 6 : Créer une session avec une étendue globale dans un autre domaine

$Global:s = New-PSSession -ComputerName Server1.Domain44.Corpnet.Fabrikam.com -Credential Domain01\Admin01

Cet exemple montre comment créer un PSSession avec une étendue globale sur un ordinateur dans un autre domaine.

Par défaut, objets PSSession créés sur la ligne de commande sont créés avec une étendue locale et objets PSSession créés dans un script ont une étendue de script.

Pour créer un PSSession avec une étendue globale, créez une PSSession, puis stockez le PSSession dans une variable qui est convertie en étendue globale. Dans ce cas, la variable $s est convertie en étendue globale.

La commande utilise le paramètre ComputerName pour spécifier l’ordinateur distant. Étant donné que l’ordinateur se trouve dans un domaine différent du compte d’utilisateur, le nom complet de l’ordinateur est spécifié avec les informations d’identification de l’utilisateur.

Exemple 7 : Créer des sessions pour de nombreux ordinateurs

$rs = Get-Content C:\Test\Servers.txt | New-PSSession -ThrottleLimit 50

Cette commande crée une PSSession sur chacun des 200 ordinateurs répertoriés dans le fichier Servers.txt et stocke les PSSession obtenues dans la variable $rs. Les objets PSSession ont une limite de 50.

Vous pouvez utiliser ce format de commande lorsque les noms des ordinateurs sont stockés dans une base de données, une feuille de calcul, un fichier texte ou un autre format convertible en texte.

Exemple 8 : Créer une session à l’aide d’un URI

$s = New-PSSession -Uri http://Server01:91/NewSession -Credential Domain01\User01

Cette commande crée un PSSession sur l’ordinateur Server01 et le stocke dans la variable $s. Il utilise l’URI paramètre pour spécifier le protocole de transport, l’ordinateur distant, le port et une autre configuration de session. Il utilise également le paramètre Credential pour spécifier un compte d’utilisateur autorisé à créer une session sur l’ordinateur distant.

Exemple 9 : Exécuter un travail en arrière-plan dans un ensemble de sessions

$s = New-PSSession -ComputerName (Get-Content Servers.txt) -Credential Domain01\Admin01 -ThrottleLimit 16
Invoke-Command -Session $s -ScriptBlock {Get-Process powershell} -AsJob

Ces commandes créent un ensemble d’objets PSSession, puis exécutent un travail en arrière-plan dans chacun des objets PSSession.

La première commande crée une psSession sur chacun des ordinateurs répertoriés dans le fichier Servers.txt. Il utilise l’applet de commande New-PSSession pour créer le PSSession. La valeur du paramètre ComputerName est une commande qui utilise l’applet de commande Get-Content pour obtenir la liste des noms d’ordinateurs du fichier Servers.txt.

La commande utilise le paramètre Credential pour créer les objets PSSession disposant de l’autorisation d’un administrateur de domaine, et utilise le paramètre ThrottleLimit pour limiter la commande à 16 connexions simultanées. La commande enregistre les objets PSSession dans la variable $s.

La deuxième commande utilise le paramètre AsJob de l’applet de commande Invoke-Command pour démarrer un travail en arrière-plan qui exécute une commande Get-Process powershell dans chacun des objets PSSession dans $s.

Pour plus d’informations sur les travaux en arrière-plan PowerShell, consultez about_Jobs et about_Remote_Jobs.

Exemple 10 : Créer une session pour un ordinateur à l’aide de son URI

New-PSSession -ConnectionURI https://management.exchangelabs.com/Management

Cette commande crée un objets psSession qui se connecte à un ordinateur spécifié par un URI au lieu d’un nom d’ordinateur.

Exemple 11 : Créer une option de session

$so = New-PSSessionOption -SkipCACheck
New-PSSession -ConnectionUri https://management.exchangelabs.com/Management -SessionOption $so -Credential Server01\Admin01

Cet exemple montre comment créer un objet d’option de session et utiliser le paramètre SessionOption.

La première commande utilise l’applet de commande New-PSSessionOption pour créer une option de session. Il enregistre l’objet SessionOption obtenu dans la variable $so.

La deuxième commande utilise l’option dans une nouvelle session. La commande utilise l’applet de commande New-PSSession pour créer une session. La valeur du paramètre SessionOption est l’objet SessionOption dans la variable $so.

Paramètres

-AllowRedirection

Indique que cette applet de commande autorise la redirection de cette connexion vers un AUTRE URI (Uniform Resource Identifier).

Lorsque vous utilisez le paramètre ConnectionURI, la destination distante peut retourner une instruction pour rediriger vers un AUTRE URI. Par défaut, PowerShell ne redirige pas les connexions, mais vous pouvez utiliser ce paramètre pour l’activer pour rediriger la connexion.

Vous pouvez également limiter le nombre de fois où la connexion est redirigée en modifiant la valeur d’option de session MaximumConnectionRedirectionCount. Utilisez le paramètre MaximumRedirection de l’applet de commande New-PSSessionOption ou définissez la propriété MaximumConnectionRedirectionCount de la variable de préférence $PSSessionOption. La valeur par défaut est 5.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:False
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

Uri
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ApplicationName

Spécifie le segment de nom d'application de l'URI de connexion. Utilisez ce paramètre pour spécifier le nom de l’application lorsque vous n’utilisez pas le paramètre ConnectionURI dans la commande.

La valeur par défaut est la valeur de la variable de préférence $PSSessionApplicationName sur l’ordinateur local. Si cette variable de préférence n’est pas définie, la valeur par défaut est WSMAN. Cette valeur est appropriée pour la plupart des utilisations. Pour plus d'informations, consultez about_Preference_Variables.

Le service WinRM utilise le nom de l’application pour sélectionner un écouteur pour traiter la demande de connexion. La valeur de ce paramètre doit correspondre à la valeur du URLPrefix propriété d’un écouteur sur l’ordinateur distant.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

ComputerName
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-Authentication

Spécifie le mécanisme utilisé pour authentifier les informations d’identification de l’utilisateur. Les valeurs acceptables pour ce paramètre sont les suivantes :

  • Default
  • Basic
  • Credssp
  • Digest
  • Kerberos
  • Negotiate
  • NegotiateWithImplicitCredential

La valeur par défaut est Default.

Pour plus d'informations sur les valeurs de ce paramètre, voir AuthenticationMechanism Enumeration.

Avertissement

L’authentification CredSSP (Credential Security Support Provider), dans laquelle les informations d’identification de l’utilisateur sont transmises à un ordinateur distant à authentifier, est conçue pour les commandes qui nécessitent une authentification sur plusieurs ressources, telles que l’accès à un partage réseau distant. Ce mécanisme augmente le risque de sécurité de l’opération à distance. Si l’ordinateur distant est compromis, les informations d’identification qui lui sont transmises peuvent être utilisées pour contrôler la session réseau.

Propriétés du paramètre

Type:AuthenticationMechanism
Valeur par défaut:None
Valeurs acceptées:Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

ComputerName
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False
Uri
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants: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 un certificat, utilisez la commande Get-Item ou Get-ChildItem dans le lecteur powerShell Cert:.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

ComputerName
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False
Uri
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ComputerName

Spécifie un tableau de noms d’ordinateurs. Cette applet de commande crée une connexion persistante (psSession) sur l’ordinateur spécifié. Si vous entrez plusieurs noms d’ordinateurs, New-PSSession crée plusieurs objets PSSession, un pour chaque ordinateur. La valeur par défaut est l’ordinateur local.

Tapez le nom NetBIOS, une adresse IP ou un nom de domaine complet d’un ou plusieurs ordinateurs distants. Pour spécifier l’ordinateur local, tapez le nom de l’ordinateur, localhostou un point (.). Lorsque l’ordinateur se trouve dans un domaine différent de celui de l’utilisateur, le nom de domaine complet est requis. Vous pouvez également diriger un nom d’ordinateur, entre guillemets, vers New-PSSession.

Pour utiliser une adresse IP dans la valeur du paramètre ComputerName , la commande doit inclure le paramètre Credential . En outre, l’ordinateur doit être configuré pour le transport HTTPS ou l’adresse IP de l’ordinateur distant doit être inclus dans la liste WinRM TrustedHosts sur l’ordinateur local. Pour obtenir des instructions sur l’ajout d’un nom d’ordinateur à la liste TrustedHosts, consultez « How to Add a Computer to the Trusted Host List » dans about_Remote_Troubleshooting.

Pour inclure l’ordinateur local dans la valeur du paramètre ComputerName, démarrez Windows PowerShell à l’aide de l’option Exécuter en tant qu’administrateur .

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:Cn

Jeux de paramètres

ComputerName
Position:0
Obligatoire:False
Valeur du pipeline:True
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-ConfigurationName

Spécifie la configuration de session utilisée pour le nouveau PSSession.

Entrez un nom de configuration ou l'URI complet de la ressource pour une configuration de session. Si vous spécifiez uniquement le nom de configuration, l’URI de schéma suivant est ajouté : http://schemas.microsoft.com/PowerShell.

La configuration de session d’une session se trouve sur l’ordinateur distant. Si la configuration de session spécifiée n’existe pas sur l’ordinateur distant, la commande échoue.

La valeur par défaut est la valeur de la variable de préférence $PSSessionConfigurationName sur l’ordinateur local. Si cette variable de préférence n’est pas définie, la valeur par défaut est Microsoft.PowerShell. Pour plus d'informations, consultez about_Preference_Variables.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

ComputerName
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False
Uri
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False
VMId
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False
VMName
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False
ContainerId
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-ConnectionUri

Spécifie un URI qui définit le point de terminaison de connexion de la session. L’URI doit être complet. Le format de cette chaîne est le suivant :

<Transport>://<ComputerName>:<Port>/<ApplicationName>

La valeur par défaut est la suivante :

http://localhost:5985/WSMAN

Si vous ne spécifiez pas de connectionURI, vous pouvez utiliser les paramètres UseSSL, ComputerName, Portet Nom_ApplicationName pour spécifier les valeurs ConnectionURI .

Les valeurs valides pour le segment Transport de l’URI sont HTTP et HTTPS. Si vous spécifiez un URI de connexion avec un segment de transport, mais que vous ne spécifiez pas de port, la session est créée avec des ports standard : 80 pour HTTP et 443 pour HTTPS. Pour utiliser les ports par défaut pour la communication à distance PowerShell, spécifiez 5985 de port pour HTTP ou 5986 pour HTTPS.

Si l’ordinateur de destination redirige la connexion vers un autre URI, PowerShell empêche la redirection, sauf si vous utilisez le paramètre AllowRedirection dans la commande.

Propriétés du paramètre

Type:

Uri[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:URI, CU

Jeux de paramètres

Uri
Position:0
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-ContainerId

Spécifie un tableau d’identifiants de conteneurs. Cette applet de commande démarre une session interactive avec chacun des conteneurs spécifiés. Utilisez la commande docker ps pour obtenir la liste des ID de conteneur. Pour plus d’informations, consultez l’aide de la commande docker ps.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

ContainerId
Position:Named
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants: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 ou Domain01\User01, ou entrez un objet PSCredential généré par l’applet de commande Get-Credential. Si vous tapez un nom d’utilisateur, vous êtes invité à entrer le mot de passe.

Les informations d’identification sont stockées dans un objet PSCredential et le mot de passe est stocké en tant que SecureString.

Remarque

Pour plus d’informations sur la protection des données de SecureString, consultez Quelle est la sécurité de SecureString ?.

Propriétés du paramètre

Type:PSCredential
Valeur par défaut:Current user
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

ComputerName
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False
Uri
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False
VMId
Position:Named
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False
VMName
Position:Named
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-EnableNetworkAccess

Indique que cette applet de commande ajoute un jeton de sécurité interactif aux sessions de bouclage. Le jeton interactif vous permet d’exécuter des commandes dans la session de bouclage qui obtiennent des données à partir d’autres ordinateurs. Par exemple, vous pouvez exécuter une commande dans la session qui copie des fichiers XML d’un ordinateur distant vers l’ordinateur local.

Une session de bouclage est une psSession qui provient et se termine sur le même ordinateur. Pour créer une session de bouclage, omettez le paramètre ComputerName ou définissez sa valeur sur point (.), localhostou le nom de l’ordinateur local.

Par défaut, cette applet de commande crée des sessions de bouclage à l’aide d’un jeton réseau, ce qui peut ne pas fournir l’autorisation suffisante pour s’authentifier auprès des ordinateurs distants.

Le paramètre EnableNetworkAccess est efficace uniquement dans les sessions de bouclage. Si vous utilisez EnableNetworkAccess lorsque vous créez une session sur un ordinateur distant, la commande réussit, mais le paramètre est ignoré.

Vous pouvez également activer l’accès à distance dans une session de bouclage à l’aide de la valeur CredSSP du paramètre Authentication, qui délègue les informations d’identification de session à d’autres ordinateurs.

Pour protéger l’ordinateur contre les accès malveillants, les sessions de bouclage déconnectées qui ont des jetons interactifs, qui sont ceux créés à l’aide du paramètre EnableNetworkAccess, peuvent être reconnectées uniquement à partir de l’ordinateur sur lequel la session a été créée. Les sessions déconnectées qui utilisent l’authentification CredSSP peuvent être reconnectées à partir d’autres ordinateurs. Pour plus d’informations, consultez Disconnect-PSSession.

Ce paramètre a été introduit dans PowerShell 3.0.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:False
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

ComputerName
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False
Uri
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False
Session
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Name

Spécifie un nom convivial pour le PSSession.

Vous pouvez utiliser le nom pour faire référence au PSSession lorsque vous utilisez d’autres applets de commande, telles que Get-PSSession et Enter-PSSession. Le nom n’est pas obligatoire pour être unique à l’ordinateur ou à la session active.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Port

Spécifie le port réseau sur l’ordinateur distant utilisé pour cette connexion. Pour établir une connexion à un ordinateur distant, l’ordinateur distant doit être à l’écoute sur le port utilisé par la connexion. Les ports par défaut sont 5985, qui est le port WinRM pour HTTP, et 5986, qui est le port WinRM pour HTTPS.

Avant d’utiliser un autre port, vous devez configurer l’écouteur WinRM sur l’ordinateur distant pour écouter sur ce port. Utilisez les commandes suivantes pour configurer l’écouteur :

  1. winrm delete winrm/config/listener?Address=*+Transport=HTTP
  2. winrm create winrm/config/listener?Address=*+Transport=HTTP @{Port="\<port-number\>"}

N’utilisez pas le paramètre de port , sauf si vous devez. Le paramètre de port dans la commande s’applique à tous les ordinateurs ou sessions sur lesquels la commande s’exécute. Un autre paramètre de port peut empêcher l’exécution de la commande sur tous les ordinateurs.

Propriétés du paramètre

Type:Int32
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

ComputerName
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-RunAsAdministrator

Indique que le PSSession s’exécute en tant qu’administrateur.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:False
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

ContainerId
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Session

Spécifie un tableau d’objets PSSession que cette applet de commande utilise comme modèle pour le nouveau PSSession. Ce paramètre crée de nouveaux objets PSSession qui ont les mêmes propriétés que les objets PSSession spécifiés.

Entrez une variable qui contient les objets PSSession ou une commande qui crée ou obtient les objets PSSession, tels qu’une commande New-PSSession ou Get-PSSession.

Les objets PSSession résultant ont le même nom d’ordinateur, le nom de l’application, l’URI de connexion, le port, le nom de configuration, la limite de limitation et la valeur SSL (Secure Sockets Layer) que les originaux, mais ils ont un autre nom d’affichage, ID et ID d’instance (GUID).

Propriétés du paramètre

Type:

PSSession[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

Session
Position:0
Obligatoire:False
Valeur du pipeline:True
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-SessionOption

Spécifie les options avancées de la session. Entrez un objet SessionOption, tel qu’un objet que vous créez à l’aide de l’applet de commande New-PSSessionOption, ou une table de hachage dans laquelle les clés sont des noms d’options de session et les valeurs sont des valeurs d’option de session.

Les valeurs par défaut des options sont déterminées par la valeur de la variable de préférence $PSSessionOption, si elle est définie. Sinon, les valeurs par défaut sont établies par les options définies dans la configuration de session.

Les valeurs d’option de session sont prioritaires sur les valeurs par défaut pour les sessions définies dans la variable de préférence $PSSessionOption et dans la configuration de session. Toutefois, ils ne sont pas prioritaires sur les valeurs maximales, les quotas ou les limites définis dans la configuration de session.

Pour obtenir une description des options de session qui incluent les valeurs par défaut, consultez New-PSSessionOption. Pour plus d’informations sur la variable de préférence $PSSessionOption, consultez about_Preference_Variables. Pour plus d’informations sur les configurations de session, consultez about_Session_Configurations.

Propriétés du paramètre

Type:PSSessionOption
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

ComputerName
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False
Uri
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ThrottleLimit

Spécifie le nombre maximal de connexions simultanées qui peuvent être établies pour exécuter cette commande. Si vous omettez ce paramètre ou entrez une valeur de 0 (zéro), la valeur par défaut, 32, est utilisée.

La limite de limitation s’applique uniquement à la commande actuelle, et non à la session ou à l’ordinateur.

Propriétés du paramètre

Type:Int32
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-UseSSL

Indique que cette applet de commande utilise le protocole SSL 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 offre une protection supplémentaire qui envoie les données à une connexion HTTPS au lieu d’une connexion HTTP.

Si vous utilisez ce paramètre, mais que SSL n’est pas disponible sur le port utilisé pour la commande, la commande échoue.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:False
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

ComputerName
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-VMId

Spécifie un tableau d’ID de machine virtuelle. Cette applet de commande démarre une session interactive PowerShell Direct avec chacune des machines virtuelles spécifiées. Pour plus d’informations, consultez Automatisation et gestion des machines virtuelles à l’aide de PowerShell.

Utilisez Get-VM pour afficher les machines virtuelles disponibles sur votre hôte Hyper-V.

Propriétés du paramètre

Type:

Guid[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:VMGuid

Jeux de paramètres

VMId
Position:0
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-VMName

Spécifie un tableau de noms de machines virtuelles. Cette applet de commande démarre une session interactive PowerShell Direct avec chacune des machines virtuelles spécifiées. Pour plus d’informations, consultez Automatisation et gestion des machines virtuelles à l’aide de PowerShell.

Utilisez Get-VM pour afficher les machines virtuelles disponibles sur votre hôte Hyper-V.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

VMName
Position:Named
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

CommonParameters

Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.

Entrées

String

Vous pouvez diriger une chaîne vers cette applet de commande.

System.URI

Vous pouvez diriger un URI vers cette applet de commande.

PSSession

Vous pouvez diriger un objet de session vers cette applet de commande.

Sorties

PSSession

Notes

Windows PowerShell inclut les alias suivants pour New-PSSession:

  • nsn

  • Cette applet de commande utilise l’infrastructure de communication à distance PowerShell. Pour utiliser cette applet de commande, l’ordinateur local et tous les ordinateurs distants doivent être configurés pour la communication à distance PowerShell. Pour plus d'informations, voir about_Remote_Requirements.

  • Pour créer une PSSession sur l’ordinateur local, démarrez PowerShell avec l’option Exécuter en tant qu’administrateur.

  • Lorsque vous avez terminé d’utiliser le PSSession, utilisez l’applet de commande Remove-PSSession pour supprimer le PSSession et libérer ses ressources.