Protocolo WS-Management

O protocolo WS-Management foi desenvolvido por um grupo de fabricantes de hardware e software como um padrão público para trocar remotamente dados de gerenciamento com qualquer dispositivo de computador que implementa o protocolo.

Padrões

Para obter mais informações sobre WS-Management protocolo, consulte Especificação dos Serviços Web para Gerenciamento (WS-Management).

A intenção do protocolo é fornecer consistência e interoperabilidade para operações de gerenciamento em muitos tipos de dispositivos (incluindo firmware) e sistemas operacionais. WS-Management protocolo pode ser estendido à medida que novas operações são identificadas pelo setor de TI.

A implementação atual do protocolo WS-Management baseia-se nas seguintes especificações padrão: HTTPS, SOAP por HTTP (perfil WS-I), SOAP 1.2, WS-Addressing, WS-Transfer, WS-Enumeration e WS-Eventing. Para obter mais informações sobre os padrões de WS-Management e esquemas XML, consulte https://dmtf.org/standards/wsman

Mensagens

O protocolo WS-Management fornece um padrão para construir mensagens XML usando vários padrões de serviço Web, como WS-Addressing e WS-Transfer. Esses padrões definem esquemas XML para mensagens de serviço Web. As mensagens referem-se a um recurso usando um URI de recurso. O protocolo WS-Management adiciona um conjunto de definições para operações de gerenciamento e valores. Por exemplo, WS-Transfer define as operações Get, Put, Create e Delete para um recurso. WS-Management protocolo adiciona Rename, Partial Get e Partial Put.

As mensagens seguem as convenções do SOAP (Simple Object Access Protocol), que é usado por todos os protocolos de serviço Web.

O exemplo de código a seguir mostra uma mensagem com uma operação Get. Este exemplo é mostrado como um auxílio para entender como são as mensagens subjacentes. Você não precisa saber como produzir mensagens SOAP. As mensagens são montadas pelo Gerenciamento Remoto do Windows quando você executa um comando usando a ferramenta de linha de comando winrm ou executa um script escrito com a API de Script winrm.

A mensagem é uma solicitação para obter a instância de Win32_LogicalDisk com uma propriedade DeviceID de "c:" de um servidor chamado RemoteComputer. A solicitação usa o transporte HTTP por meio da porta 80. A conta que envia a solicitação deve estar no grupo de administradores locais no computador remoto.

Os caracteres antes dos dois-pontos no início de cada marca indicam qual padrão define o elemento XML. Por exemplo, <wsa:To> indica que o elemento To é definido pelo padrão WS-Addressing e <s:Header> indica o início do conteúdo do cabeçalho em uma mensagem SOAP. Lembre-se de que a maioria da mensagem é composta por elementos XML definidos por SOAP ou WS-Addressing. WS-Management protocolo adiciona MaxEnvelopeSize, Selector e 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>

Sobre o Gerenciamento Remoto do Windows

Gerenciamento remoto de hardware