检测远程计算机是否支持WS-Management协议
可以使用 Session.Identify 或 IWSManSession.Identify 方法确定远程计算机是否具有支持WS-Management协议的服务。
如果在远程计算机上配置了WS-Management协议服务,并且正在侦听请求,则服务可以通过 标头中的以下 XML 检测 Identify 请求。
xmlns:wsmid="https://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidentity"
接收请求的WS-Management协议服务在消息正文中返回以下列表中包含的信息:
- WS-Management协议版本。 例如,"https://schemas.dmtf.org/wbem/wsman/1/wsman"。
- 产品供应商,例如“Microsoft Corporation”。
- 产品版本。 如果在 flags 参数中使用 WSManFlagUseNoAuthentication 发送请求,则不会返回任何产品版本信息。 如果发送请求时使用默认身份验证有效或指定的其他身份验证模式,则可以返回产品版本信息。
检测远程计算机是否配置了 并侦听WS-Management协议服务的请求可以在脚本开始时执行其他操作。 这将验证目标计算机是否可以响应进一步WS-Management协议请求。 验证也可以在单独的脚本中完成。
检测WS-Management协议服务
创建 WSMan 对象。
Set objWsman = CreateObject("Wsman.Automation")
确定请求是应经过身份验证还是未经身份验证发送,并在调用 WSMan.CreateSession 时相应地设置 flags 参数。
set objSession = objWsman.CreateSession("Remote1", _ objWsman.SessionFlagUseNoAuthentication)
调用 Session.Identify。
objSession.Identify
示例
以下 VBScript 代码示例向同一域中名为“Remote1”的远程计算机发送未经身份验证的标识请求。
set objWsman = CreateObject("Wsman.Automation")
set objSession = objWsman.CreateSession("Remote1", _
objWsman.SessionFlagUseNoAuthentication)
WScript.Echo objSession.Identify
以下响应显示远程计算机返回的 XML。 在返回的 XML 中指定WS-Management协议版本 (https://schemas.dmtf.org/wbem/wsman/1/wsman.xsd") 和操作系统供应商 (“Microsoft Corporation”) 。 由于消息是未经身份验证发送的,因此 Windows 远程管理服务不会返回产品版本。
<wsmid:IdentifyResponse xmlns:wsmid=
"https://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidentity.xsd">
<wsmid:ProtocolVersion>https://schemas.dmtf.org/wbem/wsman/1/wsman.xsd
</wsmid:ProtocolVersion>
<wsmid:ProductVendor>Microsoft Corporation</wsmid:ProductVendor>
<wsmid:ProductVersion>OS: 0.0.0 SP: 0.0 Stack:1.0</wsmid:ProductVersion>
</wsmid:IdentifyResponse>
以下 VBScript 代码示例将经过身份验证的标识请求发送到远程计算机。
set ObjWSMan = CreateObject("Wsman.Automation")
set objSession = WSMan.CreateSession("Remote1", _
objWSMan.SessionFlagUseKerberos)
WScript.Echo objSession.Identify
由于请求是使用身份验证发送的,因此会返回版本信息。
<wsmid:IdentifyResponse xmlns:wsmid=
"https://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidentity.xsd">
<wsmid:ProtocolVersion>https://schemas.dmtf.org/wbem/wsman/1/wsman.xsd
</wsmid:ProtocolVersion>
<wsmid:ProductVendor>Microsoft Corporation</wsmid:ProductVendor>
<wsmid:ProductVersion>OS: 6.0.5384 SP: 0.0 Stack:1.0</wsmid:ProductVersion>
</wsmid:IdentifyResponse>
相关主题