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


New-PSWorkflowSession

Создает сеанс рабочего процесса.

Синтаксис

Default (По умолчанию)

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 — это команда , которая задает режим буферизации выходных данных в сеансе для drop.

Пример 2. Создание сеансов рабочего процесса на нескольких удаленных компьютерах

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

"ServerNode01", "Server12" |
    New-PSWorkflowSession -Name WorkflowSession -Credential Domain01\Admin01 -ThrottleLimit 150

Команда использует параметр ThrottleLimit для увеличения ограничения регулирования для каждой команды до 150. Это значение имеет приоритет над ограничением регулирования по умолчанию 100, заданного в конфигурации сеанса Microsoft.PowerShell.Workflow.

Параметры

-ApplicationName

Определяет сегмент имени приложения в URI соединения.

Значение по умолчанию — это значение переменной предпочтения $PSSessionApplicationName на локальном компьютере. Если эта переменная предпочтения не определена, значение по умолчанию — WSMAN. Это значение подходит для большинства использования. Дополнительные сведения см. в разделе about_Preference_Variables.

Служба WinRM использует имя приложения для выбора прослушивателя для обслуживания запроса на подключение. Значение этого параметра должно соответствовать значению свойства URLPrefix прослушивателя на удаленном компьютере.

Свойства параметров

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-Authentication

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

  • Default
  • Basic
  • Credssp
  • Digest
  • Kerberos
  • Negotiate
  • NegotiateWithImplicitCredential

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

Проверка подлинности CredSSP доступна только в Windows Vista, Windows Server 2008 и более поздних версиях операционной системы Windows.

Для получения дополнительной информации о значениях этого параметра см. перечисление AuthenticationMechanism.

Осторожность

Проверка подлинности поставщика служб безопасности учетных данных (CredSSP), в которой учетные данные пользователя передаются на удаленный компьютер для проверки подлинности, предназначена для команд, требующих проверки подлинности на нескольких ресурсах, таких как доступ к удаленному сетевому ресурсу. Этот механизм повышает риск безопасности удаленной операции. Если удаленный компьютер скомпрометирован, учетные данные, передаваемые ему, можно использовать для управления сетевым сеансом.

Свойства параметров

Тип:AuthenticationMechanism
Default value:Default
Допустимые значения:Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-CertificateThumbprint

Указывает сертификат цифрового открытого ключа (X509) учетной записи пользователя, которая имеет разрешение на выполнение этого действия. Введите отпечаток пальца сертификата.

Сертификаты используются в аутентификации, основанной на клиентских сертификатах. Их можно сопоставить только с локальными учетными записями пользователей; Они не работают с учетными записями домена.

Чтобы получить отпечаток сертификата, используйте командлет Get-Item или командлет Get-ChildItem на диске Windows PowerShell Cert:.

Свойства параметров

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-ComputerName

Создает постоянное подключение (PSSession) к указанному компьютеру. Если ввести несколько имен компьютеров, Windows PowerShell создает несколько PSSessions, по одному для каждого компьютера. По умолчанию используется локальный компьютер.

Введите имя NetBIOS, IP-адрес или полное доменное имя одного или нескольких удаленных компьютеров. Чтобы указать локальный компьютер, введите имя компьютера, localhostили точку (.). Если компьютер находится в домене, отличном от пользователя, требуется полное доменное имя. Вы также можете передать имя компьютера в кавычки в New-PSWorkflowSession.

Чтобы использовать IP-адрес в значении параметра ComputerName, команда должна включать параметр Credential. Кроме того, компьютер должен быть настроен для транспорта HTTPS или IP-адрес удаленного компьютера должен быть включен в список WinRM TrustedHosts на локальном компьютере. Инструкции по добавлению имени компьютера в список TrustedHosts см. в разделе "Добавление компьютера в список доверенных узлов" в about_Remote_Troubleshooting.

Свойства параметров

Тип:

String[]

Default value:Local computer
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:CN

Наборы параметров

(All)
Position:0
Обязательно:False
Значение из конвейера:True
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-Credential

Указывает учетную запись пользователя, которая имеет разрешение на выполнение этого действия. По умолчанию используется текущий пользователь. Введите имя пользователя, например User01, Domain01\User01или User@Domain.com, или введите объект PSCredential, например один, возвращенный командлетом Get-Credential.

При вводе имени пользователя этот командлет запрашивает пароль.

Свойства параметров

Тип:Object
Default value:Current user
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-EnableNetworkAccess

Указывает, что этот командлет добавляет интерактивный маркер безопасности в сеансы обратного цикла. Интерактивный маркер позволяет выполнять команды в сеансе обратного цикла, который получает данные с других компьютеров. Например, можно выполнить команду в сеансе, который копирует XML-файлы с удаленного компьютера на локальный компьютер.

Сеанс обратного цикла — это PSSession, которая возникает и заканчивается на том же компьютере. Чтобы создать сеанс обратного цикла, не указывайте параметр ComputerName или задайте для параметра dot (.), localhostили имя локального компьютера.

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

Параметр EnableNetworkAccess действует только в сеансах обратного цикла. Если указать параметр EnableNetworkAccess при создании сеанса на удаленном компьютере, команда завершается успешно, но параметр игнорируется.

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

Чтобы защитить компьютер от вредоносного доступа, отключенные сеансы цикла с интерактивными маркерами, созданные с помощью параметра EnableNetworkAccess, можно повторно подключить только с компьютера, на котором был создан сеанс. Отключенные сеансы, использующие проверку подлинности CredSSP, можно повторно подключить с других компьютеров. Дополнительные сведения см. в командлете Disconnect-PSSession.

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

Свойства параметров

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Name

Указывает понятное имя сеанса рабочего процесса. Имя можно использовать с другими командлетами, такими как Get-PSSession и Enter-PSSession. Имя не обязательно должно быть уникальным для компьютера или текущего сеанса.

Свойства параметров

Тип:

String[]

Default value:Session#
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера: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\>"}

Не используйте параметр порта , если вы не должны. Параметр порта в команде применяется ко всем компьютерам или сеансам, на которых выполняется команда. Альтернативный параметр порта может предотвратить выполнение команды на всех компьютерах.

Свойства параметров

Тип:Int32
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-SessionOption

Задает дополнительные параметры сеанса. Введите объект SessionOption, например объект, создаваемый с помощью командлета New-PSSessionOption.

Значения по умолчанию для параметров определяются значением переменной предпочтения $PSSessionOption, если она задана. В противном случае значения по умолчанию устанавливаются параметрами, заданными в конфигурации сеанса.

Значения параметра сеанса имеют приоритет над значениями по умолчанию для сеансов, заданных в переменной предпочтения $PSSessionOption и в конфигурации сеанса. Однако они не имеют приоритета над максимальными значениями, квотами или ограничениями, установленными в конфигурации сеанса. Дополнительные сведения о конфигурациях сеансов см. в about_Session_Configurations.

Описание параметров сеанса, включая значения по умолчанию, см. в New-PSSessionOption. Сведения о переменной предпочтения $PSSessionOption см. в about_Preference_Variables.

Свойства параметров

Тип:PSSessionOption
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-ThrottleLimit

Указывает максимальное количество одновременных подключений, которые можно установить для выполнения этой команды. Если этот параметр опущен или введите значение 0 (ноль), используется значение по умолчанию для конфигурации сеанса Microsoft.PowerShellWorkflow, 100.

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

Свойства параметров

Тип:Int32
Default value:100
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-UseSSL

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

WS-Management шифрует все содержимое Windows PowerShell, передаваемое по сети. Параметр UseSSL — это дополнительная защита, которая отправляет данные через HTTPS-подключение вместо HTTP-подключения.

Если указать этот параметр, но SSL недоступен на порту, который используется для команды, команда завершается ошибкой.

Свойства параметров

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

CommonParameters

Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.

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

PSSession

Сеанс можно передать в этот командлет.

String

Вы можете передать имя компьютера в этот командлет.

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

PSSession

Примечания

Windows PowerShell включает следующие псевдонимы для New-PSWorkflowSession:

  • nwsn

Команда New-PSWorkflowSession эквивалентна следующей команде:

New-PSSession -ConfigurationName Microsoft.PowerShell.Workflow