New-PSTransportOption

Vytvoří objekt, který obsahuje rozšířené možnosti konfigurace relace.

Syntax

New-PSTransportOption
   [-MaxIdleTimeoutSec <Int32>]
   [-ProcessIdleTimeoutSec <Int32>]
   [-MaxSessions <Int32>]
   [-MaxConcurrentCommandsPerSession <Int32>]
   [-MaxSessionsPerUser <Int32>]
   [-MaxMemoryPerSessionMB <Int32>]
   [-MaxProcessesPerSession <Int32>]
   [-MaxConcurrentUsers <Int32>]
   [-IdleTimeoutSec <Int32>]
   [-OutputBufferingMode <OutputBufferingMode>]
   [<CommonParameters>]

Description

Rutina New-PSTransportOption vytvoří objekt, který obsahuje možnosti přenosu pro konfigurace relací. Objekt můžete použít jako hodnotu parametru TransportOption rutin, které vytvářejí nebo mění konfiguraci relace, například rutinyRegister-PSSessionConfiguration.Set-PSSessionConfiguration

Nastavení možností přenosu můžete také změnit úpravou hodnot vlastností konfigurace relace na jednotce WSMan: Další informace naleznete v tématu WSMan Provider.

Možnosti konfigurace relace představují hodnoty relace nastavené na straně serveru nebo příjem konce vzdáleného připojení. Klient na straně klienta nebo odeslání konce připojení může nastavit hodnoty možností relace při vytvoření relace nebo když se klient odpojí od relace nebo se k relaci znovu připojí. Pokud není uvedeno jinak, při konfliktu hodnot nastavení mají přednost hodnoty na straně klienta. Hodnoty na straně klienta ale nemohou porušit maximální hodnoty a kvóty nastavené v konfiguraci relace.

Bez parametrů New-PSTransportOption vygeneruje objekt možnosti přenosu, který má hodnoty null pro všechny možnosti. Pokud parametr vynecháte, má objekt hodnotu null pro vlastnost, kterou parametr představuje. Hodnota null nemá vliv na konfiguraci relace.

Další informace o možnostech relace naleznete v tématu New-PSSessionOption. Další informace o konfiguracích relace najdete v tématu about_Session_Configurations.

Tato rutina byla zavedena ve Windows PowerShellu 3.0.

Příklady

Příklad 1: Vygenerování výchozí možnosti přenosu

New-PSTransportOption

ProcessIdleTimeoutSec           :
MaxIdleTimeoutSec               :
MaxSessions                     :
MaxConcurrentCommandsPerSession :
MaxSessionsPerUser              :
MaxMemoryPerSessionMB           :
MaxProcessesPerSession          :
MaxConcurrentUsers              :
IdleTimeoutSec                  :
OutputBufferingMode             :

Tento příkaz spustí New-PSTransportOption bez parametrů. Výstup ukazuje, že rutina generuje objekt možnosti přenosu, který má hodnoty null pro všechny vlastnosti.

Příklad 2: Získání možností konfigurace relace

Tento příklad ukazuje, jak pomocí objektu možností přenosu nastavit možnosti konfigurace relace.

$t = New-PSTransportOption -MaxSessions 40
Register-PSSessionConfiguration -Name ITTasks -TransportOption $t
Get-PSSessionConfiguration -Name ITTasks | Format-List -Property *

Architecture                  : 64
Filename                      : %windir%\system32\pwrshplugin.dll
ResourceUri                   : http://schemas.microsoft.com/powershell/ITTasks
MaxConcurrentCommandsPerShell : 1000
UseSharedProcess              : false
ProcessIdleTimeoutSec         : 0
xmlns                         : http://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                    :

První příkaz pomocí rutiny New-PSTransportOption vytvoří objekt možností přenosu, který uloží do $t proměnné. Příkaz používá parametr MaxSessions ke zvýšení maximálního počtu relací na 40.

Druhý příkaz používá rutinu Register-PSSessionConfiguration k vytvoření konfigurace relace ITTasks. Příkaz používá parametr TransportOption k určení objektu možností přenosu v $t proměnné.

Třetí příkaz pomocí rutiny Get-PSSessionConfiguration získá konfigurace relace ITTasks a rutinu Format-List k zobrazení všech vlastností objektu konfigurace relace v seznamu. Výstup ukazuje, že hodnota vlastnosti MaxShells konfigurace relace je 40.

Příklad 3: Nastavení možnosti přenosu

Tento příkaz ukazuje účinek nastavení možnosti přenosu v konfiguraci relace na relacích, které používají konfiguraci relace.

$t = New-PSTransportOption -IdleTimeoutSec 3600
Set-PSSessionConfiguration -Name ITTasks -TransportOption $t
$s = New-PSSession -Name MyITTasks -ConfigurationName ITTasks
$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

První příkaz pomocí rutiny New-PSTransportOption vytvoří objekt možnosti přenosu. Příkaz používá parametr IdleTimeoutSec k nastavení hodnoty vlastnosti IdleTimeoutSec objektu na jednu hodinu (3600 sekund). Příkaz uloží objekt transportních objektů do $t proměnné.

Druhý příkaz používá rutinu Set-PSSessionConfiguration ke změně možností přenosu konfigurace relace ITTasks. Příkaz používá parametr TransportOption k určení objektu možností přenosu v $t proměnné.

Třetí příkaz používá rutinu New-PSSession k vytvoření relace MyITTasks na místním počítači. Příkaz používá vlastnost ConfigurationName k určení konfigurace relace ITTasks. Příkaz uloží relaci do proměnné $s. Všimněte si, že příkaz nepoužívá parametr New-PSSession SessionOption k nastavení vlastního časového limitu nečinnosti relace. Pokud ano, hodnota časového limitu nečinnosti nastavená v možnosti relace bude mít přednost před časovým limitem nečinnosti nastaveným v konfiguraci relace.

Čtvrtý příkaz používá rutinu Format-List k zobrazení všech vlastností relace v $s proměnné v seznamu. Výstup ukazuje, že relace má časový limit nečinnosti jedné hodiny (360 000 milisekund).

Parametry

-IdleTimeoutSec

Určuje, jak dlouho bude každá relace otevřená, pokud vzdálený počítač neobdrží žádnou komunikaci z místního počítače. To zahrnuje signál prezenčních signálů. Po vypršení intervalu se relace zavře.

Hodnota časového limitu nečinnosti je velmi důležitá, když uživatel hodlá odpojit relaci a znovu se k relaci připojit. Uživatel se může znovu připojit jenom v případě, že relace nevysadila časový limit.

Parametr IdleTimeoutSec odpovídá vlastnosti IdleTimeoutMs konfigurace relace.

Zadejte hodnotu v sekundách. Výchozí hodnota je 7200 (2 hodiny). Minimální hodnota je 60 (1 minuta). Maximum je hodnota IdleTimeout vlastnost Shell objektů v konfiguraci WSMan (WSMan:\\\<ComputerName\>\Shell\IdleTimeout). Výchozí hodnota je 7200000 milisekund (2 hodiny).

Pokud je hodnota časového limitu nečinnosti nastavena v možnostech relace a v konfiguraci relace, hodnota nastavená v možnostech relace má přednost, ale nemůže překročit hodnotu Vlastnosti MaxIdleTimeoutMs konfigurace relace. Chcete-li nastavit hodnotu MaxIdleTimeoutMs vlastnost, použijte MaxIdleTimeoutSec parametr.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxConcurrentCommandsPerSession

Omezí počet příkazů, které se můžou spustit současně v každé relaci, na zadanou hodnotu. Výchozí hodnota je 1000.

Parametr MaxConcurrentCommandsPerSession odpovídá vlastnosti MaxConcurrentCommandsPerShell konfigurace relace.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxConcurrentUsers

Omezuje počet uživatelů, kteří můžou spouštět příkazy současně v každé relaci, na zadanou hodnotu. Výchozí hodnota je 5.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxIdleTimeoutSec

Omezuje časový limit nečinnosti nastavený pro každou relaci na zadanou hodnotu. Výchozí hodnota je [Int]::MaxValue (~25 dní).

Hodnota časového limitu nečinnosti je velmi důležitá, když uživatel hodlá odpojit relaci a znovu se k relaci připojit. Uživatel se může znovu připojit jenom v případě, že relace nevysadila časový limit.

Parametr MaxIdleTimeoutSec odpovídá vlastnosti MaxIdleTimeoutMs konfigurace relace.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxMemoryPerSessionMB

Omezuje paměť používanou každou relací na zadanou hodnotu. Zadejte hodnotu v megabajtech. Výchozí hodnota je 1024 megabajtů (1 GB).

Parametr MaxMemoryPerSessionMB odpovídá vlastnosti MaxMemoryPerShellMB konfigurace relace.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxProcessesPerSession

Omezuje počet procesů spuštěných v každé relaci na zadanou hodnotu. Výchozí hodnota je 15.

Parametr MaxProcessesPerSession odpovídá vlastnosti MaxProcessesPerShell konfigurace relace.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxSessions

Omezuje počet relací, které používají konfiguraci relace. Výchozí hodnota je 25.

Parametr MaxSessions odpovídá vlastnosti MaxShells konfigurace relace.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxSessionsPerUser

Omezuje počet relací, které používají konfiguraci relace, a spouští se s přihlašovacími údaji daného uživatele na zadanou hodnotu. Výchozí hodnota je 25.

Při zadávání této hodnoty zvažte, že mnoho uživatelů může používat přihlašovací údaje spustit jako uživatel.

Parametr MaxSessionsPerUser odpovídá vlastnosti MaxShellsPerUser konfigurace relace.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-OutputBufferingMode

Určuje, jak se výstup příkazu spravuje v odpojených relacích, když se výstupní vyrovnávací paměť zaplní. Tento parametr přijímá tyto hodnoty:

  • Block Pokud je výstupní vyrovnávací paměť plná, spuštění se pozastaví, dokud se vyrovnávací paměť nesmaže.
  • Drop Jakmile je výstupní vyrovnávací paměť plná, provádění bude pokračovat. Při ukládání nového výstupu se nejstarší výstup zahodí.
  • None Není zadán žádný režim ukládání výstupu do vyrovnávací paměti.

Výchozí hodnota OutputBufferingMode vlastnost relace je Block.

Type:Nullable<T>[OutputBufferingMode]
Accepted values:None, Drop, Block
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ProcessIdleTimeoutSec

Omezuje časový limit pro každý hostitelský proces na zadanou hodnotu. Výchozí hodnota 0 znamená, že pro proces neexistuje žádná hodnota časového limitu.

Jiné konfigurace relací mají hodnoty časového limitu pro jednotlivé procesy. Například konfigurace relace Microsoft.PowerShell.Workflow má hodnotu časového limitu procesu 28800 sekund (8 hodin).

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

Vstupy

None

Do této rutiny nemůžete roušit objekty.

Výstupy

WSManConfigurationOption

Poznámky

  • Vlastnosti objektu konfigurace relace se liší podle možností nastavených pro konfiguraci relace a hodnot těchto možností. Konfigurace relací, které používají konfigurační soubor relace, mají také další vlastnosti.