Connect-PSSession
Stellt die Verbindung mit getrennten Sitzungen wieder her.
Syntax
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>]
Beschreibung
Das Cmdlet Connect-PSSession stellt wieder eine Verbindung mit benutzerseitig verwalteten Windows PowerShell Sitzungen (PSSessions) her, die getrennt wurden. Es funktioniert für Sitzungen, die absichtlich getrennt werden, z. B. mithilfe des cmdlets Disconnect-PSSession oder des InDisconnectedSession-Parameters des Invoke-Command-Cmdlets, und bei Sitzungen, die unbeabsichtigt getrennt wurden, z. B. durch einen temporären Netzwerkausfall.
Connect-PSSession kann eine Verbindung mit jeder getrennten Sitzung herstellen, die vom gleichen Benutzer gestartet wurde. Dazu gehören diejenigen, die von anderen Sitzungen auf anderen Computern gestartet oder getrennt wurden.
Connect-PSSession kann jedoch keine Verbindung mit fehlerhaften oder geschlossenen Sitzungen oder interaktiven Sitzungen herstellen, die mithilfe des Cmdlets Enter-PSSession gestartet wurden. Sie können auch keine Sitzungen mit Sitzungen verbinden, die von anderen Benutzern gestartet wurden, es sei denn, Sie geben die Anmeldeinformationen des Benutzers an, der die Sitzung erstellt hat.
Weitere Informationen zum Feature „Getrennte Sitzungen“ finden Sie unter about_Remote_Disconnected_Sessions.
Dieses Cmdlet wurde in Windows PowerShell 3.0 eingeführt.
Beispiele
Beispiel 1: Erneutes Herstellen einer Verbindung mit einer Sitzung
PS C:\> Connect-PSSession -ComputerName Server01 -Name ITTask
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
4 ITTask Server01 Opened ITTasks Available
Mit diesem Befehl wird die Verbindung mit der ITTask-Sitzung auf dem Computer Server01 wiederhergestellt.
Die Ausgabe zeigt, dass der Befehl erfolgreich ausgeführt wurde. Der Zustand der Sitzung ist Geöffnet und die Verfügbarkeit ist Verfügbar. Dies bedeutet, dass Sie Befehle in der Sitzung ausführen können.
Beispiel 2: Auswirkung der Trennung und der erneuten Verbindung
PS C:\> Get-PSSession
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 Backups Localhost Opened Microsoft.PowerShell Available
PS C:\> Get-PSSession | Disconnect-PSSession
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 Backups Localhost Disconnected Microsoft.PowerShell None
PS C:\> Get-PSSession | Connect-PSSession
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 Backups Localhost Opened Microsoft.PowerShell Available
Dieses Beispiel zeigt die Auswirkungen des Trennens und Neuverbindens einer Sitzung.
Der erste Befehl verwendet das Cmdlet Get-PSSession. Ohne den ComputerName-Parameter ruft der Befehl nur Sitzungen ab, die in der aktuellen Sitzung erstellt wurden.
Die Ausgabe zeigt, dass mit dem Befehl die Sitzung „Backups“ auf dem lokalen Computer abgerufen wird. Der Zustand der Sitzung ist Geöffnet, und die Verfügbarkeit ist verfügbar.
Der zweite Befehl verwendet das Cmdlet Get-PSSession , um die PSSession-Objekte abzurufen, die in der aktuellen Sitzung erstellt wurden, und das Cmdlet Disconnect-PSSession , um die Sitzungen zu trennen. Die Ausgabe zeigt, dass, die Sitzung „Backups“ getrennt wurde. Der Zustand der Sitzung ist getrennt, und die Verfügbarkeit ist Keine.
Der dritte Befehl verwendet das Cmdlet Get-PSSession , um die PSSession-Objekte abzurufen, die in der aktuellen Sitzung erstellt wurden, und das Cmdlet Connect-PSSession , um die Sitzungen wiederherzustellen. Die Ausgabe zeigt, dass, die Sitzung „Backups“ neu verbunden wurde. Der Zustand der Sitzung ist Geöffnet, und die Verfügbarkeit ist verfügbar.
Wenn Sie das Cmdlet Connect-PSSession für eine Sitzung verwenden, die nicht getrennt ist, wirkt sich der Befehl nicht auf die Sitzung aus und generiert keine Fehler.
Beispiel 3: Reihe von Befehlen in einem Unternehmensszenario
The administrator starts by creating a sessions on a remote computer and running a script in the session.The first command uses the **New-PSSession** cmdlet to create the ITTask session on the Server01 remote computer. The command uses the *ConfigurationName* parameter to specify the ITTasks session configuration. The command saves the sessions in the $s variable.
PS C:\> $s = New-PSSession -ComputerName Server01 -Name ITTask -ConfigurationName ITTasks
The second command **Invoke-Command** cmdlet to start a background job in the session in the $s variable. It uses the *FilePath* parameter to run the script in the background job.
PS C:\> Invoke-Command -Session $s {Start-Job -FilePath \\Server30\Scripts\Backup-SQLDatabase.ps1}
Id Name State HasMoreData Location Command
-- ---- ----- ----------- -------- -------
2 Job2 Running True Server01 \\Server30\Scripts\Backup...
The third command uses the Disconnect-PSSession cmdlet to disconnect from the session in the $s variable. The command uses the *OutputBufferingMode* parameter with a value of Drop to prevent the script from being blocked by having to deliver output to the session. It uses the *IdleTimeoutSec* parameter to extend the session time-out to 15 hours.When the command is completed, the administrator locks her computer and goes home for the evening.
PS C:\> Disconnect-PSSession -Session $s -OutputBufferingMode Drop -IdleTimeoutSec 60*60*15
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 ITTask Server01 Disconnected ITTasks None
Later that evening, the administrator starts her home computer, logs on to the corporate network, and starts Windows PowerShell. The fourth command uses the Get-PSSession cmdlet to get the sessions on the Server01 computer. The command finds the ITTask session.The fifth command uses the **Connect-PSSession** cmdlet to connect to the ITTask session. The command saves the session in the $s variable.
PS C:\> Get-PSSession -ComputerName Server01 -Name ITTask
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 ITTask Server01 Disconnected ITTasks None
PS C:\> $s = Connect-PSSession -ComputerName Server01 -Name ITTask
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 ITTask Server01 Opened ITTasks Available
The sixth command uses the **Invoke-Command** cmdlet to run a Get-Job command in the session in the $s variable. The output shows that the job finished successfully.The seventh command uses the **Invoke-Command** cmdlet to run a Receive-Job command in the session in the $s variable in the session. The command saves the results in the $BackupSpecs variable.The eighth command uses the **Invoke-Command** cmdlet to runs another script in the session. The command uses the value of the $BackupSpecs variable in the session as input to the script.
PS C:\> Invoke-Command -Session $s {Get-Job}
Id Name State HasMoreData Location Command
-- ---- ----- ----------- -------- -------
2 Job2 Completed True Server01 \\Server30\Scripts\Backup...
PS C:\> Invoke-Command -Session $s {$BackupSpecs = Receive-Job -JobName Job2}
PS C:\> Invoke-Command -Session $s {\\Server30\Scripts\New-SQLDatabase.ps1 -InitData $BackupSpecs.Initialization}
The ninth command disconnects from the session in the $s variable.The administrator closes Windows PowerShell and closes the computer. She can reconnect to the session on the next day and check the script status from her work computer.
PS C:\> Disconnect-PSSession -Session $s -OutputBufferingMode Drop -IdleTimeoutSec 60*60*15
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 ITTask Server01 Disconnected ITTasks None
Diese Reihe von Befehlen zeigt, wie das Connect-PSSession-Cmdlet in einem Unternehmensszenario verwendet werden kann. In diesem Fall startet ein Systemadministrator einen Auftrag mit langer Ausführungszeit in einer Sitzung auf einem Remotecomputer. Nach dem Starten des Auftrags trennt der Administrator die Verbindung mit der Sitzung und kann nach Hause gehen. Später am Abend meldet sich der Administrator bei ihrem Heimcomputer an und überprüft, ob der Auftrag ausgeführt wurde, bis er abgeschlossen ist.
Parameter
-AllowRedirection
Gibt an, dass dieses Cmdlet die Umleitung dieser Verbindung zu einem alternativen URI zulässt.
Bei Verwendung des ConnectionURI-Parameters kann das Remoteziel eine Anweisung zum Umleiten an einen anderen URI zurückgeben. Standardmäßig erfolgt mit Windows PowerShell keine Umleitung von Verbindungen, Sie können jedoch mit diesem Parameter die Umleitung von Verbindungen zulassen.
Sie können auch einschränken, wie oft die Verbindung umgeleitet wird, indem Sie den MaximumConnectionRedirectionCount-Optionswert der Sitzung ändern. Verwenden Sie den Parameter MaximumRedirection des cmdlets New-PSSessionOption, oder legen Sie die MaximumConnectionRedirectionCount-Eigenschaft der $PSSessionOption Einstellungsvariablen fest. Der Standardwert ist 5.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ApplicationName
Gibt den Namen einer Anwendung an. Dieses Cmdlet stellt nur eine Verbindung mit Sitzungen her, die die angegebene Anwendung verwenden.
Geben Sie das Anwendungsnamensegment des Verbindungs-URI ein.
Im folgenden Verbindungs-URI lautet der Anwendungsname beispielsweise WSMan: https://localhost:5985/WSMAN
.
Der Anwendungsname einer Sitzung wird in der Runspace.ConnectionInfo.AppName-Eigenschaft der Sitzung gespeichert.
Der Wert dieses Parameters wird verwendet, um Sitzungen auszuwählen und zu filtern. Er ändert nicht die von der Sitzung verwendete Anwendung.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Authentication
Gibt den Mechanismus an, der zum Authentifizieren von Benutzeranmeldeinformationen im Befehl verwendet wird, um die Verbindung mit der getrennten Sitzung wiederherzustellen. Zulässige Werte für diesen Parameter:
- Standard
- Basic
- Credssp
- Digest
- Kerberos
- Aushandeln
- NegotiateWithImplicitCredential
Der Standardwert ist Default.
Weitere Informationen zu den Werten dieses Parameters finden Sie unter AuthenticationMechanism Enumeration in der MSDN Library.
Achtung: Die CredSSP-Authentifizierung (Credential Security Support Provider), bei der die Anmeldeinformationen des Benutzers an einen Remotecomputer übergeben werden, um authentifiziert zu werden, ist für Befehle konzipiert, die eine Authentifizierung für mehr als eine Ressource erfordern, z. B. den Zugriff auf eine Remotenetzwerkfreigabe. Dieser Mechanismus erhöht das Sicherheitsrisiko des Remotevorgangs. Wenn die Sicherheit des Remotecomputers gefährdet ist, können die an ihn übergebenen Anmeldeinformationen zum Steuern der Netzwerksitzung verwendet werden.
Type: | AuthenticationMechanism |
Accepted values: | Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CertificateThumbprint
Gibt das digitale Zertifikat für öffentliche Schlüssel (X.509) eines Benutzerkontos mit der Berechtigung zum Herstellen einer Verbindung mit der getrennten Sitzung an. Geben Sie den Zertifikatfingerabdruck des Zertifikats ein.
Zertifikate werden bei der clientzertifikatbasierten Authentifizierung verwendet. Sie können nur lokalen Benutzerkonten zugeordnet werden. Sie funktionieren nicht mit Domänenkonten.
Verwenden Sie zum Abrufen eines Zertifikatfingerabdrucks den Befehl Get-Item oder Get-ChildItem im Windows PowerShell-Certificat:-Laufwerk.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
Gibt die Computer an, auf denen die Sitzungen gespeichert sind. Sitzungen werden auf dem Computer gespeichert, der sich auf der Serverseite befindet oder das Ende einer Verbindung empfängt. Die Standardeinstellung ist der lokale Computer.
Geben Sie den NetBIOS-Namen, eine IP-Adresse oder einen vollqualifizierten Domänennamen eines Computers ein. Platzhalterzeichen sind nicht zulässig. Geben Sie zum Angeben des lokalen Computers den Computernamen, localhost oder einen Punkt (.) ein.
Type: | String[] |
Aliases: | Cn |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ConfigurationName
Stellt nur eine Verbindung mit Sitzungen her, die die angegebene Sitzungskonfiguration verwenden.
Geben Sie einen Konfigurationsnamen oder den vollqualifizierten Ressourcen-URI für eine Sitzungskonfiguration ein.
Wenn Sie nur den Konfigurationsnamen angeben, wird der folgende Schema-URI vorangestellt: https://schemas.microsoft.com/powershell
.
Der Konfigurationsname einer Sitzung befindet sich in der ConfigurationName-Eigenschaft der Sitzung.
Der Wert dieses Parameters wird verwendet, um Sitzungen auszuwählen und zu filtern. Er ändert nicht die von der Sitzung verwendete Sitzungskonfiguration.
Weitere Informationen zu Sitzungskonfigurationen finden Sie unter about_Session_Configurations.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Confirm
Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ConnectionUri
Gibt die URIs der Verbindungsendpunkte für die getrennten Sitzungen an.
Der URI muss vollqualifiziert sein. Das Format dieser Zeichenfolge lautet wie folgt:
\<Transport\>://\<ComputerName\>:\<Port\>/\<ApplicationName\>
Der Standardwert lautet:
https://localhost:5985/WSMAN
Wenn Sie keinen Verbindungs-URI angeben, können Sie die Parameter UseSSL und Port verwenden, um die Verbindungs-URI-Werte anzugeben.
Gültige Werte für das Transport-Segment des URI sind „HTTP“ und „HTTPS“. Wenn Sie einen Verbindungs-URI mit einem Transportsegment angeben, aber keinen Port angeben, wird die Sitzung mit den Standardsports 80 für HTTP und 443 für HTTPS erstellt. Um die Standardports für Windows PowerShell-Remoting zu verwenden, geben Sie Port 5985 für HTTP bzw. 5986 für HTTPS an.
Wenn der Zielcomputer die Verbindung an einen anderen URI umleitet, verhindert Windows PowerShell die Umleitung, sofern Sie nicht den AllowRedirection-Parameter im Befehl verwenden.
Type: | Uri[] |
Aliases: | URI, CU |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Credential
Gibt ein Benutzerkonto mit der Berechtigung zum Herstellen einer Verbindung mit der getrennten Sitzung an. Der Standardwert ist der aktuelle Benutzer.
Geben Sie einen Benutzernamen ein, z. B. „User01“ oder „Domain01\User01“. Oder geben Sie ein PSCredential-Objekt ein, z. B. ein objekt, das vom Cmdlet Get-Credential generiert wird. Wenn Sie einen Benutzernamen eingeben, werden Sie von diesem Cmdlet zur Eingabe eines Kennworts aufgefordert.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Id
Gibt die IDs der getrennten Sitzungen an. Der Id-Parameter funktioniert nur, wenn die getrennte Sitzung zuvor mit der aktuellen Sitzung verbunden war.
Dieser Parameter ist gültig, aber nicht wirksam, wenn die Sitzung auf dem lokalen Computer gespeichert ist, aber nicht mit der aktuellen Sitzung verbunden wurde.
Type: | Int32[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-InstanceId
Gibt die Instanz-IDs von getrennten Sitzungen an.
Die instance-ID ist eine GUID, die eine PSSession auf einem lokalen oder Remotecomputer eindeutig identifiziert.
Die instance-ID wird in der InstanceID-Eigenschaft der PSSession gespeichert.
Type: | Guid[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Gibt die Anzeigenamen von getrennten Sitzungen an.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Port
Gibt den Netzwerkport auf dem Remotecomputer an, der für die Verbindungswiederherstellung mit der Sitzung verwendet wird. Zum Herstellen einer Verbindung mit einem Remotecomputer muss der Remotecomputer den für die Verbindung verwendeten Port abhören. Die Standardports sind 5985, d. h. der WinRM-Port für HTTP, und 5986, der WinRM-Port für HTTPS.
Bevor ein alternativer Port verwendet werden kann, müssen Sie den WinRM-Listener auf dem Remotecomputer für das Abhören an diesen Port konfigurieren. Um den Listener zu konfigurieren, geben Sie die folgenden beiden Befehle an der Windows PowerShell-Eingabeaufforderung ein:
Remove-Item -Path WSMan:\Localhost\listener\listener* -Recurse
New-Item -Path WSMan:\Localhost\listener -Transport http -Address * -Port \<port-number\>
Verwenden Sie den Port-Parameter nur, wenn es unbedingt notwendig ist. Der im Befehl festgelegte Port gilt für alle Computer oder Sitzungen, für die der Befehl ausgeführt wird. Eine alternative Porteinstellung kann verhindern, dass der Befehl auf allen Computern ausgeführt wird.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Session
Gibt die getrennten Sitzungen an. Geben Sie eine Variable ein, die die PSSession-Objekte enthält, oder einen Befehl, der die PSSession-Objekte erstellt oder abruft, z. B. einen Get-PSSession-Befehl.
Type: | PSSession[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-SessionOption
Gibt erweiterte Optionen für die Sitzung an. Geben Sie ein SessionOption-Objekt ein, z. B. ein Objekt, das Sie mit dem Cmdlet New-PSSessionOption erstellen, oder eine Hashtabelle, in der die Schlüssel Sitzungsoptionsnamen sind und die Werte Sitzungsoptionswerte sind.
Die Standardwerte für die Optionen werden durch den Wert der $PSSessionOption-Einstellungsvariablen bestimmt, sofern festgelegt. Andernfalls werden die Standardwerte durch Optionen festgelegt, die in der Sitzungskonfiguration festgelegt sind.
Die Sitzungsoptionswerte haben Vorrang vor Standardwerten für Sitzungen, die in der $PSSessionOption-Einstellungsvariablen und in der Sitzungskonfiguration festgelegt sind. Allerdings haben sie nicht Vorrang vor Höchstwerten, Kontingenten oder Grenzwerten, die in der Sitzungskonfiguration festgelegt sind.
Eine Beschreibung der Sitzungsoptionen, die die Standardwerte enthält, finden Sie unter New-PSSessionOption. Informationen zur $PSSessionOption Einstellungsvariablen finden Sie unter about_Preference_Variables. Weitere Informationen zu Sitzungskonfigurationen finden Sie unter about_Session_Configurations.
Type: | PSSessionOption |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ThrottleLimit
Gibt die maximale Anzahl von gleichzeitigen Verbindungen an, die zum Ausführen dieses Befehls hergestellt werden können. Wenn Sie diesen Parameter weglassen oder den Wert %%amp;quot;0%%amp;quot; eingeben, wird der Standardwert %%amp;quot;32%%amp;quot; verwendet.
Die Drosselungsgrenze gilt nur für den aktuellen Befehl und nicht für die Sitzung oder den Computer.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseSSL
Gibt an, dass dieses Cmdlet das SSL-Protokoll (Secure Sockets Layer) verwendet, um eine Verbindung mit der getrennten Sitzung herzustellen. Standardmäßig wird SSL nicht verwendet.
WS-Management verschlüsselt alle Windows PowerShell-Inhalte, die über das Netzwerk übertragen werden. Der UseSSL-Parameter ist ein zusätzlicher Schutz, der die Daten über eine HTTPS-Verbindung anstelle einer HTTP-Verbindung sendet.
Wenn Sie diesen Parameter verwenden, ssl jedoch nicht auf dem Port verfügbar ist, der für den Befehl verwendet wird, schlägt der Befehl fehl.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Eingaben
Sie können eine Sitzung (PSSession) an dieses Cmdlet übergeben.
Ausgaben
Dieses Cmdlet gibt ein -Objekt zurück, das die Sitzung darstellt, mit der es erneut eine Verbindung hergestellt hat.
Hinweise
Connect-PSSession stellt nur wieder eine Verbindung mit getrennten Sitzungen her, d. h. mit Sitzungen, die für die State-Eigenschaft den Wert Disconnected aufweisen. Nur Sitzungen, die mit Computern verbunden sind oder auf denen Windows PowerShell 3.0 oder höhere Versionen ausgeführt werden, können getrennt und wiederhergestellt werden.
Wenn Sie Connect-PSSession für eine Sitzung verwenden, die nicht getrennt ist, wirkt sich der Befehl nicht auf die Sitzung aus und generiert keine Fehler.
Getrennte Loopbacksitzungen mit interaktiven Token, die mithilfe des EnableNetworkAccess-Parameters erstellt werden, können nur von dem Computer wiederhergestellt werden, auf dem die Sitzung erstellt wurde. Diese Einschränkung schützt den Computer vor böswilligem Zugriff.
Der Wert der State-Eigenschaft einer PSSession ist relativ zur aktuellen Sitzung. Daher bedeutet der Wert Disconnected , dass die PSSession nicht mit der aktuellen Sitzung verbunden ist. Dies bedeutet jedoch nicht, dass die PSSession von allen Sitzungen getrennt ist. Sie kann mit einer anderen Sitzung verbunden sein. Um festzustellen, ob Sie eine Sitzungsverbindung herstellen bzw. wiederherstellen können, verwenden Sie die Availability-Eigenschaft.
Ein Availability-Wert von None gibt an, dass eine Verbindung mit der Sitzung hergestellt werden kann. Der Wert Beschäftigt gibt an, dass Sie keine Verbindung mit der PSSession herstellen können, da sie mit einer anderen Sitzung verbunden ist.
Weitere Informationen zu den Werten der State-Eigenschaft von Sitzungen finden Sie unter RunspaceState Enumeration in der MSDN Library.
Weitere Informationen zu den Werten der Availability-Eigenschaft von Sitzungen finden Sie unter RunspaceAvailability Enumeration in der MSDN Library.
Sie können den Leerlauftimeoutwert einer PSSession nicht ändern, wenn Sie eine Verbindung mit der PSSession herstellen. Der SessionOption-Parameter von Connect-PSSession benötigt ein SessionOption-Objekt, das einen IdleTimeout-Wert hat. Der IdleTimeout-Wert des SessionOption-Objekts und der IdleTimeout-Wert der $PSSessionOption Variablen werden jedoch ignoriert, wenn eine Verbindung mit einer PSSession hergestellt wird.
Sie können das Leerlauftimeout einer PSSession festlegen und ändern, wenn Sie die PSSession erstellen, indem Sie die Cmdlets New-PSSession oder Invoke-Command verwenden und die Verbindung mit der PSSession trennen.
Die IdleTimeout-Eigenschaft einer PSSession ist für getrennte Sitzungen von entscheidender Bedeutung, da sie bestimmt, wie lange eine getrennte Sitzung auf dem Remotecomputer verwaltet wird. Getrennte Sitzungen gelten vom Moment ihrer Trennung an als im Leerlauf, selbst wenn Befehle in der getrennten Sitzung ausgeführt werden.
Ähnliche Themen
- Disconnect-PSSession
- Enter-PSSession
- Exit-PSSession
- Get-PSSession
- Get-PSSessionConfiguration
- New-PSSession
- New-PSSessionOption
- New-PSTransportOption
- Receive-PSSession
- Register-PSSessionConfiguration
- Remove-PSSession
- about_PSSessions
- about_Remote
- about_Remote_Disconnected_Sessions
- about_Session_Configurations