New-PSTransportOption

Создает объект, содержащий дополнительные параметры для конфигурации сеанса.

Синтаксис

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

Описание

Командлет New-PSTransportOption создает объект, содержащий параметры транспорта для конфигураций сеансов. Объект можно использовать в качестве значения параметра TransportOption командлетов, создающих или изменяющих конфигурацию сеанса, таких как Register-PSSessionConfiguration командлеты и Set-PSSessionConfiguration командлеты.

Кроме того, параметры транспорта можно менять, корректируя значения свойств конфигурации сеанса на диске WSMan:. Дополнительные сведения см. в разделе "Поставщик WSMan".

Параметры конфигурации сеанса представляют значения сеансов, заданные на стороне сервера или получая конец удаленного подключения. Клиентская сторона или отправка конца подключения может задать значения параметра сеанса при создании сеанса или при отключении клиента от сеанса или повторном подключении к сеансу. Если не указано иное, то в случае конфликта между значениями параметров превалируют значения на стороне клиента. При этом значения на стороне клиента не могут превышать максимальные значения и квоты, установленные в конфигурации сеанса.

Без параметров New-PSTransportOption создает объект параметра транспорта, имеющий значения NULL для всех параметров. Если параметр не указан, свойство объекта, представляемое этим параметром, получает нулевое значение. Значение NULL не влияет на конфигурацию сеанса.

Дополнительные сведения о параметрах сеанса см. в разделе New-PSSessionOption. Дополнительные сведения о конфигурациях сеансов см. в разделе about_Session_Configurations.

Этот командлет впервые появился в Windows PowerShell 3.0.

Примеры

Пример 1. Создание параметра транспорта по умолчанию

New-PSTransportOption

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

Эта команда выполняется New-PSTransportOption без параметров. В выходных данных показано, что командлет создает объект параметра транспорта, имеющий значения NULL для всех свойств.

Пример 2. Получение параметров конфигурации сеанса

В этом примере показано, как использовать объект параметров транспорта для задания параметров конфигурации сеанса.

$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                    :

Первая команда использует New-PSTransportOption командлет для создания объекта параметров транспорта, который сохраняется в переменной $t . Команда использует параметр MaxSessions для увеличения максимального числа сеансов до 40.

Вторая команда использует Register-PSSessionConfiguration командлет, создав конфигурацию сеанса ITTasks. Команда использует параметр TransportOption для указания объекта параметров транспорта в переменной $t .

Третья команда использует Get-PSSessionConfiguration командлет для получения конфигураций сеансов ITTasks и Format-List командлета для отображения всех свойств объекта конфигурации сеанса в списке. В выходных данных показано, что значение свойства MaxShells конфигурации сеанса равно 40.

Пример 3. Настройка параметра транспорта

Эта команда показывает, как настройка параметра транспорта в конфигурации сеанса влияет на сеансы, в которых используется эта конфигурация.

$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

Первая команда использует New-PSTransportOption командлет для создания объекта параметра транспорта. Команда использует параметр IdleTimeoutSec, чтобы задать значение свойства IdleTimeoutSec объекта на один час (3600 секунд). Команда сохраняет объект транспортных объектов в переменной $t .

Вторая команда использует Set-PSSessionConfiguration командлет для изменения параметров транспорта конфигурации сеанса ITTasks. Команда использует параметр TransportOption для указания объекта параметров транспорта в переменной $t .

Третья команда использует New-PSSession командлет для создания сеанса MyITTasks на локальном компьютере. Команда использует свойство ConfigurationName для указания конфигурации сеанса ITTasks. Команда сохраняет сеанс в переменной $s. Обратите внимание, что команда не использует параметр SessionOption для задания пользовательского New-PSSession времени ожидания простоя для сеанса. Если это произошло, значение времени ожидания простоя, заданное в параметре сеанса, будет иметь приоритет над временем ожидания простоя, заданного в конфигурации сеанса.

Четвертая команда использует Format-List командлет для отображения всех свойств сеанса в $s переменной в списке. Выходные данные показывают, что сеанс имеет время простоя в течение одного часа (360 000 миллисекунда).

Параметры

-IdleTimeoutSec

Определяет, сколько времени каждый сеанс остается открытым, если удаленный компьютер не получает никакого взаимодействия с локального компьютера. Это включает сигнал пульса. По истечении этого времени сеанс закрывается.

Значение времени ожидания простоя имеет важное значение, когда пользователь намерен отключить и повторно подключиться к сеансу. Пользователь может подключаться к сеансу только в том случае, если время ожидания не истекло.

Параметр IdleTimeoutSec соответствует свойству IdleTimeoutMs конфигурации сеанса.

Введите значение в секундах. Значение по умолчанию составляет 7200 секунд (2 часа). Минимальное значение — 60 секунд (1 минута). Максимальное значение свойства IdleTimeout объектов Shell в конфигурации WSMan (WSMan:\\\<ComputerName\>\Shell\IdleTimeout). Значение по умолчанию составляет 7200000 миллисекунд (2 часа).

Если значение времени ожидания простоя задано в параметрах сеанса и в конфигурации сеанса, значение, заданное в параметрах сеанса, имеет приоритет, но не может превышать значение свойства MaxIdleTimeoutMs конфигурации сеанса. Чтобы задать значение свойства MaxIdleTimeoutMs , используйте параметр MaxIdleTimeoutSec .

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

-MaxConcurrentCommandsPerSession

Ограничивает количество команд, которые могут выполняться одновременно в каждом сеансе до указанного значения. Значение по умолчанию ― 1000.

Параметр MaxConcurrentCommandsPerSession соответствует свойству MaxConcurrentCommandsPerShell конфигурации сеанса.

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

-MaxConcurrentUsers

Ограничивает число пользователей, которые могут выполнять команды одновременно в каждом сеансе, до указанного значения. Значение по умолчанию равно 5.

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

-MaxIdleTimeoutSec

Ограничивает время ожидания простоя для каждого сеанса указанным значением. Значение по умолчанию — [Int]::MaxValue (~25 дней).

Значение времени ожидания простоя имеет важное значение, когда пользователь намерен отключить и повторно подключиться к сеансу. Пользователь может подключаться к сеансу только в том случае, если время ожидания не истекло.

Параметр MaxIdleTimeoutSec соответствует свойству MaxIdleTimeoutMs конфигурации сеанса.

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

-MaxMemoryPerSessionMB

Ограничивает максимальный объем памяти, который может использоваться каждым сеансом. Введите значение в мегабайтах. Значение по умолчанию — 1024 МБ (1 ГБ).

Параметр MaxMemoryPerSession МБ соответствует свойству MaxMemoryPerShell МБ конфигурации сеанса.

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

-MaxProcessesPerSession

Устанавливает максимальное количество процессов, которые могут выполняться в одном сеансе. Значение по умолчанию ― 15.

Параметр MaxProcessesPerSession соответствует свойству MaxProcessesPerShell конфигурации сеанса.

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

-MaxSessions

Ограничивает количество сеансов, которые могут использовать соответствующую конфигурацию. По умолчанию используется значение 25.

Параметр MaxSessions соответствует свойству MaxShells конфигурации сеанса.

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

-MaxSessionsPerUser

Ограничивает максимальное количество сеансов с использованием соответствующей конфигурации и учетных данных указанного пользователя. По умолчанию используется значение 25.

При указании этого значения следует учитывать, что многие пользователи могут использовать учетные данные запуска от имени пользователя.

Параметр MaxSessionsPerUser соответствует свойству MaxShellsPerUser конфигурации сеанса.

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

-OutputBufferingMode

Определяет порядок управления выходным потоком команды в отключенных сеансах при заполнении . Допустимые значения для этого параметра:

  • Block Когда выходной буфер заполнен, выполнение будет приостановлено до тех пор, пока буфер не будет снят.
  • Drop Когда выходной буфер заполнен, выполнение продолжается. Новые выходные данные сохраняются вместо наиболее старых.
  • None Режим буферизации выходных данных не указан.

Значение по умолчанию свойства OutputBufferingMode сеансов — 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

Ограничивает время ожидания для каждого процесса узла указанным значением. Значение по умолчанию 0 означает, что для процесса нет времени ожидания.

Другие конфигурации сеансов имеют значения времени ожидания для каждого процесса. Например, конфигурация сеанса Microsoft.PowerShell.Workflow имеет время ожидания для каждого процесса в 28800 секунд (8 часов).

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

Входные данные

None

Невозможно передать объекты в этот командлет.

Выходные данные

WSManConfigurationOption

Примечания

  • Свойства объекта конфигурации сеанса зависят от заданных для конфигурации сеанса параметров и значений этих параметров. Кроме того, конфигурации сеансов, определяющие с помощью файла конфигурации, включают дополнительные свойства.