88 lines
4.5 KiB
Plaintext
88 lines
4.5 KiB
Plaintext
// Copyright (c) 2005 DMTF. All rights reserved.
|
|
[Abstract, Version ( "2.8.0" ),
|
|
UMLPackagePath ( "CIM::Policy" ),
|
|
Description (
|
|
"PolicySet is an abstract class that represents a set of "
|
|
"policies that form a coherent set. The set of contained "
|
|
"policies has a common decision strategy and a common set of "
|
|
"policy roles (defined via the PolicySetInRole Collection "
|
|
"association). Subclasses include PolicyGroup and PolicyRule." )]
|
|
class CIM_PolicySet : CIM_Policy {
|
|
|
|
[Description (
|
|
"PolicyDecisionStrategy defines the evaluation method "
|
|
"used for policies contained in the PolicySet. There are "
|
|
"two values currently defined: \n"
|
|
"- \'First Matching\' (1) executes the actions of the "
|
|
"first rule whose conditions evaluate to TRUE. The "
|
|
"concept of \'first\' is determined by examining the "
|
|
"priority of the rule within the policy set (i.e., by "
|
|
"examining the property, PolicySetComponent.Priority). "
|
|
"Note that this ordering property MUST be maintained when "
|
|
"processing the PolicyDecisionStrategy. \n"
|
|
"- \'All\' (2) executes the actions of ALL rules whose "
|
|
"conditions evaluate to TRUE, in the set. As noted above, "
|
|
"the order of processing of the rules is defined by the "
|
|
"property, PolicySetComponent.Priority (and within a "
|
|
"rule, the ordering of the actions is defined by the "
|
|
"property, PolicyActionStructure.ActionOrder). Note that "
|
|
"when this strategy is defined, processing MUST be "
|
|
"completed of ALL rules whose conditions evaluate to "
|
|
"TRUE, regardless of errors in the execution of the rule "
|
|
"actions." ),
|
|
ValueMap { "1", "2" },
|
|
Values { "First Matching", "All" }]
|
|
uint16 PolicyDecisionStrategy;
|
|
|
|
[Deprecated { "CIM_PolicySetInRoleCollection" },
|
|
Description (
|
|
"The PolicyRoles property represents the roles associated "
|
|
"with a PolicySet. All contained PolicySet instances "
|
|
"inherit the values of the PolicyRoles of the aggregating "
|
|
"PolicySet but the values are not copied. A contained "
|
|
"PolicySet instance may, however, add additional "
|
|
"PolicyRoles to those it inherits from its aggregating "
|
|
"PolicySet(s). Each value in PolicyRoles multi-valued "
|
|
"property represents a role for which the PolicySet "
|
|
"applies, i.e., the PolicySet should be used by any "
|
|
"enforcement point that assumes any of the listed "
|
|
"PolicyRoles values. \n"
|
|
"\n"
|
|
"Although not officially designated as \'role "
|
|
"combinations\', multiple roles may be specified using "
|
|
"the form: \n"
|
|
"<RoleName>[&&<RoleName>]* \n"
|
|
"where the individual role names appear in alphabetical "
|
|
"order (according to the collating sequence for UCS-2). "
|
|
"Implementations may treat PolicyRoles values that are "
|
|
"specified as \'role combinations\' as simple strings. \n"
|
|
"\n"
|
|
"This property is deprecated in lieu of the use of an "
|
|
"association, CIM_PolicySetInRoleCollection. The latter "
|
|
"is a more explicit and less error-prone approach to "
|
|
"modeling that a PolicySet has one or more PolicyRoles." )]
|
|
string PolicyRoles[];
|
|
|
|
[Description (
|
|
"Indicates whether this PolicySet is administratively "
|
|
"enabled, administratively disabled, or enabled for "
|
|
"debug. The \"EnabledForDebug\" property value is "
|
|
"deprecated and, when it or any value not understood by "
|
|
"the receiver is specified, the receiving enforcement "
|
|
"point treats the PolicySet as \"Disabled\". To determine "
|
|
"if a PolicySet is \"Enabled\", the containment hierarchy "
|
|
"specified by the PolicySetComponent aggregation is "
|
|
"examined and the Enabled property values of the "
|
|
"hierarchy are ANDed together. Thus, for example, "
|
|
"everything aggregated by a PolicyGroup may be disabled "
|
|
"by setting the Enabled property in the PolicyGroup "
|
|
"instance to \"Disabled\" without changing the Enabled "
|
|
"property values of any of the aggregated instances. The "
|
|
"default value is 1 (\"Enabled\")." ),
|
|
ValueMap { "1", "2", "3" },
|
|
Values { "Enabled", "Disabled", "Enabled For Debug" }]
|
|
uint16 Enabled = 1;
|
|
|
|
|
|
};
|