Partager via


Connect-PSSession

Se reconnecte aux sessions déconnectées.

Syntaxe

Connect-PSSession
       -Name <String[]>
       [-ThrottleLimit <Int32>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-PSSession
       [-Session] <PSSession[]>
       [-ThrottleLimit <Int32>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-PSSession
       [-ComputerName] <String[]>
       [-ApplicationName <String>]
       [-ConfigurationName <String>]
       [-Name <String[]>]
       [-Credential <PSCredential>]
       [-Authentication <AuthenticationMechanism>]
       [-CertificateThumbprint <String>]
       [-Port <Int32>]
       [-UseSSL]
       [-SessionOption <PSSessionOption>]
       [-ThrottleLimit <Int32>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-PSSession
       [-ComputerName] <String[]>
       [-ApplicationName <String>]
       [-ConfigurationName <String>]
       -InstanceId <Guid[]>
       [-Credential <PSCredential>]
       [-Authentication <AuthenticationMechanism>]
       [-CertificateThumbprint <String>]
       [-Port <Int32>]
       [-UseSSL]
       [-SessionOption <PSSessionOption>]
       [-ThrottleLimit <Int32>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-PSSession
       [-ConfigurationName <String>]
       [-ConnectionUri] <Uri[]>
       [-AllowRedirection]
       [-Name <String[]>]
       [-Credential <PSCredential>]
       [-Authentication <AuthenticationMechanism>]
       [-CertificateThumbprint <String>]
       [-SessionOption <PSSessionOption>]
       [-ThrottleLimit <Int32>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-PSSession
       [-ConfigurationName <String>]
       [-ConnectionUri] <Uri[]>
       [-AllowRedirection]
       -InstanceId <Guid[]>
       [-Credential <PSCredential>]
       [-Authentication <AuthenticationMechanism>]
       [-CertificateThumbprint <String>]
       [-SessionOption <PSSessionOption>]
       [-ThrottleLimit <Int32>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-PSSession
       -InstanceId <Guid[]>
       [-ThrottleLimit <Int32>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-PSSession
       [-ThrottleLimit <Int32>]
       [-Id] <Int32[]>
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

L’applet Connect-PSSession de commande se reconnecte aux sessions PowerShell gérées par l’utilisateur (PSSessions) qui ont été déconnectées. Il fonctionne sur les sessions qui sont déconnectées intentionnellement, par exemple à l’aide de l’applet Disconnect-PSSession de commande ou du paramètre InDisconnectedSession de l’applet Invoke-Command de commande, et celles qui ont été déconnectées involontairement, par exemple par une panne réseau temporaire.

Connect-PSSession peut se connecter à n’importe quelle session déconnectée démarrée par le même utilisateur. Celles-ci incluent celles qui ont été démarrées ou déconnectées d’autres sessions sur d’autres ordinateurs.

Toutefois, Connect-PSSession ne peut pas se connecter à des sessions interrompues ou fermées ou des sessions interactives démarrées à l’aide de l’applet de Enter-PSSession commande. En outre, vous ne pouvez pas connecter une session à une session démarrée par un autre utilisateur, sauf si vous pouvez fournir les informations d'identification de l'utilisateur qui a créé la session.

Pour plus d’informations sur la fonctionnalité Sessions déconnectées, consultez about_Remote_Disconnected_Sessions.

Cette applet de commande a été introduite dans Windows PowerShell 3.0.

Exemples

Exemple 1 : Reconnecter à une session

Connect-PSSession -ComputerName Server01 -Name ITTask

Id Name            ComputerName    State         ConfigurationName     Availability
-- ----            ------------    -----         -----------------     ------------
 4 ITTask          Server01        Opened        ITTasks                  Available

Cette commande se reconnecte à la ITTask session sur l’ordinateur Server01.

La sortie montre que la commande a réussi. L’état de la session est Opened et la disponibilité indique Availableque vous pouvez exécuter des commandes dans la session.

Exemple 2 : Effet de la déconnexion et de la reconnexion

Get-PSSession

Id Name            ComputerName    State         ConfigurationName     Availability
-- ----            ------------    -----         -----------------     ------------
 1 Backups         Localhost       Opened        Microsoft.PowerShell     Available

Get-PSSession | Disconnect-PSSession

Id Name            ComputerName    State         ConfigurationName     Availability
-- ----            ------------    -----         -----------------     ------------
 1 Backups         Localhost       Disconnected  Microsoft.PowerShell          None

Get-PSSession | Connect-PSSession

Id Name            ComputerName    State         ConfigurationName     Availability
-- ----            ------------    -----         -----------------     ------------
 1 Backups         Localhost       Opened        Microsoft.PowerShell     Available

Cet exemple montre l'effet de la déconnexion et de la reconnexion à une session.

La première commande utilise l’applet Get-PSSession de commande. Sans le paramètre ComputerName , la commande obtient uniquement les sessions créées dans la session active.

La sortie indique que la commande obtient la Backups session sur l’ordinateur local. L’état de la session est Opened et la disponibilité est Available.

La deuxième commande utilise l’applet Get-PSSession de commande pour obtenir les objets PSSession créés dans la session active et l’applet Disconnect-PSSession de commande pour déconnecter les sessions. La sortie indique que la Backups session a été déconnectée. L’état de la session est Disconnected et la disponibilité est None.

La troisième commande utilise l’applet Get-PSSession de commande pour obtenir les objets PSSession créés dans la session active et l’applet Connect-PSSession de commande pour reconnecter les sessions. La sortie indique que la Backups session a été reconnectée. L’état de la session est Opened et la disponibilité est Available.

Si vous utilisez l’applet Connect-PSSession de commande sur une session qui n’est pas déconnectée, la commande n’affecte pas la session et ne génère aucune erreur.

Exemple 3 : Série de commandes dans un scénario d’entreprise

Cette série de commandes montre comment l’applet Connect-PSSession de commande peut être utilisée dans un scénario d’entreprise. Dans ce cas, un administrateur système démarre une tâche de longue durée dans une session sur un ordinateur distant. Après le démarrage de la tâche, l'administrateur se déconnecte de la session et rentre chez lui. Plus tard ce soir-là, l’administrateur se connecte à son ordinateur personnel et vérifie que le travail s’est exécuté jusqu’à ce qu’il soit terminé.

L’administrateur commence par créer des sessions sur un ordinateur distant et exécuter un script dans la session. La première commande utilise l’applet New-PSSession de commande pour créer la ITTask session sur l’ordinateur distant Server01. La commande utilise le paramètre ConfigurationName pour spécifier la configuration de session ITTasks . La commande enregistre les sessions dans la $s variable.

Deuxième applet de commande Invoke-Command pour démarrer un travail en arrière-plan dans la session dans la $s variable. Il utilise le paramètre FilePath pour exécuter le script dans le travail en arrière-plan.

La troisième commande utilise l’applet Disconnect-PSSession de commande pour se déconnecter de la session dans la $s variable. La commande utilise le paramètre OutputBufferingMode avec la valeur d’empêcher Drop le script d’être bloqué en ayant à remettre la sortie à la session. Il utilise le paramètre IdleTimeoutSec pour étendre le délai d’expiration de session à 15 heures. Une fois la commande terminée, l’administrateur verrouille son ordinateur et rentre à la maison pour la soirée.

Plus tard ce soir-là, l’administrateur démarre son ordinateur personnel, se connecte au réseau d’entreprise et démarre PowerShell. La quatrième commande utilise l’applet Get-PSSession de commande pour obtenir les sessions sur l’ordinateur Server01. La commande recherche la ITTask session. La cinquième commande utilise l’applet Connect-PSSession de commande pour se connecter à la ITTask session. La commande enregistre la session dans la variable $s.

La sixième commande utilise l’applet Invoke-Command de commande pour exécuter une Get-Job commande dans la session dans la $s variable. La sortie indique que le travail s’est terminé correctement. La septième commande utilise l’applet Invoke-Command de commande pour exécuter une Receive-Job commande dans la session dans la $s variable de la session. La commande enregistre les résultats dans la $BackupSpecs variable. La huitième commande utilise l’applet Invoke-Command de commande pour exécuter un autre script dans la session. La commande utilise la valeur de la $BackupSpecs variable dans la session comme entrée dans le script.

$s = New-PSSession -ComputerName Server01 -Name ITTask -ConfigurationName ITTasks
Invoke-Command -Session $s -ScriptBlock {Start-Job -FilePath \\Server30\Scripts\Backup-SQLDatabase.ps1}

Id     Name            State         HasMoreData     Location             Command
--     ----            -----         -----------     --------             -------
2      Job2            Running       True            Server01             \\Server30\Scripts\Backup...

Disconnect-PSSession -Session $s -OutputBufferingMode Drop -IdleTimeoutSec 60*60*15

Id Name            ComputerName    State         ConfigurationName     Availability
-- ----            ------------    -----         -----------------     ------------
 1 ITTask          Server01        Disconnected  ITTasks               None

Get-PSSession -ComputerName Server01 -Name ITTask

Id Name            ComputerName    State         ConfigurationName     Availability
-- ----            ------------    -----         -----------------     ------------
 1 ITTask          Server01        Disconnected  ITTasks               None

$s = Connect-PSSession -ComputerName Server01 -Name ITTask

Id Name            ComputerName    State         ConfigurationName     Availability
-- ----            ------------    -----         -----------------     ------------
 1 ITTask          Server01        Opened        ITTasks               Available

Invoke-Command -Session $s -ScriptBlock {Get-Job}

Id     Name            State         HasMoreData     Location             Command
--     ----            -----         -----------     --------             -------
2      Job2            Completed     True            Server01             \\Server30\Scripts\Backup...

Invoke-Command -Session $s -ScriptBlock {$BackupSpecs = Receive-Job -JobName Job2}
Invoke-Command -Session $s -ScriptBlock {\\Server30\Scripts\New-SQLDatabase.ps1 -InitData $BackupSpecs.Initialization}
Disconnect-PSSession -Session $s -OutputBufferingMode Drop -IdleTimeoutSec 60*60*15

Id Name            ComputerName    State         ConfigurationName     Availability
-- ----            ------------    -----         -----------------     ------------
 1 ITTask          Server01        Disconnected  ITTasks               None

La neuvième commande se déconnecte de la session dans la $s variable. L’administrateur ferme PowerShell et ferme l’ordinateur. Elle peut se reconnecter à la session le lendemain et vérifier l’état du script à partir de son ordinateur professionnel.

Paramètres

-AllowRedirection

Indique que cette applet de commande autorise la redirection de cette connexion vers un AUTRE URI.

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 lui permettre de rediriger la connexion.

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

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

-ApplicationName

Spécifie le nom d’une application. Cette applet de commande se connecte uniquement aux sessions qui utilisent l’application spécifiée.

Entrez le segment de nom d'application de l'URI de connexion. Par exemple, dans l’URI de connexion suivant, le nom de l’application est WSMan : http://localhost:5985/WSMAN. Le nom de l’application d’une session est stocké dans la propriété Runspace.ConnectionInfo.AppName de la session.

La valeur de ce paramètre est utilisée pour sélectionner et filtrer les sessions. Elle ne modifie pas l'application utilisée par la session.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Authentication

Spécifie le mécanisme utilisé pour authentifier les informations d’identification de l’utilisateur dans la commande pour se reconnecter à la session déconnectée. Les valeurs valides pour ce paramètre sont :

  • 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, consultez AuthenticationMechanism, énumération.

Attention

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é 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
Valeurs acceptées:Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos
Position:Named
Valeur par défaut:None
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 qui a l'autorisation de se connecter à la session déconnectée. Entrez l’empreinte numérique du certificat.

Les certificats sont utilisés dans l'authentification par certificat 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 une ou Get-ChildItem une Get-Item commande dans le lecteur PowerShellCert:.

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 les ordinateurs sur lesquels sont stockées les sessions déconnectées. Les sessions sont stockées sur l’ordinateur qui se trouve côté serveur ou à la fin de réception d’une connexion. La valeur par défaut est l'ordinateur local.

Tapez le nom NetBIOS, une adresse IP ou un nom de domaine complet d'un ordinateur. Les caractères génériques ne sont pas autorisés. Pour spécifier l’ordinateur local, tapez le nom de l’ordinateur, localhostou un point (.)

Type:String[]
Alias:Cn
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ConfigurationName

Se connecte uniquement à des sessions qui utilisent la configuration de session spécifiée.

Entrez un nom de configuration ou l'URI de ressource complet d'une configuration de session. Si vous spécifiez uniquement le nom de configuration, l’URI de schéma suivant est prédéfini : http://schemas.microsoft.com/powershell. Le nom de configuration d’une session est stocké dans la propriété ConfigurationName de la session.

La valeur de ce paramètre est utilisée pour sélectionner et filtrer les sessions. Elle ne modifie pas la configuration de session utilisée par la session.

Pour plus d'informations sur les configurations de session, consultez about_Session_Configurations.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Confirm

Vous demande une confirmation avant d’exécuter l’applet de commande.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ConnectionUri

Spécifie les URI des points de terminaison de connexion pour les sessions déconnectées.

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 d’URI de connexion, vous pouvez utiliser les paramètres UseSSL et Port pour spécifier les valeurs d’URI de connexion.

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 standards : 80 pour HTTP et 443 pour HTTPS. Pour utiliser les ports par défaut pour la communication à distance PowerShell, spécifiez le port 5985 http ou 5986 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.

Type:Uri[]
Alias:URI, CU
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Credential

Spécifie un compte d'utilisateur qui a l'autorisation de se connecter à la session déconnectée. 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 Get-Credential de commande. 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 SecureString , consultez Comment secure is SecureString ?.

Type:PSCredential
Position:Named
Valeur par défaut:Current user
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Id

Spécifie les ID des sessions déconnectées. Le paramètre ID fonctionne uniquement lorsque la session déconnectée a été précédemment connectée à la session active.

Ce paramètre est valide, mais il est sans effet si la session est stockée sur l'ordinateur local sans avoir été connectée à la session active.

Type:Int32[]
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-InstanceId

Spécifie les ID d'instance des sessions déconnectées.

L’ID d’instance est un GUID qui identifie de manière unique une session PSSession sur un ordinateur local ou distant.

L’ID d’instance est stocké dans la propriété InstanceID de la session PSSession.

Type:Guid[]
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Name

Spécifie les noms conviviaux des sessions déconnectées.

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

-Port

Spécifie le port réseau sur l'ordinateur distant qui est utilisé pour se reconnecter à la session. 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 qu'il écoute sur ce port. Pour configurer l’écouteur, tapez les deux commandes suivantes à l’invite PowerShell :

Remove-Item -Path WSMan:\Localhost\listener\listener* -Recurse

New-Item -Path WSMan:\Localhost\listener -Transport http -Address * -Port \<port-number\>

N’utilisez pas le paramètre Port , sauf si vous devez. Le port défini dans la commande s'applique à tous les ordinateurs ou toutes les sessions sur lesquelles la commande s'exécute. Un autre paramètre de port peut empêcher la commande de s'exécuter sur tous les ordinateurs.

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

-Session

Spécifie les sessions déconnectées. Entrez une variable qui contient les objets PSSession ou une commande qui crée ou obtient les objets PSSession , tels qu’une Get-PSSession commande.

Type:PSSession[]
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques: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 New-PSSessionOption de commande, 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 $PSSessionOption variable de préférence, 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 $PSSessionOption variable de préférence et dans la configuration de session. Elles ne sont cependant 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 inclut 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.

Type:PSSessionOption
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques: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, la valeur par défaut, 32est utilisée.

La limite d'accélération s'applique uniquement à la commande actuelle, et non à la session ou à l'ordinateur.

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

-UseSSL

Indique que cette applet de commande utilise le protocole SSL (Secure Sockets Layer) pour se connecter à la session déconnectée. Par défaut, SSL n'est pas utilisé.

WS-Management chiffre tout le contenu PowerShell transmis sur le réseau. Le paramètre UseSSL est une protection supplémentaire qui envoie les données sur 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.

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

-WhatIf

Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

PSSession

Vous pouvez diriger une session (PSSession) vers cette applet de commande.

Sorties

PSSession

Cette applet de commande retourne un objet qui représente la session à laquelle elle s’est reconnectée.

Notes

Windows PowerShell inclut les alias suivants pour Connect-PSSession:

  • cnsn

  • Cette applet de commande est disponible uniquement sur les plateformes Windows.

  • Connect-PSSession se reconnecte uniquement aux sessions déconnectées, c’est-à-dire aux sessions qui ont la valeur Disconnected pour la propriété State . Seules les sessions connectées aux ordinateurs qui exécutent Windows PowerShell 3.0 ou version ultérieure peuvent être déconnectées et reconnectées.

  • Si vous utilisez Connect-PSSession sur une session qui n’est pas déconnectée, la commande n’affecte pas la session et ne génère pas d’erreurs.

  • Les sessions de bouclage déconnectées avec des jetons interactifs 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. Cette restriction protège l'ordinateur contre tout accès malveillant.

  • La valeur de la propriété State d’une session PSSession est relative à la session active. Par conséquent, une valeur de Disconnected signifie que la session PSSession n’est pas connectée à la session active. Toutefois, cela ne signifie pas que la session PSSession est déconnectée de toutes les sessions. Elle peut être connectée à une autre session. Pour déterminer si vous pouvez vous connecter ou vous reconnecter à la session, utilisez la propriété Availability .

    Une valeur de disponibilité de None indique que vous pouvez vous connecter à la session. La valeur Busy indique que vous ne pouvez pas vous connecter à la session PSSession , car elle est connectée à une autre session.

    Pour plus d’informations sur les valeurs de la propriété State des sessions, consultez l’énumération RunspaceState.

    Pour plus d’informations sur les valeurs de la propriété Availability des sessions, consultez RunspaceAvailability, énumération.

  • Vous ne pouvez pas modifier la valeur de délai d’inactivité d’une session PSSession lorsque vous vous connectez à la session PSSession. Le paramètre SessionOption de Connect-PSSession prend un objet SessionOption qui a une valeur IdleTimeout. Toutefois, la valeur IdleTimeout de l’objet SessionOption et la valeur IdleTimeout de la variable sont ignorées lors de la $PSSessionOption connexion à une session PSSession.

    Vous pouvez définir et modifier le délai d’inactivité d’une session PSSession lorsque vous créez la session PSSession, à l’aide des New-PSSession ou Invoke-Command applets de commande, et lorsque vous vous déconnectez de la session PSSession.

    La propriété IdleTimeout d’une session PSSession est essentielle pour les sessions déconnectées, car elle détermine la durée pendant laquelle une session déconnectée est conservée sur l’ordinateur distant. Une session déconnectée est considérée comme inactive dès qu'elle est déconnectée, même si elle comprend des commandes en cours d'exécution.