Background
The Policy Framework solution uses the TOSCA policy model as a way to allow users to access common Policy Framework capabilities. The model is extended for specific PDPs. All concepts supported in Policy Framework are extensions of the concepts specified in the standard TOSCA policy definition specification. The concept of Targets in the TOSCA specification is not implemented in common Policy Framework functionality. However, equivalent functionality can be realized using policies in existing PDPs e.g. to return a decision on a 'guard' policy, an XACML policy can be used, or to apply a filter an Apex policy could be used. Therefore to deploy Target like functionality in the Policy Framework, a PDP is deployed.
Scenario and Need(s)
It is proposed that a PoC should be executed to analyze how the Policy Framework could evolve to support the TOSCA specification for Targets while ensuring that the existing Policy Framework functionality and requirements are maintained. The findings of the PoC will inform requirements for the Policy Framework for the Honolulu release.
- Describe how the TOSCA Target concept can be introduced into the ONAP Policy Framework in a common way for all PDPs
- Show how the TOSCA modelling will look in this common approach for various policy types and PDPs
- Describe the implementation of the common functionality
- create a set of sample policy definitions using targets, which follow the TOSCA standard and are supported in the Policy Framework
- execute a series of sample UCs to verify that the policies created in the previous step can be successfully processed by the PDPs in the Policy Framework
PolicyType and Policy Targets in TOSCA
The TOSCA specification for for targets on policy types and policies is identical in Versions 1.0, 1.1, 1.2, and 1.3 of the TOSCA Simple Profile in YAML. For both PolicyType and Policy, targets are defined as a list of strings. AS there is no difference in the definition of targets in any of the TOSCA versions above, the approach described on this page applies to all those versions.
Definition of targets for PolicyType from Section 3.7.12.1 of Version 1.3 of the TOSCA specification.
Definition of targets for Policies from Section 3.8.6.1 of Version 1.3 of the TOSCA specification.
Support for targets in the Policy Framework
The TOSCA specification is silent on how targets, should be interpreted. Therefore the Policy Framework will allow the user to specify what way the targets should be treated for each PolicyType or Policy on which targets are specified. This will be achieved by asking the user to specify a XACML policy for each PolicyType or Policy on which targets have been specified.