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


Получение данных с локального компьютера

Хотя протокол удаленного управления Windows и WS-Management явно предназначен для удаленного взаимодействия, установка сеанса на локальном компьютере является самым простым случаем. Для некоторых сценариев может потребоваться доступ к данным на локальном компьютере, а также на удаленных компьютерах.

WinRM версии 2.0:

Все операции считаются удаленными и служба WinRM должна быть запущена перед выполнением любой операции. Если удаленное назначение не указано, то localhost используется по умолчанию, и все операции будут отправлены в локальную службу WinRM. Дополнительные сведения о запуске службы WinRM см. в разделе Установка и Настройка для Удаленного Управления Windows.

При использовании службы WinRM для локальных операций следует учитывать следующие факторы:

  • Локальная конфигурация WinRM может читаться только администраторами.
  • Пространства имен WMI должны иметь разрешения на удаленное включение. Дополнительные сведения см. в статье Защита удаленного подключения WMI.
  • Если прослушиватель WinRM не создан, служба WinRM прослушивает локальные запросы через порт 47001.

Каждый скрипт WinRM должен начинаться с установления сеанса или подключения к компьютеру путем создания объекта сеанса . После создания сеанса можно использовать методы сеанса сеанса, например Session.Enumerate или Session.Invoke для получения данных или выполнения методов.

Создание сеанса несколько похоже на подключение к пространству имен инструментария управления Windows (WMI). Сеанс по сути является слоем, который позволяет отправлять и получать данные через сообщения SOAP и протокол WS-Management. Дополнительные сведения см. в разделе WS-Management протокола.

Вызов метода WSMan.CreateSession для создания объекта сеанса запустит сеанс , который подключается к локальному WinRM.

для создания сеанса WSMan и получения данных

  1. Создайте объект WSMan.

    Set objWsman = CreateObject("Wsman.Automation")
    
  2. Создайте сеанс, вызвав метод WSMan.CreateSession. Этот сеанс выполняется под именем пользователя входа и паролем и может получать данные через локальную систему WinRM.

    Set objSession = objWsman.CreateSession()
    
  3. Создайте ресурс URI, чтобы определить ресурс , который вы хотите управлять или для которого хотите получить данные. Дополнительные сведения о форматировании URI см. в URI ресурсов. Этот URI ресурса предназначен для определенного экземпляра класса WMI Win32_Service, службы Winmgmt. Для получения дополнительной информации см. Управление удаленным доступом Windows и WMI.

    strResource = "http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service?Name=Winmgmt"
    
  4. Вызовите методы сеанса, которые получают или перечисляют данные с помощью URI ресурса. Дополнительные сведения см. в API скриптов WinRM .

    strResponse = objSession.Get(strResource)
    Wscript.Echo strResponse
    
  5. Сведения о получении или управлении данными с другого компьютера или использовании различных методов проверки подлинности см. в получения данных с удаленного компьютера.

В следующем примере кода VBScript показан полный скрипт, который получает конкретный экземпляр WMI Win32_Service с именем Winmgmt.

Set objWsman = CreateObject("Wsman.Automation")
Set objSession = objWsman.CreateSession()
strResource = "http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service?Name=Winmgmt"
strResponse = objSession.Get(strResource)
Wscript.Echo strResponse

В следующем примере кода VBScript показан полный скрипт с преобразованием данных. Дополнительные сведения см. в разделе Отображение выходных данных XML из скриптов WinRM.

Set objWsman = CreateObject("Wsman.Automation")
Set objSession = objWsman.CreateSession()
strResource = "http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service?Name=Winmgmt"
strResponse = objSession.Get(strResource)
Set xmlFile = CreateObject("MSXml.DOMDocument")
Set xslFile = CreateObject("MSXml.DOMDocument")
xmlFile.LoadXml(strResponse)
xslFile.Load("WsmTxt.xsl")
Wscript.Echo xmlFile.TransformNode(xslFile)

о удаленном управлении Windows

Использование удаленного управления Windows

справочник по удаленному управлению Windows