Поделиться через


New-PSSessionOption

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

Синтаксис

New-PSSessionOption [-ApplicationArguments <PSPrimitiveDictionary>] [-CancelTimeOut <int>] [-Culture <CultureInfo>] [-IdleTimeOut <int>] [-MaximumReceivedDataSizePerCommand <int>] [-MaximumReceivedObjectSize <int>] [-MaximumRedirection <int>] [-NoCompression] [-NoEncryption] [-NoMachineProfile] [-OpenTimeOut <int>] [-OperationTimeOut <int>] [-ProxyAccessType {<None> | <IEConfig> | <WinHttpConfig> | <AutoDetect> | <NoProxyServer>}] [-ProxyAuthentication {<Default> | <Basic> | <Negotiate> | <NegotiateWithImplicitCredential> | <Credssp> | <Digest> | <Kerberos>}] [-ProxyCredential <PSCredential>] [-SkipCACheck] [-SkipCNCheck] [-SkipRevocationCheck] [-UICulture <CultureInfo>] [-UseUTF16] [<CommonParameters>]

Описание

Командлет New-PSSessionOption создает объект, содержащий дополнительные параметры для PSSession. Можно использовать этот объект в качестве значения параметра SessionOption в командлетах, создающих PSSession, например New-PSSession, Enter-PSSession и Invoke-Command.

При запуске без параметров командлет New-PSSessionOption создает объект, содержащий значения по умолчанию для всех параметров. Так как все свойства допускают редактирование, можно использовать получающийся объект как шаблон и создать стандартные объекты параметров для предприятия.

Параметры

-ApplicationArguments <PSPrimitiveDictionary>

Задает хэш-таблицу, без интерпретации отправляемую напрямую в конфигурацию сеанса. Эта хэш-таблица доступна конфигурации сеанса в виде свойства класса PSSenderInfo.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-CancelTimeOut <int>

Определяет время ожидания оболочкой Windows PowerShell завершения операции отмены (CTRL + C), по истечении которого операция прерывается. Введите значение в миллисекундах.

Значением по умолчанию является 60000 (одна минута). Значение 0 (ноль) означает отсутствие времени ожидания; время выполнения команды не ограничено.

Обязательно?

false

Позиция?

named

Значение по умолчанию

60000

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-Culture <CultureInfo>

Задает культуру, используемую для PSSession. Введите имя культуры в формате <код_языка2>-<код_страны/региона2> (например, "ja-jP"), переменную, содержащую объект CultureInfo или команду, получающую объект CultureInfo, например "Get-Culture".

Значение по умолчанию — $null, и в сеансе PSSession используется культура, заданная в операционной системе в момент создания сеанса PSSession.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Текущая культура

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-IdleTimeOut <int>

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

Введите значение в миллисекундах. По умолчанию используется значение 240000 (4 мин). Минимальное значение равно 60000 (1 мин).

Если время ожидания при простое задано как на локальном, так и на удаленном компьютере, в сеансе PSSession используется меньшее из значений. На локальном компьютере время ожидания при простое может быть задано либо с помощью этого параметра, либо путем задания времени ожидания при простое в привилегированной переменной $PSSessionOption. На удаленном компьютере время ожидания при простое может быть задано в конфигурации WS-Management (WSMAN:\localhost\shell\idletimeout).

Обязательно?

false

Позиция?

named

Значение по умолчанию

240000

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-MaximumReceivedDataSizePerCommand <int>

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

Этот параметр служит для защиты ресурсов на клиентском компьютере.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Без ограничений

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-MaximumReceivedObjectSize <int>

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

Этот параметр служит для защиты ресурсов на клиентском компьютере.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Без ограничений

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-MaximumRedirection <int>

Определяет, сколько раз оболочка Windows PowerShell перенаправляет соединение на альтернативный универсальный код ресурса URI до того, как происходит сбой соединения. По умолчанию используется значение 5. Значение 0 (ноль) запрещает перенаправление.

Этот параметр используется в сеансе PSSession только в том случае, если в команде, создавшей сеанс PSSession, использовался параметр AllowRedirection.

Обязательно?

false

Позиция?

named

Значение по умолчанию

5

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-NoCompression

Отключает сжатие пакетов в сеансе PSSession. Сжатие использует больше циклов работы процессора, но ускоряет передачу.

Обязательно?

false

Позиция?

named

Значение по умолчанию

False

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-NoEncryption

Отключает шифрование данных.

Обязательно?

false

Позиция?

named

Значение по умолчанию

False

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-NoMachineProfile

Запрещает загрузку профиля пользователя Windows. В результате сеанс PSSession может быть создан быстрее, но в нем недоступны специфичные для пользователя параметры реестра, такие элементы, как переменные среды, а также сертификаты.

Обязательно?

false

Позиция?

named

Значение по умолчанию

False

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-OpenTimeOut <int>

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

По умолчанию используется значение 180000 (3 мин). Значение 0 (ноль) означает отсутствие времени ожидания; время выполнения команды не ограничено.

Обязательно?

false

Позиция?

named

Значение по умолчанию

180000

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-OperationTimeOut <int>

Определяет максимальное время выполнения любой операции в сеансе PSSession. По истечению этого интервала операция завершается сбоем. Введите значение в миллисекундах.

По умолчанию используется значение 180000 (3 мин). Значение 0 (ноль) означает отсутствие времени ожидания; время выполнения операции не ограничено.

Обязательно?

false

Позиция?

named

Значение по умолчанию

180000

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-ProxyAccessType <ProxyAccessType>

Определяет механизм, используемый для разрешения имени узла. Допустимы значения IEConfig, WinHttpConfig, AutoDetect, NoProxyServer и None. По умолчанию используется значение None.

Сведения о значениях этого параметра см. в описании перечисления System.Management.Automation.Remoting.ProxyAccessType в библиотеке MSDN по адресу https://go.microsoft.com/fwlink/?LinkId=144756 (на английском языке).

Обязательно?

false

Позиция?

named

Значение по умолчанию

Нет

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-ProxyAuthentication <AuthenticationMechanism>

Задает метод проверки подлинности, используемый для разрешения прокси-сервера. Допустимы значения Basic, Digest и Negotiate. По умолчанию используется значение Negotiate.

Сведения о значениях этого параметра см. в описании перечисления System.Management.Automation.Runspaces.AuthenticationMechanism в библиотеке MSDN по адресу https://go.microsoft.com/fwlink/?LinkID=144382 (на английском языке).

Обязательно?

false

Позиция?

named

Значение по умолчанию

Negotiate

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-ProxyCredential <PSCredential>

Задает учетные данные, используемые при проверке подлинности прокси-сервера. Введите переменную, содержащую объект PSCredential, или команду, получающую объект PSCredential, например Get-Credential. Если этот параметр не установлен, учетные данные не задаются.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Нет

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-SkipCACheck

Указывает, что при подключении по протоколу HTTPS клиент не проверяет, подписан ли сертификат сервера доверенным центром сертификации (ЦС).

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

Обязательно?

false

Позиция?

named

Значение по умолчанию

False

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-SkipCNCheck

Указывает, что общее имя сертификата (CN) сервера не обязано соответствовать имени узла сервера. Этот параметр используется только при удаленных взаимодействиях, выполняемых по протоколу HTTPS.

Используйте этот параметр только для доверенных компьютеров.

Обязательно?

false

Позиция?

named

Значение по умолчанию

False

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-SkipRevocationCheck

Состояние отзыва сертификата сервера не проверяется.

Обязательно?

false

Позиция?

named

Значение по умолчанию

False

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-UICulture <CultureInfo>

Задает культуру пользовательского интерфейса, используемую в сеансе PSSession.

Введите имя культуры в формате <код_языка2>-<код_страны/региона2> (например, "ja-jP"), переменную, содержащую объект CultureInfo или команду, получающую объект CultureInfo, например Get-Culture.

Значение по умолчанию — $null, и в сеансе PSSession используется культура пользовательского интерфейса, заданная в операционной системе в момент создания сеанса PSSession.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Текущая культура пользовательского интерфейса

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-UseUTF16

Кодировать запрос в кодировке UTF16, а не в кодировке UTF8.

Обязательно?

false

Позиция?

named

Значение по умолчанию

False (кодировка UTF8)

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

<CommonParameters>

Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.

Ввод и вывод

Входным типом является тип объектов, которые можно передавать командлету по конвейеру. Возвращаемым типом является тип объектов, возвращаемых командлетом.

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

Нет

Передать входные данные этому командлету по конвейеру невозможно.

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

System.Management.Automation.Remoting.PSSessionOption

Примечания

Если в команде создания сеанса PSSession не использовался параметр SessionOption, параметры сеанса определяются значениями свойств привилегированной переменной $PSSessionOption, если она задана. Сведения о переменной $PSSessionOption см. в разделе about_Preference_Variables.

Пример 1

C:\PS>New-PSSessionOption


MaximumConnectionRedirectionCount : 5
NoCompression                     : False
NoMachineProfile                  : False
ProxyAccessType                   : IEConfig
ProxyAuthentication               : Negotiate
ProxyCredential                   :
SkipCACheck                       : False
SkipCNCheck                       : False
SkipRevocationCheck               : False
OperationTimeout                  : 00:03:00
NoEncryption                      : False
UseUTF16                          : False
Culture                           :
UICulture                         :
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize         :
ApplicationArguments              :
OpenTimeout                       : 00:03:00
CancelTimeout                     : 00:01:00
IdleTimeout                       : 00:04:00

Описание
-----------
Эта команда создает объект параметров сеанса со значениями по умолчанию для всех параметров.





Пример 2

C:\PS>$pso = new-pssessionoption -Culture "fr-fr" -MaximumReceivedObjectSize 10MB

C:\PS> new-pssession -computerName Server01 -SessionOption $pso

Описание
-----------
В этом примере демонстрируется использование объекта параметров сеанса для настройки сеанса.

Первая команда создает новый объект параметров сеанса и сохраняет его значение в переменной $pso.

Вторая команда использует командлет New-PSSession для создания сеанса PSSession на удаленном компьютере Server01. Эта команда использует объект параметров сеанса в значении переменной $pso в качестве значения параметра SessionOption команды.





Пример 3

C:\PS>enter-pssession -computername Server01 -sessionOption (new-pssessionoption -noEncryption -noCompression)

Описание
-----------
Эта команда создает интерактивный сеанс с компьютером Server01 с использованием командлета Enter-PSSession. Значение параметра SessionOption — это команда New-PSSessionOption с параметрами-переключателями NoEncryption и NoCompression.

Команда New-PSSessionOption заключена в круглые скобки, чтобы обеспечить ее выполнение до команды Enter-PSSession.





Пример 4

C:\PS>$a = new-pssessionoption


MaximumConnectionRedirectionCount : 5
NoCompression                     : False
NoMachineProfile                  : False
ProxyAccessType                   : IEConfig
ProxyAuthentication               : Negotiate
ProxyCredential                   :
SkipCACheck                       : False
SkipCNCheck                       : False
SkipRevocationCheck               : False
OperationTimeout                  : 00:03:00
NoEncryption                      : False
UseUTF16                          : False
Culture                           :
UICulture                         :
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize         :
ApplicationArguments              :
OpenTimeout                       : 00:03:00
CancelTimeout                     : 00:01:00
IdleTimeout                       : 00:04:00

C:\PS> $a.UICulture = (get-UICulture)
C:\PS> $a.OpenTimeout = (new-timespan -minutes 4)
C:\PS> $a.MaximumConnectionRedirectionCount = 1

C:\PS> $a

MaximumConnectionRedirectionCount : 1
NoCompression                     : False
NoMachineProfile                  : False
ProxyAccessType                   : IEConfig
ProxyAuthentication               : Negotiate
ProxyCredential                   :
SkipCACheck                       : False
SkipCNCheck                       : False
SkipRevocationCheck               : False
OperationTimeout                  : 00:03:00
NoEncryption                      : False
UseUTF16                          : False
Culture                           :
UICulture                         : en-US
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize         :
ApplicationArguments              :
OpenTimeout                       : 00:04:00
CancelTimeout                     : 00:01:00
IdleTimeout                       : 00:04:00

Описание
-----------
В этом примере показано, что объект параметров сеанса можно редактировать. Все свойства доступны для чтения и записи.

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





Пример 5

C:\PS>$PSSessionOption = New-PSSessionOption -OpenTimeOut 120000

Описание
-----------
Эта команда создает привилегированную переменную $PSSessionOption. 

Если в сеансе существует привилегированная переменная $PSSessionOption, она определяет значения по умолчанию для параметров сеансов PSSession, созданных с помощью командлетов New-PSSession, Enter-PSSession и Invoke-Command.

Чтобы переменная $PSSessionOption была доступна для всех сеансов, добавьте ее в свой сеанс Windows PowerShell и в свой профиль Windows PowerShell.

Сведения о переменной $PSSessionOption см. в разделе about_Preference_Variables. Дополнительные сведения о профилях см. в разделе about_Profiles.





Пример 6

C:\PS>$skipCN = new-pssessionoption -SkipCNCheck

C:\PS> new-pssession -computername 171.09.21.207 -UseSSL -credential domain01\user01 -sessionOption $skipCN

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

Первая команда с помощью командлета New-PSSessionOption создает объект параметров сеанса со свойством SkipCNCheck. Команда сохраняет полученный объект сеанса в переменной $skipCN.

Вторая команда использует командлет New-PSSession для создания нового сеанса PSSession на удаленном компьютере. Переменная $skipCN используется в значении параметра SessionOption. 

Так как компьютер определяется по его IP-адресу, значение параметра ComputerName не соответствует ни одному из обычных имен в сертификате, используемом для SSL. В результате требуется параметр SkipCNCheck.





См. также

Концепции

Enter-PSSession
New-PSSession
Invoke-Command