New-PSTransportOption
Erstellt ein Objekt, das erweiterte Optionen für eine Sitzungskonfiguration enthält.
Syntax
Default (Standard)
New-PSTransportOption
[-MaxIdleTimeoutSec <Int32>]
[-ProcessIdleTimeoutSec <Int32>]
[-MaxSessions <Int32>]
[-MaxConcurrentCommandsPerSession <Int32>]
[-MaxSessionsPerUser <Int32>]
[-MaxMemoryPerSessionMB <Int32>]
[-MaxProcessesPerSession <Int32>]
[-MaxConcurrentUsers <Int32>]
[-IdleTimeoutSec <Int32>]
[-OutputBufferingMode <OutputBufferingMode>]
[<CommonParameters>]
Beschreibung
Das cmdlet New-PSTransportOption erstellt ein Objekt, das Transportoptionen für Sitzungskonfigurationen enthält. Sie können das Objekt als Wert des TransportOption- Parameters von Cmdlets verwenden, die eine Sitzungskonfiguration erstellen oder ändern, z. B. die Register-PSSessionConfiguration und Set-PSSessionConfiguration Cmdlets.
Sie können auch die Einstellungen für Transportoptionen ändern, indem Sie die Werte der Sitzungskonfigurationseigenschaften im Laufwerk „WSMan:“ bearbeiten. Weitere Informationen finden Sie unter WSMan-Anbieter.
Die Sitzungskonfigurationsoptionen stellen die Sitzungswerte dar, die auf Serverseite oder der empfangenden Seite einer Remoteverbindung festgelegt wurden. Die Clientseite (oder Sendeseite) der Verbindung kann die Sitzungsoptionswerte festlegen, wenn die Sitzung erstellt wird oder wenn der Client die Sitzungsverbindung trennt bzw. wiederherstellt. Sofern nicht anders angegeben, haben die clientseitigen Werte bei einem Wertekonflikt Vorrang. Die clientseitigen Werte können jedoch keine Maximalwerte und Kontingente verletzen, die in der Sitzungskonfiguration festgelegt sind.
Ohne Parameter generiert New-PSTransportOption ein Transportoptionsobjekt, das NULL-Werte für alle Optionen aufweist. Wenn Sie einen Parameter weglassen, weist das Objekt einen NULL-Wert für die Eigenschaft auf, die der Parameter darstellt. Ein Nullwert wirkt sich nicht auf die Sitzungskonfiguration aus.
Weitere Informationen zu Sitzungsoptionen finden Sie unter New-PSSessionOption. Weitere Informationen zu Sitzungskonfigurationen finden Sie unter about_Session_Configurations.
Dieses Cmdlet wurde in Windows PowerShell 3.0 eingeführt.
Beispiele
Beispiel 1: Generieren einer Standardtransportoption
PS C:\> New-PSTransportOption
ProcessIdleTimeoutSec :
MaxIdleTimeoutSec :
MaxSessions :
MaxConcurrentCommandsPerSession :
MaxSessionsPerUser :
MaxMemoryPerSessionMB :
MaxProcessesPerSession :
MaxConcurrentUsers :
IdleTimeoutSec :
OutputBufferingMode :
Mit diesem Befehl wird die New-PSTransportOption ohne Parameter ausgeführt. Die Ausgabe zeigt, dass das Cmdlet ein Transportoptionsobjekt generiert, das Nullwerte für alle Eigenschaften enthält.
Beispiel 2: Abrufen von Sitzungskonfigurationsoptionen
The first command uses the **New-PSTransportOption** cmdlet to create a transport options object, which it saves in the $t variable. The command uses the *MaxSessions* parameter to increase the maximum number of sessions to 40.
PS C:\> $t = New-PSTransportOption -MaxSessions 40
The second command uses the **Register-PSSessionConfiguration** cmdlet create the ITTasks session configuration. The command uses the *TransportOption* parameter to specify the transport options object in the $t variable.
PS C:\> Register-PSSessionConfiguration -Name ITTasks -TransportOption $t
The third command uses the Get-PSSessionConfiguration cmdlet to get the ITTasks session configurations and the Format-List cmdlet to display all of the properties of the session configuration object in a list. The output shows that the value of the **MaxShells** property of the session configuration is 40.
PS C:\> Get-PSSessionConfiguration -Name ITTasks | Format-List -Property *
Architecture : 64
Filename : %windir%\system32\pwrshplugin.dll
ResourceUri : https://schemas.microsoft.com/powershell/ITTasks
MaxConcurrentCommandsPerShell : 1000
UseSharedProcess : false
ProcessIdleTimeoutSec : 0
xmlns : https://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
MaxConcurrentUsers : 5
lang : en-US
SupportsOptions : true
ExactMatch : true
RunAsUser :
IdleTimeoutms : 7200000
PSVersion : 3.0
OutputBufferingMode : Block
AutoRestart : false
MaxShells : 40
MaxMemoryPerShellMB : 1024
MaxIdleTimeoutms : 43200000
SDKVersion : 2
Name : ITTasks
XmlRenderingType : text
Capability : {Shell}
RunAsPassword :
MaxProcessesPerShell : 15
Enabled : True
MaxShellsPerUser : 25
Permission :
In diesem Beispiel wird gezeigt, wie Sie ein Transportoptionenobjekt verwenden, um Sitzungskonfigurationsoptionen festzulegen.
Beispiel 3: Festlegen einer Transportoption
The first command uses the **New-PSTransportOption** cmdlet to create a transport option object. The command uses the *IdleTimeoutSec* parameter to set the **IdleTimeoutSec** property value of the object to one hour (3600 seconds). The command saves the transport objects object in the $t variable.
PS C:\> $t = New-PSTransportOption -IdleTimeoutSec 3600
The second command uses the Set-PSSessionConfiguration cmdlet to change the transport options of the ITTasks session configuration. The command uses the *TransportOption* parameter to specify the transport options object in the $t variable.
PS C:\> Set-PSSessionConfiguration -Name ITTasks -TransportOption $t
The third command uses the New-PSSession cmdlet to create the MyITTasks session on the local computer. The command uses the **ConfigurationName** property to specify the ITTasks session configuration. The command saves the session in the $s variable.Notice that the command does not use the *SessionOption* parameter of **New-PSSession** to set a custom idle time-out for the session. If it did, the idle time-out value set in the session option would take precedence over the idle time-out set in the session configuration.
PS C:\> $s = New-PSSession -Name MyITTasks -ConfigurationName ITTasks
The fourth command uses the Format-List cmdlet to display all properties of the session in the $s variable in a list. The output shows that the session has an idle time-out of one hour (360,000 milliseconds).
PS C:\> $s | Format-List -Property *
State : Opened
IdleTimeout : 3600000
OutputBufferingMode : Block
ComputerName : localhost
ConfigurationName : ITTasks
InstanceId : 4110c3f5-68ea-40fa-9bbf-04a433dbb02d
Id : 1
Name : MyITTasks
Availability : Available
ApplicationPrivateData : {PSVersionTable}
Runspace : System.Management.Automation.RemoteRunspace
Dieser Befehl zeigt die Auswirkung des Festlegens einer Transportoption in einer Sitzungskonfiguration auf die Sitzungen, die die Sitzungskonfiguration verwenden.
Parameter
-IdleTimeoutSec
Bestimmt, wie lange jede Sitzung geöffnet bleibt, wenn der Remotecomputer keine Kommunikation vom lokalen Computer empfängt. Dazu gehört das Herzfrequenzsignal. Wenn das Intervall abläuft, wird die Sitzung geschlossen.
Der Wert für die Leerlaufzeitüberschreitung ist von großer Bedeutung, wenn der Benutzer die Sitzungsverbindung trennen und wiederherstellen möchte. Der Benutzer kann sich nur dann erneut verbinden, wenn die Sitzung nicht abgelaufen ist.
Der Parameter IdleTimeoutSec entspricht der IdleTimeoutMs-Eigenschaft einer Sitzungskonfiguration.
Geben Sie einen Wert in Sekunden ein.
Der Standardwert ist 7200 (2 Stunden).
Der Mindestwert beträgt 60 (1 Minute).
Das Maximum ist der Wert der IdleTimeout Eigenschaft von Shell-Objekten in der WSMan-Konfiguration (WSMan:\\\<ComputerName\>\Shell\IdleTimeout).
Der Standardwert ist 7200000 Millisekunden (2 Stunden).
Wenn ein Leerlaufzeitlimit in den Sitzungsoptionen und in der Sitzungskonfiguration festgelegt ist, hat der in den Sitzungsoptionen festgelegte Wert Vorrang, aber er kann den Wert der MaxIdleTimeoutMs Eigenschaft der Sitzungskonfiguration nicht überschreiten. Um den Wert der MaxIdleTimeoutMs-Eigenschaft festzulegen, verwenden Sie den MaxIdleTimeoutSec Parameter.
Parametereigenschaften
| Typ: | Int32 |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-MaxConcurrentCommandsPerSession
Beschränkt die Anzahl der Befehle, die gleichzeitig in jeder Sitzung auf den angegebenen Wert ausgeführt werden können. Der Standardwert lautet „1000“.
Der MaxConcurrentCommandsPerSession-Parameter entspricht der MaxConcurrentCommandsPerShell–-Eigenschaft einer Sitzungskonfiguration.
Parametereigenschaften
| Typ: | Int32 |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-MaxConcurrentUsers
Schränkt die Anzahl der Benutzer ein, die Befehle gleichzeitig in jeder Sitzung auf den angegebenen Wert ausführen können. Der Standardwert ist 5.
Parametereigenschaften
| Typ: | Int32 |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-MaxIdleTimeoutSec
Beschränkt den für jede Sitzung festgelegten Inaktivitäts-Timeout auf den angegebenen Wert. Der Standardwert ist [Int]::MaxValue (~25 Tage).
Der Wert für die Leerlaufzeitüberschreitung ist von großer Bedeutung, wenn der Benutzer die Sitzungsverbindung trennen und wiederherstellen möchte. Der Benutzer kann sich nur dann erneut verbinden, wenn die Sitzung nicht abgelaufen ist.
Der MaxIdleTimeoutSec Parameter entspricht der MaxIdleTimeoutMs Eigenschaft einer Sitzungskonfiguration.
Parametereigenschaften
| Typ: | Int32 |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-MaxMemoryPerSessionMB
Schränkt den von jeder Sitzung verwendeten Arbeitsspeicher auf den angegebenen Wert ein. Geben Sie einen Wert in Megabyte ein. Der Standardwert ist 1024 MB (1 GB).
Der MaxMemoryPerSessionMB--Parameter entspricht der MaxMemoryPerShellMB--Eigenschaft einer Sitzungskonfiguration.
Parametereigenschaften
| Typ: | Int32 |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-MaxProcessesPerSession
Beschränkt die Anzahl der Prozesse, die in jeder Sitzung ausgeführt werden, auf den angegebenen Wert. Der Standardwert ist 15.
Der MaxProcessesPerSession--Parameter entspricht der MaxProcessesPerShell--Eigenschaft einer Sitzungskonfiguration.
Parametereigenschaften
| Typ: | Int32 |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-MaxSessions
Beschränkt die Anzahl der Sitzungen, die die Sitzungskonfiguration verwenden. Der Standardwert ist 25.
Der MaxSessions-Parameter entspricht der MaxShells-Eigenschaft einer Sitzungskonfiguration.
Parametereigenschaften
| Typ: | Int32 |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-MaxSessionsPerUser
Beschränkt die Anzahl der Sitzungen, die die Sitzungskonfiguration verwenden und mit den Anmeldeinformationen eines bestimmten Benutzers auf den angegebenen Wert ausgeführt werden. Der Standardwert ist 25.
Berücksichtigen Sie beim Festlegen dieses Werts, dass viele Benutzer möglicherweise die Anmeldeinformationen eines Benutzers mit „Ausführen als“-Rechten verwenden.
Der MaxSessionsPerUser-Parameter entspricht der MaxShellsPerUser-Eigenschaft einer Sitzungskonfiguration.
Parametereigenschaften
| Typ: | Int32 |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-OutputBufferingMode
Bestimmt, wie die Befehlsausgabe in getrennten Sitzungen verwaltet wird, wenn sich der Ausgabepuffer füllt. Die zulässigen Werte für diesen Parameter sind:
- Blockieren. Wenn der Ausgabepuffer voll ist, wird die Ausführung angehalten, bis der Puffer gelöscht ist.
- Tropfen. Wenn der Ausgabepuffer voll ist, wird die Ausführung fortgesetzt. Beim Speichern einer neuen Ausgabe wird die älteste Ausgabe verworfen.
- Keiner. Es wird kein Ausgabepuffermodus angegeben.
Der Standardwert der OutputBufferingMode-Eigenschaft von Sitzungen ist Block.
Parametereigenschaften
| Typ: | OutputBufferingMode |
| Standardwert: | None |
| Zulässige Werte: | None, Drop, Block |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-ProcessIdleTimeoutSec
Schränkt das Timeout für jeden Hostprozess auf den angegebenen Wert ein. Der Standardwert 0 bedeutet, dass für den Prozess kein Timeoutwert vorhanden ist.
Andere Sitzungskonfigurationen verfügen über Zeitüberschreitungswerte pro Prozess. Beispielsweise weist die Microsoft.PowerShell.Workflow Sitzungskonfiguration einen Zeitüberschreitungswert pro Prozess von 28800 Sekunden (8 Stunden) auf.
Parametereigenschaften
| Typ: | Int32 |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
CommonParameters
Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.
Eingaben
None
Eingaben können nicht an dieses Cmdlet weitergereicht werden.
Ausgaben
WSManConfigurationOption
Hinweise
- Die Eigenschaften eines Sitzungskonfigurationsobjekts variieren je nach den für die Sitzungskonfiguration festgelegten Optionen und den Werten dieser Optionen. Außerdem verfügen Sitzungskonfigurationen, die eine Sitzungskonfigurationsdatei verwenden, über zusätzliche Eigenschaften.