# Class CIM_NetworkPolicyService
extends CIM_Service

This class describes a network policy service. The network policy service can used to manage network policies like firewall, load balancing, QoS, DHCP, and DNS. Typically, this network policy service corresponds to an abstraction of the service within a domain (for example, an orchestration layer).

### Table of Contents
Hierarchy
Direct Known Subclasses
Class Qualifiers
Class Properties
Class Methods

## Class Hierarchy

CIM_ManagedElement
|
+--CIM_ManagedSystemElement
|
+--CIM_LogicalElement
|
+--CIM_EnabledLogicalElement
|
+--CIM_Service
|
+--CIM_NetworkPolicyService

## Direct Known Subclasses

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
Description | string | This class describes a network policy service. The network policy service can used to manage network policies like firewall, load balancing, QoS, DHCP, and DNS. Typically, this network policy service corresponds to an abstraction of the service within a domain (for example, an orchestration layer).
UMLPackagePath | string | CIM::Network
Version | string | 2.54.0

## Class Properties

### Local Class Properties

Name | Data Type | Default Value | Qualifiers
--- | --- | --- | ---
Name | Data Type | Value
OtherServiceTypeDescription | string |
Description | string | A string that describes the network policy service type when the ServiceType is set to 1 ("Other").
ServiceID | string |
Description | string | This property identifies an instance of a network policy service.
ModelCorrespondence | string | CIM_NetworkPolicyService.ServiceIDType
ServiceIDType | uint16 |
Description | string | This property describes the type of identifier used to identify an instance of a network policy service.
ModelCorrespondence | string | CIM_NetworkPolicyService.ServiceID
ValueMap | string | 2, 3, .., 32768..65535
Values | string | URI, UUID, DMTF Reserved, Vendor Reserved
ServiceType | uint16 |
Description | string | This property describes the type of network policy service supported. This property does not identify an instance of a specific type of network policy service. Load Balancer: describes a load balancing service for the management and application of load balancer policies and rules. QoS: describes a Quality of Service (QoS) service for the management and application of QoS policies and rules. Firewall: describes a firewalling service for the management and application of firewall policies and rules. VPN: describes a Virtual Private Network (VPN) service for the configuration and management of VPNs. DHCPv4: describes a DHCP service for automatic network configuration of client systems on IPv4 networks. DHCPv6: describes a DHCP service for automatic network configuration of client systems on IPv6 networks. DNS: describes a Dynamic Name System (DNS) resolution service. NAT: describes a Network Address Translation (NAT) service for the configuration of NAT rules. Gateway: describes a gateway service for the configuration and management of gateway's functionalities. Layer4 Port Forwarding: describes a Port Forwarding service based on Layer 4 protocols for the configuration of port forwarding rules. IP Routing: describes a IP routing service for the configuration and management of routing rules.
ValueMap | string | 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, .., 32768..65535
Values | string | Other, Load Balancer, QoS, Firewall, VPN, DHCPv4, DHCPv6, DNS, NAT, Gateway, Layer4 Port Forwarding, IP Routing, DMTF Reserved, Vendor Reserved

### Inherited Properties

Name | Data Type | Class Origin
--- | --- | ---
Caption | string | CIM_ManagedElement
CommunicationStatus | uint16 | CIM_ManagedSystemElement
CreationClassName | string | CIM_Service
Description | string | CIM_ManagedElement
DetailedStatus | uint16 | CIM_ManagedSystemElement
ElementName | string | CIM_ManagedElement
EnabledDefault | uint16 | CIM_EnabledLogicalElement
EnabledState | uint16 | CIM_EnabledLogicalElement
Generation | uint64 | CIM_ManagedElement
HealthState | uint16 | CIM_ManagedSystemElement
InstallDate | datetime | CIM_ManagedSystemElement
InstanceID | string | CIM_ManagedElement
LoSID | string | CIM_Service
LoSOrgID | string | CIM_Service
Name | string | CIM_Service
OperatingStatus | uint16 | CIM_ManagedSystemElement
OtherEnabledState | string | CIM_EnabledLogicalElement
PrimaryOwnerContact | string | CIM_Service
PrimaryOwnerName | string | CIM_Service
PrimaryStatus | uint16 | CIM_ManagedSystemElement
RequestedState | uint16 | CIM_EnabledLogicalElement
Started | boolean | CIM_Service
StartMode | string | CIM_Service
Status | string | CIM_ManagedSystemElement
SystemCreationClassName | string | CIM_Service
SystemName | string | CIM_Service
TimeOfLastStateChange | datetime | CIM_EnabledLogicalElement
TransitioningToState | uint16 | CIM_EnabledLogicalElement
AvailableRequestedStates | uint16[] | CIM_EnabledLogicalElement
OperationalStatus | uint16[] | CIM_ManagedSystemElement
StatusDescriptions | string[] | CIM_ManagedSystemElement

## Class Methods

### Local Class Methods

#### CreatePolicyRule (uint32)

#### Method Qualifiers (CreatePolicyRule)

Name | Data Type | Value
--- | --- | ---
Description | string | This method creates an instance of CIM_NetworkPolicyRule class and instances of CIM_NetworkPolicyCondition, CIM_NetworkPolicyAction, CIM_NetworkPolicyRuleSettingData, and CIM_NetworkPolicyActionSettingData classes and all mandatory associations between these instances

#### Method Parameters (CreatePolicyRule)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
ActionsOrder | uint16[]
ArrayType | string | Indexed
Description | string | An optional array corresponding to the NetworkPolicyAction, ActionOrder is an unsigned integer that indicates the relative position of a PolicyAction in the sequence of actions associated with a NetworkPolicyRule. This parameter populates the ActionOrder parameter in the corresponding CIM_PolicyActionInPolicyRule association instance.
ConditionGroupNumber | uint16[]
Description | string | An array unsigned integer corresponding to the NetworkPolicyCondition input indicating the group to which the contained NetworkPolicyCondition belongs. This integer segments the Conditions into the ANDed sets (when the ConditionListType is "DNF") or similarly, into the ORed sets (when the ConditionListType is "CNF"). This value is used to populate the ConditionGroupNumber property in the association in the corresponding association CIM_PolicyConditionInPolicyRule
NetworkPolicyAction | string[]
ArrayType | string | Indexed
Description | string | an array of embedded instances of the class CIM_NetworkPolicyAction associated with the created rule. This array is indexed with the ActionOrder parameter.
EmbeddedInstance | string | CIM_NetworkPolicyAction
NetworkPolicyActionSettingData | string[]
Description | string | An embedded instance of CIM_NetworkPolicyActionSettingData. This array corresponds to the NetworkPolicyAction input array, the created instance of the embedded class is associated with the corresponding CIM_NetworkPolicyAction.
EmbeddedInstance | string | CIM_NetworkPolicyActionSettingData
NetworkPolicyCondition | string[]
Description | string | An array of enbedded instance of the class CIM_NetworkPolicyCondition to be associated with the created rule rule.
EmbeddedInstance | string | CIM_NetworkPolicyCondition
NetworkPolicyRuleSettingData | string[]
Description | string | An embedded instance of CIM_NetworkPolicyRuleSettingData. This array corresponds to the NetworkPolicyRule input array, the created instance of the embedded class is associated with the corresponding CIM_NetworkPolicyRule.
EmbeddedInstance | string | CIM_NetworkPolicyRuleSettingData
NetworkPolicyRule | REF CIM_NetworkPolicyRule
Description | string | Reference to the created instance of CIM_NetworkPolicyRule
Out | boolean | true

#### DeletePolicyRules (uint32)

#### Method Qualifiers (DeletePolicyRules)

Name | Data Type | Value
--- | --- | ---
Description | string | This method removes the referenced instances CIM_NetworkPolicyRule and all associated instances of CIM_NetworkPolicyAction, CIM_NetworkPolicyCondition, CIM_NetworkPolicyRuleSettingData, and CIM_NetworkPolicyActionSettingData that are only associated with the rule specified in this method input parameter.

#### Method Parameters (DeletePolicyRules)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
NetworkPolicyRule | CIM_NetworkPolicyRule[]
Description | string | An array of referenced instances of CIM_NetworkPolicyRule to be deleted.

#### ApplyPolicyRule (uint32)

#### Method Qualifiers (ApplyPolicyRule)

Name | Data Type | Value
--- | --- | ---
Description | string | Applies the Network Policy Rule to the specified instances of the CIM_ManagedElement. This method creates the instances of the CIM_PolicySetAppliesToElement association between the specified instance of the CIM_NetworkPolicyRule and the instances of CIM_ManagedElement subclasses, which references are supplied.

#### Method Parameters (ApplyPolicyRule)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
ManagedElememt | CIM_ManagedElement[]
Description | string | The managed elements to which to apply the rule
NetworkPolicyRule | REF CIM_NetworkPolicyRule
Description | string | The rule to apply

#### ReleasePolicyRule (uint32)

#### Method Qualifiers (ReleasePolicyRule)

Name | Data Type | Value
--- | --- | ---
Description | string | Removes the Network Policy Rule from the ManagedElement instances it was applied before. This method deletes the instances of the CIM_PolicySetAppliesToElement association between the specified instance of the CIM_NetworkPolicyRule and the instances of CIM_ManagedElement subclasses, which references are supplied.

#### Method Parameters (ReleasePolicyRule)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
ManagedElement | CIM_ManagedElement[]
Description | string | The Manged Elements from which the rule is to be released.
NetworkPolicyRule | REF CIM_NetworkPolicyRule
Description | string | Reference to the rule to be removed

### Inherited Class Methods

Name | Return Type | Class Origin
--- | --- | ---
ChangeAffectedElementsAssignedSequence | uint32 | CIM_Service
RequestStateChange | uint32 | CIM_EnabledLogicalElement
StartService | uint32 | CIM_Service
StopService | uint32 | CIM_Service