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>]
-InstanceId <Guid[]>
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[-Port <Int32>]
[-UseSSL]
[-SessionOption <PSSessionOption>]
[-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
[-ConfigurationName <String>]
[-ConnectionUri] <Uri[]>
[-AllowRedirection]
-InstanceId <Guid[]>
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[-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
-InstanceId <Guid[]>
[-ThrottleLimit <Int32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Connect-PSSession
[-ThrottleLimit <Int32>]
[-Id] <Int32[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Cette applet de commande est disponible uniquement sur la plateforme Windows.
L’applet de commande Connect-PSSession
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 de commande Disconnect-PSSession
ou du paramètre InDisconnectedSession de l’applet de commande Invoke-Command
, et ceux qui ont été déconnectés involontairement, par exemple par une panne réseau temporaire.
Connect-PSSession
pouvez vous 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 commande Enter-PSSession
. Vous ne pouvez pas également connecter des sessions à des sessions démarrées par d’autres utilisateurs, 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 session ITTask
sur l’ordinateur Server01.
La sortie indique que la commande a réussi. L'd’état de de la session est Opened
et le disponibilité est Available
, ce qui indique que 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, puis de la reconnexion à une session.
La première commande utilise l’applet de commande Get-PSSession
. 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 session Backups
sur l’ordinateur local. Le d’état de la session est Opened
et le de disponibilité est Available
.
La deuxième commande utilise l’applet de commande Get-PSSession
pour obtenir les objets PSSession créés dans la session active et l’applet de commande Disconnect-PSSession
pour déconnecter les sessions. La sortie indique que la session Backups
a été déconnectée. Le d’état de la session est Disconnected
et le de disponibilité est None
.
La troisième commande utilise l’applet de commande Get-PSSession
pour obtenir les objets PSSession créés dans la session active et l’applet de commande Connect-PSSession
pour reconnecter les sessions. La sortie indique que la session Backups
a été reconnectée. Le d’état de la session est Opened
et le de disponibilité est Available
.
Si vous utilisez l’applet de commande Connect-PSSession
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 de commande Connect-PSSession
peut être utilisée dans un scénario d’entreprise. Dans ce cas, un administrateur système démarre un travail de longue durée dans une session sur un ordinateur distant. Après avoir démarré le travail, 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 de commande New-PSSession
pour créer la session ITTask
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 variable $s
.
La deuxième commande Invoke-Command
cmdlet pour démarrer un travail en arrière-plan dans la session dans la variable $s
. 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 de commande Disconnect-PSSession
pour se déconnecter de la session dans la variable $s
. La commande utilise le paramètre OutputBufferingMode avec une valeur de Drop
pour empêcher 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 la 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 de commande Get-PSSession
pour obtenir les sessions sur l’ordinateur Server01. La commande recherche la session ITTask
. La cinquième commande utilise l’applet de commande Connect-PSSession
pour se connecter à la session ITTask
. La commande enregistre la session dans la variable $s
.
La sixième commande utilise l’applet de commande Invoke-Command
pour exécuter une commande Get-Job
dans la session dans la variable $s
. La sortie indique que le travail s’est terminé correctement. La septième commande utilise l’applet de commande Invoke-Command
pour exécuter une commande Receive-Job
dans la session dans la variable $s
dans la session. La commande enregistre les résultats dans la variable $BackupSpecs
. La huitième commande utilise l’applet de commande Invoke-Command
pour exécuter un autre script dans la session. La commande utilise la valeur de la variable $BackupSpecs
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 variable $s
. 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 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
.
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 des 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 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, consultez 'énumération AuthenticationMechanism.
Prudence
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.
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 autorisé à se connecter à la session déconnectée. 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 une commande Get-Item
ou Get-ChildItem
dans le lecteur 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 les ordinateurs sur lesquels les sessions déconnectées sont stocké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, localhost
ou un point (.
)
Type: | String[] |
Alias: | Cn |
Position: | Named |
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 aux sessions qui utilisent la configuration de session spécifiée.
Entrez un nom de configuration ou l’URI de ressource complet 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
. 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 des 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 invite à confirmer 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 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.
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 autorisé à 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 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.
Note
Pour plus d’informations sur SecureString la protection des données, 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 pas effectif, lorsque la session est stockée sur l’ordinateur local, mais n’a pas é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 un psSession sur un ordinateur local ou distant.
L’ID d’instance est stocké dans la propriété InstanceId du 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 utilisé pour se reconnecter à la session. Pour vous connecter à 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. 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 de port, sauf si vous devez. Le port défini 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.
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 commande Get-PSSession
.
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 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.
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, 32
, est utilisée.
La limite de limitation 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
Affiche ce qui se passerait si l’applet de commande s’exécute. 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
Vous pouvez diriger une session (psSession) vers cette applet de commande.
Sorties
Cette applet de commande retourne un objet qui représente la session à laquelle elle s’est reconnectée.
Notes
PowerShell inclut les alias suivants pour Connect-PSSession
:
Windows:
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 les 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, qui sont créées à l’aide du paramètre EnableNetworkAccess, ne peuvent être reconnectées qu’à partir de l’ordinateur sur lequel la session a été créée. Cette restriction protège l’ordinateur contre l’accès malveillant.
La valeur de la propriété State d’un PSSession est relative à la session active. Par conséquent, une valeur de déconnecté signifie que le PSSession n’est pas connecté à la session active. Toutefois, cela ne signifie pas que le PSSession est déconnecté de toutes les sessions. Il peut être connecté à une autre session. Pour déterminer si vous pouvez vous connecter ou vous reconnecter à la session, utilisez la propriété Availability.
Une valeur Availability none indique que vous pouvez vous connecter à la session. La valeur Busy indique que vous ne pouvez pas vous connecter au PSSession, car elle est connectée à une autre session.
Pour plus d’informations sur les valeurs de la propriété State des sessions, consultez 'énumération RunspaceState.
Pour plus d’informations sur les valeurs de la propriété Availability des sessions, consultez 'énumération RunspaceAvailability.
Vous ne pouvez pas modifier la valeur de délai d’inactivité d’une PSSession lorsque vous vous connectez au 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$PSSessionOption
sont ignorées lors de la connexion à un PSSession.Vous pouvez définir et modifier le délai d’inactivité d’un PSSession lorsque vous créez le PSSession, à l’aide des applets de commande
New-PSSession
ouInvoke-Command
, et lorsque vous vous déconnectez du PSSession.La propriété IdleTimeout d’un 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. Les sessions déconnectées sont considérées comme inactives à partir du moment où elles sont déconnectées, même si les commandes s’exécutent dans la session déconnectée.