Invoke-WSManAction
Вызывает действие на объекте, заданном при помощи URI ресурса и селекторов.
Синтаксис
Invoke-WSManAction [-ApplicationName <string>] [-ComputerName <string>] [-Credential <PSCredential>] [-Credential <PSCredential>] [-Credential <PSCredential>] [-Credential <PSCredential>] [-Credential <PSCredential>] [-Credential <PSCredential>] [-Credential <PSCredential>] [-Credential <PSCredential>] [-Credential <PSCredential>] [-Port <int>] [-Port <int>] [-Port <int>] [-Port <int>] [-Port <int>] [-Port <int>] [-Port <int>] [-Port <int>] [-Port <int>] [-UseSSL] [-ResourceURI] <Uri> [-Action] <string> [-Authentication <AuthenticationMechanism>] [-FilePath <File>] [-OptionSet <hashtable>] [-SelectorSet <hashtable>] [-SessionOption <hashtable>] [-ValueSet <hashtable>] [<CommonParameters>]
Invoke-WSManAction [-ConnectionURI <Uri>] [-ResourceURI] <Uri> [-Action] <string> [-Authentication <AuthenticationMechanism>] [-FilePath <File>] [-OptionSet <hashtable>] [-SelectorSet <hashtable>] [-SessionOption <hashtable>] [-ValueSet <hashtable>] [<CommonParameters>]
Описание
Командлет Invoke-WSManAction выполняет действие на объекте, заданном RESOURCE_URI, где параметры задаются парами "ключ-значение".
Для выполнения действия командлет использует уровень соединений/транспорта WS-Management.
Параметры
-Action <string>
Указывает метод, который нужно выполнить на объекте управления, заданном значением параметра ResourceURI и селекторами.
Обязательно? |
true |
Позиция? |
2 |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-ApplicationName <string>
Задает имя приложения для подключения. По умолчанию параметр ApplicationName имеет значение "WSMAN". Полный идентификатор удаленной конечной точки имеет следующий формат:
<протокол>://<сервер>:<порт>/<имя_приложения>
Пример:
http://server01:8080/WSMAN
Службы IIS, которые обрабатывают сеанс, перенаправляют запросы с данной конечной точкой указанному приложению. Значение по умолчанию "WSMAN" подходит для большинства случаев. Этот параметр предназначен для использования, когда большое число компьютеров устанавливают удаленные подключения к одному компьютеру, на котором работает Windows PowerShell. В этом случае для повышения эффективности веб-службы WS-Management размещаются в службах IIS.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
wsman |
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Authentication <AuthenticationMechanism>
Задает механизм проверки подлинности, используемый на сервере. Возможные значения:
- Basic: при использовании схемы Basic имя пользователя и пароль передаются серверу или прокси-серверу открытым текстом.
- Default: использовать метод проверки подлинности, реализованный протоколом WS-Management. Это значение используется по умолчанию.
- Digest: при использовании схемы Digest проверка подлинности проводится по принципу "запрос-ответ". В качестве запроса поступает строка данных, указанная сервером.
- Kerberos: выполняется взаимная проверка подлинности компьютера и сервера с использованием сертификатов Kerberos.
- Negotiate: при использовании схемы Negotiate между компьютером и сервером или прокси происходит обмен данными по принципу "запрос-ответ", в ходе которого определяется схема, используемая для проверки подлинности. Например, это значение параметра разрешает согласование одного из двух методов проверки подлинности: Kerberos или NTLM.
- CredSSP: использовать проверку подлинности CredSSP (Credential Security Service Provider), при которой пользователю разрешается делегировать учетные данные. Этот вариант предназначен для команд, которые запускаются на одном удаленном компьютере, но собирают данные с других удаленных компьютеров или выполняют на них дополнительные команды.
Внимание! При проверке подлинности CredSSP учетные данные пользователя делегируются с локального компьютера на удаленный компьютер. Такой подход повышает угрозы безопасности удаленных операций. Если безопасность удаленного компьютера нарушена, при передаче на него учетных данных эти данные могут быть использованы для управления сетевым сеансом.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-ComputerName <string>
Задает компьютер, к которому требуется применить операцию управления. Значение может быть полным доменным именем, именем NetBIOS или IP-адресом. Чтобы задать локальный компьютер, введите имя компьютера, "localhost" или точку (.). Локальный компьютер используется по умолчанию. Если пользователь и удаленный компьютер находятся в разных доменах, необходимо использовать полное доменное имя. Значение этого параметра можно передать командлету по конвейеру.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
localhost |
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-ConnectionURI <Uri>
Задает конечную точку соединения. Строка имеет следующий формат:
<протокол>://<сервер>:<порт>/<имя_приложения>
Следующая строка представляет собой правильно отформатированное значение для этого параметра:
http://Server01:8080/WSMAN
Значение URI должно быть указано полностью.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Credential <PSCredential>
Задает учетную запись пользователя, который располагает разрешением для выполнения этого действия. По умолчанию используется значение "Текущий пользователь". Введите имя пользователя, например "User01", "Domain01\User01" или "User@Domain.com". Или укажите объект PSCredential, например возвращенный командлетом Get-Credential. При вводе имени пользователя появится приглашение ввести пароль.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-FilePath <File>
Задает путь к файлу, который используется для обновления ресурса управления. Ресурс управления указывается с помощью параметров 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"/>
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-OptionSet <hashtable>
Передает службе набор параметров для изменения или уточнения запроса. Передаваемые параметры похожи на параметры, используемые в оболочках командной строки: они зависят от конкретной службы. Можно задать произвольное количество параметров.
В следующем примере показано синтаксическое выражение, позволяющее передать значения 1, 2 и 3 параметрам a, b и c соответственно:
-OptionSet @{a=1;b=2;c=3}
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
true (ByValue, ByPropertyName) |
Принимать подстановочные знаки? |
false |
-Port <int>
Задает порт, используемый клиентом для подключения к службе WinRM. Если в качестве транспорта выбран HTTP, по умолчанию используется порт 80. Если в качестве транспорта выбран HTTPS, по умолчанию используется порт 443. При использовании в качестве транспорта HTTPS значение параметра ComputerName должно соответствовать общему имени сертификата сервера. Однако, если в качестве элемента параметра SessionOption указан параметр SkipCNCheck, общее имя сертификата сервера не обязательно должно соответствовать имени узла сервера. Параметр SkipCNCheck следует использовать только в случае доверенных компьютеров.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-ResourceURI <Uri>
Содержит универсальный идентификатор ресурса (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
Обязательно? |
true |
Позиция? |
1 |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
true (ByValue, ByPropertyName) |
Принимать подстановочные знаки? |
false |
-SelectorSet <hashtable>
Задает набор пар значений, которые используются для выбора конкретных экземпляров ресурса управления. Параметр SelectorSet используется в случае существования нескольких экземпляров ресурса. Значение параметра SelectorSet представляет собой хэш-таблицу.
В следующем примере показано, как задать значение для этого параметра:
-SelectorSet @{Name="WinRM";ID="yyy"}
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-SessionOption <hashtable>
Определяет расширенные параметры сеанса WS-Management. Введите объект SessionOption, созданный с помощью командлета New-WSManSessionOption. Дополнительные сведения о доступных параметрах см. в разделе New-WSManSessionOption.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-UseSSL
Указывает, что для установки подключения к удаленному компьютеру должен использоваться протокол SSL (Secure Sockets Layer). По умолчанию SSL не используется.
Протокол WS-Management шифрует все передаваемое по сети содержимое Windows PowerShell. Параметр UseSSL позволяет указать, что необходимо использовать дополнительную меру защиты: протокол HTTPS вместо HTTP. Если указан этот параметр, однако используемый для подключения порт не поддерживает SSL, команда завершается с ошибкой.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-ValueSet <hashtable>
Задает хэш-таблицу, которая позволяет изменить ресурс управления. Ресурс управления указывается с помощью параметров ResourceURI и SelectorSet. Значение параметра ValueSet должно быть хэш-таблицей.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
<CommonParameters>
Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.
Ввод и вывод
Входным типом является тип объектов, которые можно передавать командлету по конвейеру. Возвращаемым типом является тип объектов, возвращаемых командлетом.
Входные данные |
Нет Этот командлет не принимает никаких входных данных. |
Выходные данные |
Нет Этот командлет не формирует никаких выходных данных. |
Пример 1
C:\PS>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
C:\PS>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
C:\PS>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
C:\PS>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, указывает, что служба уже запущена.
См. также
Концепции
Connect-WSMan
Disable-WSManCredSSP
Disconnect-WSMan
Enable-WSManCredSSP
Get-WSManCredSSP
Get-WSManInstance
New-WSManInstance
New-WSManSessionOption
Remove-WSManInstance
Set-WSManInstance
Set-WSManQuickConfig
Test-WSMan
Invoke-WmiMethod