New-PSWorkflowSession
Создает сеанс рабочего процесса.
Синтаксис
New-PSWorkflowSession
[[-ComputerName] <String[]>]
[-Credential <Object>]
[-Name <String[]>]
[-Port <Int32>]
[-UseSSL]
[-ApplicationName <String>]
[-ThrottleLimit <Int32>]
[-SessionOption <PSSessionOption>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[-EnableNetworkAccess]
[<CommonParameters>]
Описание
Командлет New-PSWorkflowSession
создает управляемый пользователем сеанс (PSSession), который специально предназначен для выполнения рабочих процессов Windows PowerShell. Он использует конфигурацию сеанса Microsoft.PowerShell.Workflow , которая включает скрипты, файлы типа и форматирования и параметры, необходимые для рабочих процессов.
Вы можете использовать New-PSWorkflowSession
или его псевдоним. nwsn
В эту команду также можно добавить общие параметры рабочих процессов. Дополнительные сведения о распространенных параметрах рабочего процесса см. в about_WorkflowCommonParameters
Этот командлет впервые появился в Windows PowerShell 3.0.
Примеры
Пример 1. Создание сеанса рабочего процесса на удаленном компьютере
В этом примере создается сеанс WorkflowTests на удаленном компьютере ServerNode01.
$params = @{
ComputerName = "ServerNode01"
Name = "WorkflowTests"
SessionOption = (New-PSSessionOption -OutputBufferingMode Drop)
}
New-PSWorkflowSession @params
Значение параметра SessionOption — это New-PSSessionOption
команда, которая задает режим буферизации выходных данных в сеансе значение Drop.
Пример 2. Создание сеансов рабочего процесса на нескольких удаленных компьютерах
В этом примере создаются сеансы рабочего процесса на компьютерах ServerNode01 и Server12. Команда использует параметр Credential для выполнения с правами администратора домена.
"ServerNode01", "Server12" |
New-PSWorkflowSession -Name WorkflowSession -Credential Domain01\Admin01 -ThrottleLimit 150
Команда использует параметр ThrottleLimit для увеличения ограничения регулирования для каждой команды до 150
. Это значение имеет приоритет над ограничением 100
регулирования по умолчанию, заданным в конфигурации сеанса Microsoft.PowerShell.Workflow .
Параметры
-ApplicationName
Определяет сегмент имени приложения в URI соединения.
Значение по умолчанию — это значение переменной $PSSessionApplicationName
предпочтения на локальном компьютере. Если привилегированная переменная не определена, значение по умолчанию — WSMAN. Это значение подходит для большинства случаев Дополнительные сведения см. в about_Preference_Variables.
Служба удаленного управления Windows (WinRM) использует имя приложения для выбора прослушивателя для обслуживания запроса на подключение. Значение этого параметра должно совпадать со значением свойства URLPrefix прослушивателя на удаленном компьютере.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Authentication
Указывает механизм, используемый для проверки подлинности учетных данных пользователя. Допустимые значения для этого параметра:
Default
Basic
Credssp
Digest
Kerberos
Negotiate
NegotiateWithImplicitCredential
Значение по умолчанию — Default
.
Проверка подлинности CredSSP доступна только в Windows Vista, Windows Server 2008 и более поздних версиях операционной системы Windows.
Дополнительные сведения о значениях этого параметра см. в разделе "Перечисление AuthenticationMechanism".
Внимание
Проверка подлинности поставщика служб безопасности учетных данных (CredSSP), в которой учетные данные пользователя передаются на удаленный компьютер для проверки подлинности, предназначена для команд, требующих проверки подлинности на нескольких ресурсах, таких как доступ к удаленному сетевому ресурсу. Этот механизм повышает риск безопасности удаленной операции. Если удаленный компьютер скомпрометирован, учетные данные, передаваемые ему, могут использоваться для управления сетевым сеансом.
Тип: | AuthenticationMechanism |
Допустимые значения: | Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos |
Position: | Named |
Default value: | Default |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-CertificateThumbprint
Задает цифровой сертификат с открытым ключом (X509) учетной записи пользователя, который располагает разрешением для выполнения этого действия. Введите отпечаток сертификата.
Сертификаты используются при проверке подлинности на основе сертификата клиента. Они могут сопоставляться только с учетными записями локальных пользователей и не работают с учетными записями доменов.
Чтобы получить отпечаток сертификата, используйте Get-Item
командлет или Get-ChildItem
командлет на диске Windows PowerShell Cert:
.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ComputerName
Создает постоянное подключение (PSSession) к указанному компьютеру. При вводе нескольких имен компьютеров Windows PowerShell создает несколько PSSessions, по одному для каждого компьютера. По умолчанию используется локальный компьютер.
Введите имя NetBIOS, IP-адрес или полное доменное имя одного или нескольких удаленных компьютеров. Чтобы указать локальный компьютер, введите имя localhost
компьютера или точку (.
). Если компьютер находится в другом домене, отличном от домена пользователя, полное доменное имя является обязательным.
Вы также можете передать имя компьютера в кавычки New-PSWorkflowSession
.
Чтобы использовать IP-адрес в значении параметра ComputerName , команда должна включать параметр Credential . Кроме того, компьютер должен быть настроен для транспорта HTTPS или IP-адрес удаленного компьютера должен быть включен в список TrustedHosts службы WinRM на локальном компьютере. Инструкции по добавлению имени компьютера в список TrustedHosts см. в разделе "Добавление компьютера в список доверенных узлов" в about_Remote_Troubleshooting.
Тип: | String[] |
Aliases: | Cn |
Position: | 0 |
Default value: | Local computer |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Credential
Указывает учетную запись пользователя с разрешением на выполнение этого действия. По умолчанию используется текущий пользователь. Введите имя пользователя, например , или введите объект PSCredential, например один, возвращенный командлетомGet-Credential
.User@Domain.com
Domain01\User01
User01
При вводе имени пользователя этот командлет запрашивает пароль.
Тип: | Object |
Position: | Named |
Default value: | Current user |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-EnableNetworkAccess
Указывает, что этот командлет добавляет интерактивный маркер безопасности в сеансы обратного цикла. Интерактивный маркер позволяет выполнять в петлевом сеансе команды, которые получают данные с других компьютеров. Например, можно выполнить команду в сеансе, который копирует XML-файлы с удаленного компьютера на локальный.
Сеанс обратного цикла — это сеанс PSSession , который возникает и заканчивается на том же компьютере. Чтобы создать сеанс обратного цикла, не укажите параметр ComputerName или задайте для нее значение dot (.
), localhost
или имя локального компьютера.
По умолчанию сеансы обратного цикла создаются с маркером сети, который может не предоставить достаточно разрешений для проверки подлинности на удаленных компьютерах.
Параметр EnableNetworkAccess действует только в петлевых сеансах. Если при создании сеанса на удаленном компьютере указать параметр EnableNetworkAccess , команда завершается успешно, но параметр игнорируется.
Удаленный доступ в петлевом сеансе также можно разрешить с помощью значения CredSSP параметра Authentication, который делегирует учетные данные сеанса на другие компьютеры.
Чтобы защитить компьютер от вредоносного доступа, отключенные сеансы цикла с интерактивными маркерами, созданные с помощью параметра EnableNetworkAccess , можно повторно подключиться только с компьютера, на котором был создан сеанс. Отключенные сеансы, использующие проверку подлинности CredSSP, можно повторно подключить с других компьютеров. Дополнительные сведения см. в командлете Disconnect-PSSession
.
Этот параметр впервые появился в Windows PowerShell 3.0.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Name
Задает понятное имя для сеанса рабочего процесса. Имя можно использовать с другими командлетами, такими как Get-PSSession
и Enter-PSSession
. Имя не обязательно должно быть уникальным для компьютера или текущего сеанса.
Тип: | String[] |
Position: | Named |
Default value: | Session# |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Port
Задает сетевой порт на удаленном компьютере, используемый для данного соединения. Для подключения к удаленному компьютеру требуется, чтобы он прослушивал порт, используемый соединением. По умолчанию используются 5985
порты (порт WinRM для HTTP) и 5986
(порт WinRM для HTTPS).
Перед использованием другого порта необходимо настроить прослушиватель WinRM на удаленном компьютере для прослушивания этого порта. Для настройки прослушивателя используйте следующие команды:
winrm delete winrm/config/listener?Address=*+Transport=HTTP
winrm create winrm/config/listener?Address=*+Transport=HTTP @{Port="\<port-number\>"}
Не используйте параметр Port без крайней необходимости. Настройка порта в команде применяется ко всем компьютерам или сеансам, на которых выполняется команда. Альтернативный порт может помешать выполнению команды на всех компьютерах.
Тип: | Int32 |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-SessionOption
Задает дополнительные параметры сеанса. Введите объект SessionOption, например объект, создаваемый с помощью командлетаNew-PSSessionOption
.
Значения по умолчанию для параметров определяются значением переменной $PSSessionOption
предпочтения, если она задана. В противном случае значения по умолчанию задаются параметрами, указанными в конфигурации сеанса.
Значения параметра сеанса имеют приоритет над значениями по умолчанию для сеансов, заданных в переменной $PSSessionOption
предпочтения и в конфигурации сеанса. Однако они не имеют приоритет над максимальными значениями, квотами и ограничениями, заданными в конфигурации сеанса. Дополнительные сведения о конфигурациях сеансов см. в разделе about_Session_Configurations.
Описание параметров сеанса, включая значения по умолчанию, см. в разделе New-PSSessionOption
.
Сведения о переменной $PSSessionOption
предпочтения см. в about_Preference_Variables.
Тип: | PSSessionOption |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ThrottleLimit
Указывает максимальное число одновременных подключений, которые можно установить для запуска этой команды.
Если этот параметр не указан или введите значение 0
(ноль), используется значение по умолчанию для конфигурации 100
сеанса Microsoft.PowerShellWorkflow.
Предел регулирования применяется только к текущему командлету, а не к сеансу или компьютеру.
Тип: | Int32 |
Position: | Named |
Default value: | 100 |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-UseSSL
Указывает, что этот командлет использует протокол SSL для установления подключения к удаленному компьютеру. По умолчанию SSL не используется.
Протокол WS-Management шифрует все содержимое Windows PowerShell, передаваемое по сети. Параметр UseSSL — это дополнительная защита, которая отправляет данные через HTTPS-подключение вместо HTTP-подключения.
Если указать этот параметр, но SSL недоступен на порту, который используется для команды, команда завершается ошибкой.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
Сеанс можно передать в этот командлет.
Вы можете передать имя компьютера в этот командлет.
Выходные данные
Примечания
Windows PowerShell включает следующие псевдонимы для New-PSWorkflowSession
:
nwsn
Команда New-PSWorkflowSession
эквивалентна следующей команде:
New-PSSession -ConfigurationName Microsoft.PowerShell.Workflow
Связанные ссылки
PowerShell