WS-Management 协议

WS-Management 协议是由一组硬件和软件制造商开发的,作为远程交换管理数据与任何实现协议的计算机设备的公共标准。

标准

有关 WS-Management 协议的详细信息,请参阅 Web Services for Management (WS-Management) 规范

协议的目的是为跨许多类型的设备(包括固件)和作系统的管理作提供一致性和互作性。 WS-Management 协议可以扩展,因为 IT 行业会识别新作。

WS-Management 协议的当前实现基于以下标准规范:HTTPS、SOAP over HTTP(WS-I 配置文件)、SOAP 1.2、WS-Addressing、WS-Transfer、WS-Enumeration 和 WS-Eventing。 有关 WS-Management 标准和 XML 架构的详细信息,请参阅 https://dmtf.org/standards/wsman

消息

WS-Management 协议提供了使用各种 Web 服务标准(如 WS 寻址WS 传输)构造 XML 消息 的标准。 这些标准定义 Web 服务消息的 XML 架构。 这些消息使用 资源 URI引用 资源。 WS-Management 协议为管理作和值添加了一组定义。 例如,WS-Transfer 定义资源的“获取”、“放置”、“创建”和“删除”作。 WS-Management 协议添加 Rename、Partial Get 和 Partial Put。

这些消息遵循 简单对象访问协议(SOAP) 的约定,这些约定由所有 Web 服务协议使用。

下面的代码示例显示了一条消息,其中包含 Get作。 此示例显示为了解基础消息的外观的帮助。 无需了解如何生成 SOAP 消息。 使用 Winrm 命令行工具执行命令或运行使用 WinRM 脚本 API编写的脚本时,这些消息由 Windows 远程管理进行组装。

消息是请求从名为 RemoteComputer 的服务器获取具有 DeviceID 属性“c:”的 Win32_LogicalDisk 实例。 请求通过端口 80 使用 HTTP 传输。 发送请求的帐户必须位于远程计算机上的本地管理员组中。

每个标记开头冒号之前的字符指示哪个标准定义 XML 元素。 例如, <wsa:To> 指示 To 元素由 WS-Addressing 标准定义,<s:Header> 指示 SOAP 消息中标头内容的开头。 请注意,大部分消息由 SOAP 或 WS 地址定义的 XML 元素组成。 WS-Management 协议添加 MaxEnvelopeSize、Selector 和 SelectorSet。

<s:Envelope xmlns:s="https://www.w3.org/2003/05/soap-envelope" 
            xmlns:a="https://schemas.xmlsoap.org/ws/2004/08/addressing" 
            xmlns:w="https://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">
  <s:Header>
    <a:To>https://RemoteComputer:80/wsman</a:To> 
    <w:ResourceURI s:mustUnderstand="true">
      http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_logicaldisk
    </w:ResourceURI> 
    <a:ReplyTo>
    <a:Address s:mustUnderstand="true">
      https://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous
    </a:Address> 
    </a:ReplyTo>
    <a:Action s:mustUnderstand="true">
      https://schemas.xmlsoap.org/ws/2004/09/transfer/Get
    </a:Action> 
    <w:MaxEnvelopeSize s:mustUnderstand="true">153600</w:MaxEnvelopeSize> 
    <a:MessageID>uuid:4ED2993C-4339-4E99-81FC-C2FD3812781A</a:MessageID> 
    <w:Locale xml:lang="en-US" s:mustUnderstand="false"/> 
    <w:SelectorSet>
    <w:Selector Name="DeviceId">c:</w:Selector> 
    </w:SelectorSet>
    <w:OperationTimeout>PT60.000S</w:OperationTimeout> 
  </s:Header>
  <s:Body/> 
</s:Envelope>

关于 Windows 远程管理

远程硬件管理