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


Invoke-WSManAction

Вызывает действие для объекта, указанного в URI ресурса и селекторах.

Синтаксис

Invoke-WSManAction
      [-Action] <String>
      [-ConnectionURI <Uri>]
      [-FilePath <String>]
      [-OptionSet <Hashtable>]
      [[-SelectorSet] <Hashtable>]
      [-SessionOption <SessionOption>]
      [-ValueSet <Hashtable>]
      [-ResourceURI] <Uri>
      [-Credential <PSCredential>]
      [-Authentication <AuthenticationMechanism>]
      [-CertificateThumbprint <String>]
      [<CommonParameters>]
Invoke-WSManAction
      [-Action] <String>
      [-ApplicationName <String>]
      [-ComputerName <String>]
      [-FilePath <String>]
      [-OptionSet <Hashtable>]
      [-Port <Int32>]
      [[-SelectorSet] <Hashtable>]
      [-SessionOption <SessionOption>]
      [-UseSSL]
      [-ValueSet <Hashtable>]
      [-ResourceURI] <Uri>
      [-Credential <PSCredential>]
      [-Authentication <AuthenticationMechanism>]
      [-CertificateThumbprint <String>]
      [<CommonParameters>]

Описание

Invoke-WSManAction выполняет действие с объектом, заданным RESOURCE_URI, где параметры указываются парами "ключ-значение".

Для выполнения действия этот командлет использует соединение/транспортный уровень WS-Management.

Примеры

Пример 1

Invoke-WSManAction -Action startservice -ResourceURI wmicimv2/win32_service  -SelectorSet @{name="spooler"} -Authentication default

xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ReturnValue : 0

Эта команда вызывает метод StartService экземпляра класса WMI Win32_Service, соответствующий службе очереди печати.

Возвращаемое значение указывает, было ли действие успешным. В данном случае возвращаемое значение 0 указывает на успешное выполнение. Возвращаемое значение 5 указывает на то, что служба уже запущена.

Пример 2

Invoke-WSManAction -Action stopservice -ResourceURI wmicimv2/Win32_Service -SelectorSet @{Name="spooler"} -FilePath:input.xml -Authentication default

xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ReturnValue : 0

Эта команда вызывает метод StopService для службы очереди печати с использованием входных данных из файла. Файл Input.xml содержит следующее:

<p:StopService_INPUT xmlns:p="https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service" />

Возвращаемое значение указывает, было ли действие успешным. В данном случае возвращаемое значение 0 указывает на успешное выполнение. Возвращаемое значение 5 указывает на то, что служба уже запущена.

Пример 3

Invoke-WSManAction -Action create -ResourceURI wmicimv2/win32_process -ValueSet @{commandline="notepad.exe";currentdirectory="C:\"}

xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Process
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ProcessId   : 6356
ReturnValue : 0

Эта команда вызывает метод Create класса Win32_Process. Он передает методу два значения параметров, Notepad.exe и "C:". В результате создается новый процесс для запуска Блокнота, а текущий каталог нового процесса имеет значение "C:".

Пример 4

Invoke-WSManAction -Action startservice -ResourceURI wmicimv2/win32_service  -SelectorSet @{name="spooler"} -ComputerName server01 -Authentication default

xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ReturnValue : 0

Эта команда вызывает метод StartService экземпляра класса WMI Win32_Service, соответствующий службе очереди печати. Поскольку указан параметр ComputerName, команда выполняется для удаленного компьютера server01.

Возвращаемое значение указывает, было ли действие успешным. В данном случае возвращаемое значение 0 указывает на успешное выполнение. Возвращаемое значение 5 указывает на то, что служба уже запущена.

Параметры

-Action

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

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationName

Указывает имя приложения в соединении. Значение по умолчанию для параметра ApplicationName — WSMAN. Полный идентификатор для удаленной конечной точки имеет следующий формат:

<transport>://<server>:<port>/<ApplicationName>

Пример:

http://server01:8080/WSMAN

Службы IIS, где размещен сеанс, перенаправляют запросы с этой конечной точки в заданное приложение. Этот параметр по умолчанию WSMAN подходит для большинства задач. Он предназначен для использования в ситуации, когда много компьютеров устанавливают удаленное подключение к одному компьютеру, на котором выполняется Windows PowerShell. В данном случае для повышения эффективности в службах IIS размещены веб-службы для управления (WS-Management).

Type:String
Position:Named
Default value:Wsman
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Authentication

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

  • Basic — схема, в которой имя пользователя и пароль отправляются на сервер или прокси-сервер в виде открытого текста.
  • Default — использование метода аутентификации, реализованного протоколом WS-Management. Это значение по умолчанию.
  • Digest — это схема запроса и ответа, использующая указанную сервером строку данных в качестве запроса.
  • Kerberos — клиентский компьютер и сервер выполняют взаимную аутентификацию с использованием сертификатов Kerberos.
  • Negotiate — это схема запроса и ответа, которая согласовывает с сервером или прокси-сервером ту схему, которую нужно использовать для аутентификации. Например, значение этого параметра позволяет согласованию определить, используется ли протокол Kerberos или NTLM.
  • CredSSP — использование аутентификации CredSSP, которая позволяет пользователю делегировать учетные данные. Этот параметр предназначен для команд, которые выполняются на одном удаленном компьютере, но собирают данные или выполняют дополнительные команды на других удаленных компьютерах.

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

Type:AuthenticationMechanism
Aliases:auth, am
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificateThumbprint

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

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

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

Задает имя компьютера, для которого требуется выполнить операцию управления. Значение может быть полным доменным именем, NetBIOS-именем или IP-адресом. Для указания локального компьютера используйте его имя, localhost или точку (.). Локальный компьютер используется по умолчанию. Если удаленный компьютер находится в другом домене по отношению к пользователю, необходимо использовать полное имя домена. Можно передать значение этого параметра в командлет.

Type:String
Aliases:cn
Position:Named
Default value:Localhost
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ConnectionURI

Указывает конечную точку соединения. Строки имеют следующий формат:

<Транспорт>://<сервер>:<порт>/<имя_приложения>

Следующая строка представляет собой правильно отформатированное значение для этого параметра:

http://Server01:8080/WSMAN

Значение URI должно быть указано полностью.

Type:Uri
Aliases:CURI, CU
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

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

Type:PSCredential
Aliases:cred, c
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-FilePath

Указывает путь к файлу, который используется для обновления ресурса управления. Для указания ресурса управления используется параметр ResourceURI и параметр SelectorSet. Например, следующая команда использует параметр FilePath:

invoke-wsmanaction -action stopservice -resourceuri wmicimv2/Win32_Service -SelectorSet @{Name="spooler"} -FilePath:c:\input.xml -authentication default

Эта команда вызывает метод StopService для службы очереди печати с использованием входных данных из файла. Файл Input.xml содержит следующее:

<p:StopService_INPUT xmlns:p="https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service" />

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OptionSet

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

В следующем примере демонстрируется синтаксис, который передает значения 1, 2 и 3 для параметров a, b и c:

-OptionSet @{a=1;b=2;c=3}

Type:Hashtable
Aliases:os
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Port

Указывает порт, используемый при подключении клиента к службе удаленного управления Windows. Если транспортом является HTTP, порт по умолчанию равен 80. Если транспортом является HTTPS, порт по умолчанию равен 443. При использовании HTTPS в качестве транспорта значение параметра ComputerName должно соответствовать общему имени (CN) сертификата сервера. Однако если параметр SkipCNCheck указан в составе параметра SessionOption, то общее имя сертификата сервера может отличаться от имени узла сервера. Параметр SkipCNCheck следует использовать только для доверенных компьютеров.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceURI

Содержит универсальный код ресурса (URI) для класса или экземпляра ресурса. URI используется для идентификации определенного типа ресурсов, например дисков и процессов на компьютере.

URI состоит из префикса и пути к ресурсу. Пример:

https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk

http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSensor

Type:Uri
Aliases:ruri
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SelectorSet

Задает набор пар значений, используемых для выбора определенных экземпляров ресурсов управления. SelectorSet используется, если существует несколько экземпляров ресурса. Значение SelectorSet должно быть хэш-таблицей.

В следующем примере показано, как ввести значение для этого параметра:

-SelectorSet @{Name="WinRM";ID="yyy"}

Type:Hashtable
Position:2
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-SessionOption

Определяет набор расширенных параметров для сеанса WS-Management. Введите объект SessionOption, созданный с помощью командлета New-WSManSessionOption. Дополнительные сведения о доступных параметрах см. в описании New-WSManSessionOption.

Type:SessionOption
Aliases:so
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseSSL

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

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ValueSet

Указывает хэш-таблицу, помогающую изменить ресурс управления. Ресурс управления указывается с помощью параметров ResourceURI и SelectorSet. Значение параметра ValueSet должно быть хэш-таблицей.

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

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

None

Этот командлет не принимает никаких входных данных.

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

None

Этот командлет не формирует никаких выходных данных.