// Copyright (c) 2012 DMTF. All rights reserved. [Experimental, Version ( "2.32.0" ), UMLPackagePath ( "CIM::Network" ), Description ( "This class describes network policy conditions that can be " "applied to policy rules." )] class CIM_NetworkPolicyCondition : CIM_Policy { [Key, Override ( "InstanceID" ), Description ( "InstanceID is an optional property that may be used to " "opaquely and uniquely identify an instance of this class " "within the scope of the instantiating Namespace. Various " "subclasses of this class may override this property to " "make it required, or a key. Such subclasses may also " "modify the preferred algorithms for ensuring uniqueness " "that are defined below.\n" "To ensure uniqueness within the NameSpace, the value of " "InstanceID should be constructed using the following " "\"preferred\" algorithm: \n" ": \n" "Where and are separated by a colon " "(:), and where must include a copyrighted, " "trademarked, or otherwise unique name that is owned by " "the business entity that is creating or defining the " "InstanceID or that is a registered ID assigned to the " "business entity by a recognized global authority. (This " "requirement is similar to the _ " "structure of Schema class names.) In addition, to ensure " "uniqueness, must not contain a colon (:). When " "using this algorithm, the first colon to appear in " "InstanceID must appear between and . \n" " is chosen by the business entity and should " "not be reused to identify different underlying " "(real-world) elements. If not null and the above " "\"preferred\" algorithm is not used, the defining entity " "must assure that the resulting InstanceID is not reused " "across any InstanceIDs produced by this or other " "providers for the NameSpace of this instance. \n" "If not set to null for DMTF-defined instances, the " "\"preferred\" algorithm must be used with the " "set to CIM." )] string InstanceID; [Description ( "Defines the type of parameter that is used to match traffic.\n" "\n" "SourceIPAddress: IP address indicating the sender of the packet.\n" "DestinationIPAddress: IP address indicating the receiver " "of the packet.\n" "VirtualIPAddress: describes the IP address from which " "the server pool is accessed from.\n" "SourcePort: identifies the sending port\n" "SourcePortRange: identifies a range of sending ports\n" "DestinationPort: identifies the receiving port\n" "DestinationPortRange: identifies a range of receiving ports\n" "HTTPURL: identifies the URL under a HTTP request.\n" "HTTPContent: identifies the Content-Type field under the " "HTPP request\n" "HTTPCookieName: identifies a cookie name under the HTTP request\n" "HTTPCookieValue: identifies a cookie value under the " "HTTP request\n" "HTTPHeaderName: identifies a header name under the HTTP request\n" "HTTPHeaderValue: identifies a header value under the " "HTTP request\n" "HTTPMethod: identifies the HTTP method used in the HTTP request.\n" "Protocol: identifies the Protocol field under the IPv4 Header.\n" "NextHeader: identifies the Protocol field under the IPv6 Header.\n" "SourceSubnet: identifies the subnet of the sender of the packet.\n" "DestinationSubnet: identifies the subnet of the receiver " "of the packet.\n" "Application: identifies the name of the application.\n" "SourceDomainName: identifies the domain name of the " "sender of the packet.\n" "DestinationDomainName: identifies the domain name of the " "receiver of the packet.\n" "SourceMACAddress: MAC address indicating the sender of " "the packet.\n" "DestinationMACAddress: MAC address indicating the " "receiver of the packet.\n" "SourceHostName: identifies the host name of the sender " "of the packet.\n" "DestinationHostName: identifies the host name of the " "receiver of the packet.\n" "SourceNetwork: identifies the network of the sender of " "the packet.\n" "DestinationNetwork: identifies the network of the sender " "of the packet.\n" "TCPFlag: identifies the flags field under the TCP header.\n" "TCPState: identifies the state of the TCP connection.\n" "EtherType: identifies the etherType field under the " "Ethernet frame.\n" "ICMPType: identifies the Type field under a ICMP header.\n" "ConnectionLimit: identifies maximum number of concurrent connections.\n" "VirtualSystemName: identifies the name of a VirtualSystem.\n" "VNIC-ID: identifies the ID of a Virtual NIC.\n" "CoS: identifies the Class of Service (CoS) field that is " "present in an Ethernet frame header.\n" "DSCP: identifies the Differentiated Services Code Point " "(DSCP) field under the IPv4 Header.\n" "PacketLength: identifies the TotalLength field under the " "IP Header\n" "SSLCipher: identifies the SSL cipher suite used for the " "HTTPS connection.\n" "SSLCipherStrength: identifies the SSL cipher strength of " "the SSL Certificate." ), ValueMap { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "..", "32767..65535" }, Values { "Other", "SourceIPAddress", "DestinationIPAddress", "VirtualIPAddress", "SourcePort", "SourcePortRange", "DestinationPort", "DestinationPortRange", "HTTPURL", "HTTPContent", "HTTPCookieName", "HTTPCookieValue", "HTTPHeaderName", "HTTPHeaderValue", "HTTPMethod", "Protocol", "NextHeader", "SourceSubnet", "DestinationSubnet", "Application", "SourceDomainName", "DestinationDomainName", "SourceMACAddress", "DestinationMACAddress", "SourceHostName", "DestinationHostName", "SourceNetwork", "DestinationNetwork", "TCPFlag", "TCPState", "EtherType", "ICMPType", "ConnectionLimit", "VirtualSystemName", "VNIC-ID", "CoS", "DSCP", "PacketLength", "SSLCipher", "SSLCipherStrength", "HeaderName", "HeaderValue", "DMTF Reserved", "Vendor Reserved" }] uint16 ParameterType; [Description ( "This property defines the possible values for the " "operator function.\n" "\n" "IsEqualTo - The value of the parameter is the same as " "the given value (All value types)\n" "IsGreaterThan - The value of a parameter is strictly " "greater than the given value (Numeric values only)\n" "IsLessThan - The value of a parameter is strictly less " "than the given value (Numeric values only)\n" "IsInRange - The value of a parameter is between or " "includes the given values (Numeric values only)\n" "BeginsWithString - An initial substring of the parameter " "is the same as the given string (String values only)\n" "EndsWithString - A final substring of the parameter is " "the same as the given string (String values only)\n" "ContainsString - A substring of the parameter is the " "same as the given string (String values only)\n" "IsContainedInList - The value of the parameter is " "contained in the given list (All value types)\n" "IsNotEqualTo - The value of the parameter is not the " "same at the given value (All value types)\n" "IsNotGreaterThan - The parameter is less than or equal " "to the given value (Numeric values only)\n" "IsNotLessThan - The parameter is greater than or equal " "to the given value (Numeric values only)\n" "IsNotInRange - The parameter is strictly outside the " "given range of values (Numeric values only)\n" "DoesNotBeginWithString - Any initial substring of the " "parameter does not match the given string (String values only)\n" "DoesNotEndWithString - Any final substring of the " "parameter does not match the given string (String values only)\n" "DoesNotContainString - Any substring of the parameter " "does not match the given string (String values only)\n" "IsNotContainedInList - The parameter is not amongst " "those listed (All value types)\n" "Offset - One can use a portion of an HTTP header to make " "persistent connections to a specific server. To define " "the portion of the header, one specifies header offset " "and length values. So, the offset here refers to the " "offset from the HTTP header." ), ValueMap { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "..", "32767..65535" }, Values { "Other", "IsEqualTo", "IsGreaterThan", "IsLessThan", "IsInRange", "BeginsWithString", "EndsWithString", "ContainsString", "IsContainedInList", "IsNotEqualTo", "IsNotGreaterThan", "IsNotLessThan", "IsNotInRange", "DoesNotBeginWithString", "DoesNotEndWithString", "DoesNotContainString", "IsNotContainedInList", "Offset", "DMTF Reserved", "Vendor Reserved" }] uint16 Operator; [Description ( "This property contains the value of the parameter." )] string ParameterValue; };