WS-Management 프로토콜
WS-Management 프로토콜은 하드웨어 및 소프트웨어 제조업체 그룹에 의해 개발되었으며, 이 프로토콜을 구현하는 모든 컴퓨터 디바이스와 관리 데이터를 원격으로 교환하기 위한 공개 표준으로 사용됩니다.
표준
WS-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 프로토콜은 WS-Addressing 및 WS-Transfer와 같은 다양한 웹 서비스 표준을 사용하여 XML 메시지를 생성하기 위한 표준을 제공합니다. 이러한 표준은 웹 서비스 메시지에 대한 XML 스키마를 정의합니다. 메시지는 리소스 URI를 사용하여 리소스 를 참조 합니다. WS-Management 프로토콜은 관리 작업 및 값에 대한 정의 집합을 추가합니다. 예를 들어 WS-Transfer 리소스에 대한 가져오기, 배치, 만들기 및 삭제 작업을 정의합니다. WS-Management 프로토콜은 Rename, Partial Get 및 Partial Put을 추가합니다.
메시지는 모든 웹 서비스 프로토콜에서 사용되는 SOAP(Simple Object Access Protocol) 의 규칙을 따릅니다.
다음 코드 예제에서는 Get 작업이 포함된 메시지를 보여 있습니다. 이 예제는 기본 메시지의 모양을 이해하는 데 도움이 되는 것으로 표시됩니다. SOAP 메시지를 생성하는 방법을 알 필요가 없습니다. 메시지는 Winrm 명령줄 도구를 사용하여 명령을 실행하거나 WinRM 스크립팅 API로 작성된 스크립트를 실행할 때 Windows 원격 관리에서 어셈블됩니다.
이 메시지는 RemoteComputer라는 서버에서 DeviceID 속성이 "c:"인 Win32_LogicalDisk instance 가져오기 위한 요청입니다. 요청은 포트 80을 통해 HTTP 전송을 사용합니다. 요청을 보내는 계정은 원격 컴퓨터의 로컬 관리자 그룹에 있어야 합니다.
각 태그의 시작 부분에 있는 콜론 앞의 문자는 XML 요소를 정의하는 표준을 나타냅니다. 예를 들어 는 <wsa:To>
To 요소가 WS-Addressing 표준에 의해 정의되고 <s:Header>
SOAP 메시지에서 헤더 콘텐츠의 시작을 나타냅니다. 메시지의 대부분은 SOAP 또는 WS-Addressing으로 정의된 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>
관련 항목