7 Appendix B: Product Behavior

The information in this specification is applicable to the following Microsoft products or supplemental software. References to product versions include updates to those products.

The terms "earlier" and "later", when used with a product version, refer to either all preceding versions or all subsequent versions, respectively. The term "through" refers to the inclusive range of versions. Applicable Microsoft products are listed chronologically in this section.

Windows Client

  • Windows Vista operating system with Service Pack 1 (SP1)

  • Windows 7 operating system

  • Windows 8 operating system

  • Windows 8.1 operating system

  • Windows 10 operating system

  • Windows 11 operating system

Windows Server

  • Windows Server 2003 R2 operating system

  • Windows Server 2008 operating system

  • Windows Server 2008 R2 operating system

  • Windows Server 2012 operating system

  • Windows Server 2012 R2 operating system

  • Windows Server 2016 operating system 

  • Windows Server operating system

  • Windows Server 2019 operating system

  • Windows Server 2022 operating system

  • Windows Server 2025 operating system

Exceptions, if any, are noted in this section. If an update version, service pack or Knowledge Base (KB) number appears with a product name, the behavior changed in that update. The new behavior also applies to subsequent updates unless otherwise specified. If a product edition appears with the product version, behavior is different in that product edition.

Unless otherwise specified, any statement of optional behavior in this specification that is prescribed using the terms "SHOULD" or "SHOULD NOT" implies product behavior in accordance with the SHOULD or SHOULD NOT prescription. Unless otherwise specified, the term "MAY" implies that the product does not follow the prescription.

<1> Section 1.7: Windows supports Identify requests and responses, as specified in [DMTF-DSP0226] section 11.

<2> Section 2.2.4.1: Windows supports only the issuer role.

<3> Section 2.2.4.3: Windows supports client certificates.

<4> Section 2.2.4.4: The default value of Basic on Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 is false.

<5> Section 2.2.4.5: The default value of HTTP on Windows Server 2003 R2 without the KB968930, Windows Vista SP1 without the KB968930, and Windows Server 2008 without the KB968930 is 80.

<6> Section 2.2.4.5: The default value of HTTPS on Windows Server 2003 R2 without the KB968930, Windows Vista SP1 without the KB968930, and Windows Server 2008 without the KB968930 is 443.

<7> Section 2.2.4.9: Windows returns an ExitCode element (with the exit code of the command) when there is no error. No ExitCode element is returned when an error occurs.

<8> Section 2.2.4.10: The default value of MaxEnvelopeSizekb on Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 operating system is 150.

<9> Section 2.2.4.10: The default value of <MaxBatchItems> on Windows Server 2003 R2, Windows Vista SP1 and Windows Server 2008 is 20.

<10> Section 2.2.4.10: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 allow a minimum value of 1 for MaxProviderRequests. Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later allow a minimum value of 4294967295 (which is also used as the default value).

<11> Section 2.2.4.10: Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later ignore this value; if an attempt is made to modify this value, a wsmanfault:WSManFault is returned with the Code attribute equal to 2150859182.

<12> Section 2.2.4.13: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 support the use of Custom Remote Shell. Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later do not support the use of Custom Remote Shell; if an operation is issued to the resource URI http://schemas.microsoft.com/wbem/wsman/1/config/winrs/customremoteshell, a wsman:InternalError fault is returned.

<13> Section 2.2.4.29: All server implementations on Windows ignore the options.

<14> Section 2.2.4.31: Windows uses the Path value to specify the log source from which to retrieve events, for example "Application" or "Microsoft-Windows-TaskScheduler/Operational". For more information about event tracing for Windows, see [MSDN-EventTracing].

<15> Section 2.2.4.35: The default value of HTTP on Windows Server 2003 R2 without the KB968930, Windows Vista SP1 without the KB968930, and Windows Server 2008 without the KB968930 is 80.

<16> Section 2.2.4.35: The default value of HTTPS on Windows Server 2003 R2 without the KB968930, Windows Vista SP1 without the KB968930, and Windows Server 2008 without the KB968930 is 443.

<17> Section 2.2.4.36: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 use a default value of 100 and allow a minimum value of 1 for MaxConcurrentOperations. Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later allow a minimum value of 4294967295.

<18> Section 2.2.4.36: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 use the value of MaxConcurrentOperations when processing messages. Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later ignore this value, and if an attempt is made to modify this value on these systems, a wsmanfault:WSManFault is returned with the Code attribute equal to 2150859182.

<19> Section 2.2.4.36: The default value of MaxConcurrentOperationsPerUser on Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 is 15.

<20> Section 2.2.4.36: On Windows Server 2003 R2,Windows Vista SP1, and Windows Server 2008, the default value of MaxConnections is 5.

The default value of MaxConnections on Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7, and Windows Server 2008 R2 is 25.

<21> Section 2.2.4.36: On Windows 7 and Windows Server 2008 R2, the maximum value of MaxConnections is 50. On Windows 8 and later and Windows Server 2012 and later, MaxConnections can be any 10-digit value no larger than 512.

<22> Section 2.2.4.36: On Windows, an idle connection can be counted as one active request until the connection is closed. Closure can take up to two minutes after the server has finished processing a request on that connection.

<23> Section 2.2.4.37: If KB968930 is not installed, Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 servers only process the IdleTimeOut element when the WSMAN_CMDSHELL_OPTION_KEEPALIVE option is specified with a Receive request sent to the shell. If this option is not specified, the IdleTimeOut element is ignored and the shell is not terminated after being idle.

<24> Section 2.2.4.37: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not use this element.

<25> Section 2.2.4.41: Windows Server 2003 R2 without update KB936059 does not support publisher-initiated event subscription.

<26> Section 2.2.4.42: The default value of MaxConcurrentUsers on Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 is 5.

<27> Section 2.2.4.42: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 have a default value of 900000 milliseconds, which corresponds to 15 minutes.

<28> Section 2.2.4.42: On Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7, and Windows Server 2008 R2, the effective minimum value is 60000. If any value from 0 to 59999 is specified, the service will behave as if 60000 had been specified. On Windows 8 and later and Windows Server 2012 and later, the value is 7200000.

<29> Section 2.2.4.42: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 allow a minimum value of 0 for MaxShellRunTime. Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later allow a minimum value of 0x7FFFFFFF (which is also used as the default value).

<30> Section 2.2.4.42: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 terminate the command in progress if it takes longer than the specified amount of time. Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later ignore this value; if an attempt is made to modify this value, a wsman:InternalError fault is returned.

<31> Section 2.2.4.42: The default value of MaxProcessesPerShell on Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 is 5.

<32> Section 2.2.4.42: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 do not return a wsman:InternalError fault when the process count exceeds the specified limit. A new process is not created, and an error message is reported via the "stderr" stream as specified in section 3.1.4.1.31.1.

<33> Section 2.2.4.42: The default value of MaxMemoryPerShellMB on Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 is 80.

<34> Section 2.2.4.42: The default value of MaxShellsPerUser on Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 is 2.

<35> Section 2.2.4.43: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 return error codes that can be either (a) Win32 error codes whose values are taken from the Windows error number space defined in [MS-ERREF], or (b) application-specific error codes whose meanings are determined from out-of-band means such as application documentation.

<36> Section 2.2.4.43: Windows Server 2003 R2 with KB936059 or with KB968930, Windows Vista SP1 and later, and Windows Server 2008 and later return an empty string as the value for the Machine element as part of the fault detail, except when the client and service are on the same computer.

<37> Section 2.2.4.43: Windows Server 2003 R2 with KB936059 or with KB968930, Windows Vista SP1 and later, and Windows Server 2008 and later do not return a providerId element as part of the fault detail.

<38> Section 2.2.4.45: Windows 8 and later and Windows Server 2012 and later prefix the OperationId header value with the string "uuid:" in Acknowledge, AcknowledgeRequest, and KeepAlive messages sent from the server to the client.

<39> Section 2.2.5.3: Windows Server 2003 R2 and later and Windows Vista SP1 and later do not support negative time stamps, which are cim:cimDateTime values that start with a dash ('-').

<40> Section 2.2.9.1: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 do not support the CredSSPEncryptedMessage option. Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later do support the CredSSPEncryptedMessage option.

<41> Section 2.2.9.1.3: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 do not support the CredSSPEncryptedMessage message type. Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later do support the CredSSPEncryptedMessage message type.

<42> Section 3.1.1: Windows Server 2003 R2 and later and Windows Vista SP1 and later use Windows file paths in the Filename attribute.

<43> Section 3.1.1: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 use Windows file paths in the Shell attribute.

<44> Section 3.1.1: The length of this list on Windows 8 and later and Windows Server 2012 and later is limited to 3 megabytes.

<45> Section 3.1.4.1.1: Windows Server 2003 R2 and later and Windows Vista SP1 and later accept the "__cimnamespace" selector, as long as the specified namespace matches the namespace in the ResourceURI. If the namespace in the ResourceURI does not match the one specified by the "__cimnamespace" selector, the request is rejected and an error response is returned. Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later return the "__cimnamespace" selector as a part of the EPR in the response if the ResourceURI given in the client request is a DMTF URI; that is, if the ResourceURI begins with "http://schemas.dmtf.org/".

<46> Section 3.1.4.1.1: Windows Server 2003 R2 and later and Windows Vista SP1 and later process the request and do not reply with an error response if the "__cimnamespace" selector is specified when using a WMI  ResourceURI and the namespace in the ResourceURI matches the one specified by  the "__cimnamespace" selector. If the namespace in the ResourceURI does not match the one specified by the "__cimnamespace" selector, the request is rejected and a wsman:InternalErrorFault is returned.

<47> Section 3.1.4.1.5: Windows accepts any MessageID format, as long as the string is no longer than 2 kilobytes.

<48> Section 3.1.4.1.9: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 do not send the wsmv:DataLocale header in either request messages or response messages. Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later and Windows Server 2008 R2 and later send the wsmv:DataLocale header in request messages, but do not send it in response messages.

<49> Section 3.1.4.1.9: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 do not use the language contained in the wsmv:DataLocale header when formatting numerical data in the response text. Instead, the header is ignored.

<50> Section 3.1.4.1.10: Windows Server 2003 R2 and later and Windows Vista SP1 and later return a wsman:InvalidOptions fault if the wsman:OptionSet element contains a wsman:Option element with mustComply="true" for which the option is not supported for the ResourceURI and operation, as specified in [DMTF-DSP0226] section 6.4.

<51> Section 3.1.4.1.10: On Windows the options supported by a CIM/WMI ResourceURI vary based upon the WMI provider that has implemented the class. These are communicated to the WMI provider by using a WMI Context object, as specified in [MSDN-IWbemContextInterface].

On Windows the service processes any Option element that starts with "wmi:" by removing the "wmi:" prefix and adding the resulting name to the WMI context with the value of the Option element. The service processes any Option element that starts with "wmiarray:" by removing the "wmiarray:" prefix and grouping all values with the same name into an array before adding to the WMI context; the order of the values in the array matches the order in which the Option element occurred in the OptionSet element.

<52> Section 3.1.4.1.10: Windows processes requests for CIM/WMI ResourceURIs without returning any error when the wsman:OptionSet element contains a wsman:Option element with mustComply="true" regardless of the name of the option.

<53> Section 3.1.4.1.10.1: The following versions of Windows do not parse the Type attribute of individual options in the OptionSet.

  • Windows Server 2003 R2

  • Windows Vista SP1

  • Windows Server 2008

  • Windows 7

  • Windows Server 2008 R2

<54> Section 3.1.4.1.11: Windows Server 2003 R2 ignores the RequestEPR header unless mustUnderstand="true", in which case they will return an s:NotUnderstood fault as specified by [SOAP1.2-1/2003]. It does not ignore this header when update KB936059 or update KB968930 is installed.

<55> Section 3.1.4.1.12: Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later can send the wsmv:ActivityId header.

<56> Section 3.1.4.1.12: Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later use the wsmv:ActivityId header to send the RelatedActivityId value, which is used by Event Tracing for Windows to group-related events. For more information on the RelatedActivityId value, see [MSDN-EventSystemPropertiesType]. For more information on Event Tracing, see [MSDN-EventTracing].

<57> Section 3.1.4.1.12: If you do not install KB968930 then Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 return a wsa:InvalidMessageInformationHeader fault if the wsmv:ActivityId header is received in a response message.

<58> Section 3.1.4.1.13: Windows does not include the XMLNS in results when the select statement is of the form "select a, b, c from ..."

<59> Section 3.1.4.1.13: Windows returns the selected elements in alphabetical order.

<60> Section 3.1.4.1.13: Windows does not include the wsmb:Expression element in responses.

<61> Section 3.1.4.1.13: Windows supports Selector Filter Dialect as specified in [DMTF-DSP0226] Annex E.

<62> Section 3.1.4.1.15: Windows Server 2003 R2 ignores the RequestTotalItemsCountEstimate header if update KB936059 or update KB968930 are not installed.

<63> Section 3.1.4.1.16: Windows supports the OptimizeEnumeration element.

<64> Section 3.1.4.1.18: Windows uses the wsman:FragmentTransfer header with WS-Transfer Get and WS-Transfer Put operations.

<65> Section 3.1.4.1.18: Windows returns a wsman:CannotProcessFilter fault if the xpath starts with a slash "/" character.

<66> Section 3.1.4.1.18: Windows returns a wsman:CannotProcessFilter fault if the xpath addresses elements or attributes that are not part of the XML representation and sub-elements of endpoint references (CIM ref properties).

<67> Section 3.1.4.1.18: Windows returns the class name (for example, CIM_Sampl) rather than the class's XSD type (for example, CIM_Sampl_Type) when the xpath identifies the type attribute of an embedded object.

<68> Section 3.1.4.1.18: Windows returns a was:ActionNotSupported fault or a wsman:FilteringNotSupported fault.

<69> Section 3.1.4.1.22: Windows accepts WS-Policy expressions consisting of a sequence of policy assertions but does not accept nested policy assertions.

<70> Section 3.1.4.1.22: Windows rejects the request and reply with an error response when receiving WS-Policy expressions in which a single wsp:All element contains more than one wsman:Authentication assertion.

<71> Section 3.1.4.1.23: Windows uses the following string for the Vendor element: Microsoft Corporation.

Windows uses the following format for the ProductVersion element when the Identify request is authenticated (where "d" is a 32-bit unsigned integer. For example: OS: 5.2.3790 SP: 1.0 Stack: 1.0):

OS: d.d.d SP: d.d Stack: d.d

OS:  The major and minor version numbers of the operating system.

SP:  The service pack installed on the computer.

Stack:  A version number that identifies which version of the WS-Management stack implementation is running.

<72> Section 3.1.4.1.23: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 use the following format for the ProductVersion element when the Identify request is unauthenticated and the WSMANIDENTIFY HTTP header is present.

OS: 0.0.0 SP: 0.0 Stack: 1.1

Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7, and Windows Server 2008 R2 use the following format for the ProductVersion element when the Identify request is unauthenticated and the WSMANIDENTIFY HTTP header is present.

OS: 0.0.0 SP: 0.0 Stack: 2.0

<73> Section 3.1.4.1.23: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not return the wsmid:SecurityProfiles element.

<74> Section 3.1.4.1.23: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not detect compliance with DASH Implementation Requirements version 1. Windows 8 and later and Windows Server 2012 and later detect compliance when an instance of the CIM_RegisteredSpecification class is created in the WMI interop namespace with the following property values:

  • RegisteredName = "DASH"

  • RegisteredVersion = "1.x.y", where x and y are non-negative integer values

<75> Section 3.1.4.1.23: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not detect compliance with SMASH Implementation Requirements version 1. Windows 8 and later and Windows Server 2012 and later detect compliance when an instance of the CIM_RegisteredSpecification class is created in the WMI interop namespace with the following property values:

  • RegisteredName = "SMASH"

  • RegisteredVersion = "1.x.y", where x and y are non-negative integer values

<76> Section 3.1.4.1.23: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not detect compliance with SMASH Implementation Requirements version 2. Windows 8 and Windows Server 2012 detect compliance when an instance of the CIM_RegisteredSpecification class is created in the WMI interop namespace with the following property values:

  • RegisteredName = "SMASH"

  • RegisteredVersion = "2.x.y", where x and y are non-negative integer values

<77> Section 3.1.4.1.28: If you do not install KB968930 then Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 authorize the request by using the RootSDDL configuration setting specified in Server Configuration Data Types.

<78> Section 3.1.4.1.28: Supported in Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later.

<79> Section 3.1.4.1.29.2: Windows only accepts user names to local accounts when using Basic or Negotiate.

<80> Section 3.1.4.1.29.2: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 return a wsman:SchemaValidationError fault whenever they receive a Put request containing a CredSSP property for the resource URI http://schemas.microsoft.com/wbem/wsman/1/config/service/auth. Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7, and Windows Server 2008 R2 support CredSSP as an authentication scheme and accept Put requests containing the CredSSP property.

<81> Section 3.1.4.1.29.2: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 return a wsman:SchemaValidationError fault whenever they receive a Put request containing a CbtHardeningLevel property for the resource URI http://schemas.microsoft.com/wbem/wsman/1/config/service/auth. Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7, and Windows Server 2008 R2 support the CbtHardeningLevel property and accept Put requests containing the CbtHardeningLevel property.

<82> Section 3.1.4.1.29.4: If you do not install KB968930 then Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 do not support the http://schemas.microsoft.com/wbem/wsman/1/config/service/security resource URI.

<83> Section 3.1.4.1.29.5: Windows computes the value of the ListeningOn property as follows:

  • If the value of the Address property is equal to "*", then ListeningOn is set to a list of all IP addresses exposed by all network interfaces on the machine.

  • If the value of the Address property begins with the prefix "MAC:", then ListeningOn is set to a list of all IP addresses exposed by the particular network interface that is represented by the specified MAC address.

  • If the value of the Address property begins with the prefix "IP:", then ListeningOn is set to the specified IP address.

After the value of ListeningOn is set, the list of IP addresses is filtered based on the values of the IPv4Filter and IPv6Filter settings as specified in section 2.2.4.36. Any IP address that does not meet the criteria specified in section 2.2.4.36 will be removed from the list in ListeningOn.

<84> Section 3.1.4.1.30.1: Windows Server 2003 R2 with KB936059 or KB968930, Windows Vista SP1 and later, and Windows Server 2008 operating system and later support the ReadExistingEvents option only, as defined previously.

<85> Section 3.1.4.1.30.1: Windows supports the ReadExistingEvents option as well as predefined, reserved bookmark, http://schemas.dmtf.org/wbem/wsman/1/wsman/bookmark/earliest, as specified in [DMTF-DSP0226] section 10.2.6.

<86> Section 3.1.4.1.31: Plugins are supported only on Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later.

<87> Section 3.1.4.1.31: This mechanism is only supported on Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008.

<88> Section 3.1.4.1.31.2: If you do not install KB968930 then Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 return a wsa:InvalidMessageInformationHeader fault if the wsman:DataLocale header is received in a response message.

<89> Section 3.1.4.1.31.3: Windows Server 2003 R2 and later and Windows Vista SP1 and later return a wsman:SchemaValidationError fault. The message contents depend on the error condition encountered. Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later return a wsman:InvalidValue fault with the following f:Message: "The parameter is incorrect."

<90> Section 3.1.4.1.31.4: Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later send an HTTP cookie only when it is received in a response from the server. If a client receives an HTTP cookie as a part of a response message, it sends that HTTP cookie with any subsequent request message to that shell.

Windows Server 2003 R2 and later and Windows Vista SP1 and later do not send an HTTP cookie unless KB968930 is installed.

<91> Section 3.1.4.1.33: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not support the ShowExtensions option. Windows 8 and later and Windows Server 2012 and later support the ShowExtensions option on WMI classes accessed by using a ResourceURI formatted as specified in section 3.1.4.1.1.

<92> Section 3.1.4.1.34.3: Windows Server 2003 R2 without the KB968930, Windows Vista SP1 without the KB968930, and Windows Server 2008 without the KB968930 do not implement the microsoft.powershell plugin.

<93> Section 3.1.4.1.34.3.1: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 have the following default configuration XML for the WMI Provider, which omits some elements of the schema shown in section 3.1.4.1.34.3.1:

 <PlugInConfiguration Name="WMI Provider" SDKVersion="1" XmlRenderingType="text" xml:lang="en-US" xmlns="http://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration">
     <Resources>
         <Resource ResourceUri="http://schemas.microsoft.com/wbem/wsman/1/wmi" SupportsOptions="true">
             <Capability Type="Get" SupportsFragment="true"></Capability>
             <Capability Type="Put" SupportsFragment="true"></Capability>
             <Capability Type="Invoke"></Capability>
             <Capability Type="Enumerate" SupportsFiltering="true"></Capability>
         </Resource>
         <Resource ResourceUri="http://schemas.dmtf.org/wbem/wscim/1/cim-schema"SupportsOptions="true">
             <Capability Type="Get" SupportsFragment="true"></Capability>
             <Capability Type="Put" SupportsFragment="true"></Capability>
             <Capability Type="Invoke"></Capability>
             <Capability Type="Enumerate" SupportsFiltering="true"></Capability>
         </Resource>
         <Resource ResourceUri="http://schemas.dmtf.org/wbem/wscim/1/*" SupportsOptions="true" ExactMatch="true">
             <Capability Type="Enumerate" SupportsFiltering="true"></Capability>
         </Resource>
     </Resources>
 </PlugInConfiguration>

<94> Section 3.1.4.1.34.3.2: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 have the following default configuration XML for the Event Forwarding Plugin, which omits some of the schema elements from section 3.1.4.1.34.3.2.

 <PlugInConfiguration Name="Event Forwarding Plugin" SDKVersion="1" XmlRenderingType="text" xml:lang="en-US" xmlns="http://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration">
     <Resources>
         <Resource ResourceUri="http://schemas.microsoft.com/wbem/wsman/1/windows/EventLog" SupportsOptions="true">
             <Security Uri="" ExactMatch="false" Sddl=""></Security>
             <Capability Type="Subscribe" SupportsFiltering="true"></Capability>
         </Resource>
     </Resources>
 </PlugInConfiguration>

<95> Section 3.1.4.1.34.3.3: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 have the following default configuration XML for the Event Forwarding Plugin, which omits some of the schema elements from section 3.1.4.1.34.3.3.

 <PlugInConfiguration Name="SEL Plugin" SDKVersion="1" XmlRenderingType="text" xml:lang="en-US" xmlns="http://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration">
     <Resources>
         <Resource ResourceUri="http://schemas.microsoft.com/wbem/wsman/1/logrecord/sel" SupportsOptions="true">
             <Security Uri="" ExactMatch="false" Sddl=""></Security>
             <Capability Type="Subscribe" SupportsFiltering="true"></Capability>
         </Resource>
     </Resources>
 </PlugInConfiguration>

<96> Section 3.1.4.1.34.3.4: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 have the following default configuration XML for the PowerShell Plugin, which omits some of the schema elements from section 3.1.4.1.34.3.4:

 <PlugInConfiguration Name="microsoft.powershell" SDKVersion="1" XmlRenderingType="text" xml:lang="en-US" xmlns="http://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration">
     <Resources>
         <Resource ResourceUri="http://schemas.microsoft.com/powershell/microsoft.powershell" SupportsOptions="true" ExactMatch="true">
             <Security Uri="http://schemas.microsoft.com/powershell/microsoft.powershell" ExactMatch="true" Sddl=" "></Security>
             <Capability Type="Shell"></Capability>
         </Resource>
     </Resources>
 </PlugInConfiguration>

<97> Section 3.1.4.1.37: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not send the wsmv:SessionId header in request messages.

<98> Section 3.1.4.1.38: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not provide class metadata for CIM classes.

<99> Section 3.1.4.1.39: Implementations on Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not send the <wsmv:OperationID> element in response to messages.

<100> Section 3.1.4.2: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 use the resource URI http://schemas.microsoft.com/wbem/wsman/1/config/winrs/customremoteshell to manipulate the CustomRemoteShells table. Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later do not; if an operation is issued to the resource URI http://schemas.microsoft.com/wbem/wsman/1/config/winrs/customremoteshell, an error is returned.

<101> Section 3.1.4.2: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not support WS-Transfer Get when the ResourceURI is formatted to retrieve CIM-XML metadata.

<102> Section 3.1.4.2.1: Windows allows wst:Get messages to be sent to a particular Shell, asynchronously, to any outstanding messages in progress to the specified Shell.

<103> Section 3.1.4.2.1: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 support wst:Get operations on the resource URIs specified. On Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later, the resource URI http://schemas.microsoft.com/wbem/wsman/1/windows/shell is used for wst:Get operations regardless of the type of shell. If another resource URI (such as http://schemas.microsoft.com/wbem/wsman/1/windows/shell/cmd) is specified, a wsa:ActionNotSupported fault is returned.

<104> Section 3.1.4.2.1: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 do not return the following elements in the wst:GetResponse from a remote shell resource: <ResourceUri>, <Owner>, <ClientIP>, <IdleTimeout>, <ShellRunTime>, and <ShellInactivity>. Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later do return the above listed elements.

<105> Section 3.1.4.2.1: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 do return the <Lifetime >element in the wst:GetResponse from a remote shell resource. Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later do not return the <Lifetime> element in the wst:GetResponse from a remote shell resource.

<106> Section 3.1.4.3: Windows Server 2003 R2 and later and Windows Vista SP1 and later do not support Put operations on the http://schemas.microsoft.com/wbem/wsman/1/config/service/defaultports resource URI.

<107> Section 3.1.4.4: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not support the WS-Transfer Delete operation of WMI classes. Windows 8 and later and Windows Server 2012 and later support the WS-Transfer Delete operation on WMI classes when accessed using a ResourceURI formatted as specified in section 3.1.4.1.1.

<108> Section 3.1.4.4.1: Windows Server 2003 R2 and later and Windows Vista SP1 and later allow wst:Delete messages to be sent to a particular Shell in order to forcibly close the Shell, asynchronously to any outstanding messages in progress to the specified Shell.

<109> Section 3.1.4.5: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not support the WS-Transfer Delete operation of WMI classes. Windows 8 and later and Windows Server 2012 and later support the WS-Transfer Create operation on WMI classes when accessed using a ResourceURI formatted as specified in section 3.1.4.1.1.

<110> Section 3.1.4.5.2: Windows uses the options WINRS_NOPROFILE and WINRS_CODEPAGE when creating a remote shell.

<111> Section 3.1.4.5.2.1: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 return the detail f:Message as stated. Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later return the detail f:Message as follows: "The WS-Management service cannot process the request. The maximum number of concurrent shells for this user has been exceeded. Close existing shells or raise the quota for this user."

<112> Section 3.1.4.6: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not support the WS-Eventing Subscribe operation for WMI classes. Windows 8 and later and Windows Server 2012 and later support the WS-Eventing Subscribe operation on WMI classes when the ResourceURI refers to a valid Indication class or to the "all-classes" URI as specified in section 3.1.4.6.

<113> Section 3.1.4.8: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not support the Enumerate operation when the ResourceURI is formatted to retrieve CIM-XML metadata.

<114> Section 3.1.4.8.2: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 support wsen:Enumerate operations on the resource URIs specified. On Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows Server 2008 R2 and later, the resource URI http://schemas.microsoft.com/wbem/wsman/1/windows/shell is used for wsen:Enmerate operations regardless of the type of shell. If another resource URI (such as http://schemas.microsoft.com/wbem/wsman/1/windows/shell/cmd) is specified, a wsa:ActionNotSupported fault is returned.

<115> Section 3.1.4.8.2: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not implement the capability to enumerate the commands in an active shell.

<116> Section 3.1.4.11: If you do not install KB968930 then Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 only support one outstanding command per instance of the shell processor. To achieve concurrent commands, more than one instance of the Shell is created. An attempt to execute a new command while the data stream of a previously executed command is still active will result in a wsman:Concurrency fault.

<117> Section 3.1.4.11: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, Windows Server 2008 R2, and Windows Server 2012 use option WINRS_CONSOLEMODE_STDIN or WINRS_SKIP_CMD_SHELL with the Command message. Windows Server 2012 R2 and later ignore these options.

<118> Section 3.1.4.12: Windows implementations of the Shell processor do not decrement the MaxConcurrentOperationsPerUser counter when a Signal request with a Terminate code is issued to a Text-based Command Shell.

<119> Section 3.1.4.14: Windows Server 2003 R2, Windows Vista SP1, and Windows Server 2008 servers do not ignore the WSMAN_CMDSHELL_OPTION_KEEPALIVE option when included as part of a Receive request. These servers process the <IdleTimeout> element when the WSMAN_CMDSHELL_OPTION_KEEPALIVE option is specified, and ignore the IdleTimeout element when the WSMAN_CMDSHELL_OPTION_KEEPALIVE option is not specified.

<120> Section 3.1.4.14: Windows allows Receive messages to execute concurrently with Send messages.

<121> Section 3.1.4.14: Windows rejects processing new Command requests and replies with an error response until successfully returning a ReceiveResponse with a CommandState element, indicating that the command has terminated or succeeded.

<122> Section 3.1.4.14: On Windows, the streams STDOUT and STDERR always end by using the rsp:Stream/@End attribute.

<123> Section 3.1.4.14: Windows does not provide notification that a command is blocked while waiting for input stream content by returning a rsp:CommandState element with the <Status> element set to rsp:CommandState/Pending. The <Status> element of the rsp:CommandState element is only set to rsp:CommandState/Pending when the command is pending termination; the subsequent value of the <Status> element is always rsp:CommandState/Done.

<124> Section 3.1.4.15: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not implement the Disconnect message.

<125> Section 3.1.4.16: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not implement the Reconnect message.

<126> Section 3.1.4.17: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not implement the Connect message.

<127> Section 3.1.4.19: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not implement the End message.

<128> Section 3.1.4.20: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not implement the Cancel message.

<129> Section 3.2.1: Client implementations on Windows 8 and later and Windows Server 2012 and later use a KeepAliveTimer interval of 42000 milliseconds if the request didn't specify a wsman:OperationTimeout SOAP header. If a wsman:OperationTimeout header was present in the request, the KeepAliveTimer interval is set to that value.

<130> Section 3.2.2: Client implementations on Windows 8 and later and Windows Server 2012 and later use a Connection KeepAlive Timer interval of (MaxPacketRetrievalTime - NetworkDelay), or 100 milliseconds if MaxPacketRetrievalTimeSeconds is less than NetworkDelay. MaxPacketRetrievalTimeSeconds is a server setting that is sent in the wsman:OperationTimeout SOAP header in messages the server sends to the client.

<131> Section 3.2.4.1.2: Windows implementations set the OperationTimeout value to 60 seconds unless overridden by the client application.

<132> Section 3.2.4.1.2: Windows implementations omit the OperationTimeout element by default, but include it if the client application explicitly specifies a value for it.

<133> Section 3.2.4.1.19: This SOAP header is not necessarily sent with every wst:Create message. Its inclusion is based on local configuration.

<134> Section 3.2.4.1.19: Windows Server 2003 R2 with KB968930, Windows Vista SP1 with KB968930, Windows Server 2008 with KB968930, Windows 7 and later, and Windows 8 and later clients send the CompressionType SOAP header as part of the wst:Create message with the value "xpress" to request the encoding according to the LZ77+Huffman compression algorithm described in [MS-XCA] section 3.2. Specifically, each stream block is encoded using the following algorithm:

  1. The first 4 bytes represent the length of the original message -1 and the length of the compressed message – 1. Anything smaller than 266 bytes is not compressed.

  2. If the size of the original data is 266 bytes or larger, the LZ77+Huffman algorithm is used to compress data.

  3. If the total compressed size is more than input data/chunk, the data is written as-is. In this case, the original message length equals the compressed message length. Likewise, such an encoded block is read as-is (instead of processing through a decompressor).

  4. The stream is compressed in 64 KB chunks; for example, a 100 KB input data is compressed in two separate blocks.

<135> Section 3.2.4.1.22.2: Web Services Management Protocol Extensions for Windows Vista clients are required to use an authentication scheme that is enabled.

<136> Section 3.2.4.1.23: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not send the wsmv:SessionId header in request messages.

<137> Section 3.2.4.2: Windows 8 and later and Windows Server 2012 and later include additional data in the ConnectType element for shells that are created using the PowerShell or PowerShell32 plug-ins, as specified in [MS-PSRP] section 3.1.4.10. That section also describes the content of the ConnectResponse element.

<138> Section 3.2.4.2.1: Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, and Windows Server 2008 R2 do not send the End and KeepAlive messages. Windows 8 and later and Windows Server 2012 and later do send the End and KeepAlive messages.

<139> Section 3.2.6.1: On Windows the network location of the event collector is configured by using Group Policy.

<140> Section 3.2.6.2: Windows 8 and later and Windows Server 2012 and later include additional information in the <ConnectType> element for shells that are created using the PowerShell or PowerShell32 plug-ins. The content included in the <ConnectType> element is specified in [MS-PSRP] (section 3.1.4.10).

<141> Section 3.2.7.8: Windows 8 and later and Windows Server 2012 and later include additional data in the ConnectType element for shells that are created using the PowerShell or PowerShell32 plug-ins, as described in [MS-PSRP] section 3.1.4.10. That section also describes the content of the ConnectResponse element.

<142> Section 5.1: The default security profile used by Windows is wsman:secprofile/https/spnego-kerberos.

<143> Section 5.1: Windows implements the following additional security profile: wsman:secprofile/https/mutual described in [DMTF-DSP0226] Annex C.3.5.