Once data is labeled and usage policies are defined, you can enforce data usage compliance with policies. When activating audience segments to destinations, Adobe Experience Platform automatically enforces usage policies should any violations occur.
This guide requires a working understanding of the Platform services involved in automatic enforcement. Please refer to the following documentation to learn more before continuing with this guide:
The following diagram illustrates how policy enforcement is integrated into the data flow of segment activation:
When a segment is first activated, Policy Service checks for applicable policies based on the following factors:
If there are data usage labels that have only been applied to certain fields within a dataset (rather than the entire dataset), enforcement of those field-level labels on activation only occurs under the following conditions:
Data lineage plays a key role in how policies are enforced in Platform. In general terms, data lineage refers to the origin of a set of data, and what happens to it (or where it moves) over time.
In the context of Data Governance, lineage enables data usage labels to propagate from datasets to downstream services that consume their data, such as Real-time Customer Profile and destinations. This allows policies to be evaluated and enforced at several key points in the data’s journey through Platform, and provides context to data consumers as to why a policy violation occurred.
In Experience Platform, policy enforcement is concerned with the following lineage:
Each stage in the above timeline represents an entity that may contribute to policy enforcement, as outlined in the table below:
|Data lineage stage||Role in policy enforcement|
|Dataset||Datasets contain data usage labels (applied at the dataset or field level) that define which use cases the entire dataset or specific fields can be used for. Policy violations will occur if a dataset or field containing certain labels is used for a purpose that a policy restricts.
Any consent attributes collected from your customers are also stored in datasets. If you have access to consent policies, any profiles that do not meet the consent attribute requirements of your policies will be excluded from segments that are activated to a destination.
|Merge policy||Merge policies are the rules that Platform uses to determine how data will be prioritized when merging together fragments from multiple datasets. Policy violations will occur if your merge policies are configured so that datasets with restricted labels are activated to a destination. See the merge policies overview for more information.|
|Segment||Segment rules define which attributes should be included from customer profiles. Depending on which fields a segment definition includes, the segment will inherit any applied usage labels for those fields. Policy violations will occur if you activate a segment whose inherited labels are restricted by the target destination’s applicable policies, based on its marketing use case.|
|Destination||When setting up a destination, a marketing action (sometimes called a marketing use case) can be defined. This use case correlates to a marketing action as defined in a policy. In other words, the marketing action you define for a destination determines which data usage policies and consent policies are applicable to that destination.
Data usage policy violations occur if you activate a segment whose usage labels are restricted for the target destination’s marketing action.
(Beta) When a segment is activated, any profiles that do not contain the required consent attributes for the marketing action (as defined by your consent policies) are excluded from the activated audience.
Some data usage policies may specify two or more labels with an AND relationship. For example, a policy could restrict a marketing action if labels
C2 are both present, but does not restrict the same action if only one of those labels are present.
When it comes to automatic enforcement, the Data Governance framework does not consider the activation of separate segments to a destination as a combination of data. Therefore, the example
C1 AND C2 policy is NOT enforced if these labels are included in separate segments. Instead, this policy is only enforced when both labels are present in the same segment upon activation.
When policy violations occur, the resulting messages that appear in the UI provide useful tools for exploring the violation’s contributing data lineage to help resolve the issue. More details are provided in the next section.
The sections below outline the different policy enforcement messages that appear in the Platform UI:
If a policy violation occurs from attempting to activate a segment (or making edits to an already activated segment) the action is prevented and a popover appears indicating that one or more policies have been violated. Once a violation has triggered, the Save button is disabled for the entity you are modifying until the appropriate components are updated to comply with data usage policies.
Select a policy violation in the popover’s left column to display details for that violation.
The violation message provides a summary of the policy that was violated, including the conditions the policy is configured to check for, the specific action that triggered the violation, and a list of possible resolutions for the issue.
A data lineage graph is displayed below the violation summary, allowing you to visualize which datasets, merge policies, segments, and destinations were involved in the policy violation. The entity that you are currently changing is highlighted in the graph, indicating which point in the flow is causing the violation to occur. You can select an entity name within the graph to open the details page for the entity in question.
You can also use the Filter icon () to filter the displayed entities by category. At least two categories must be selected in order for data to be displayed.
Select List view to display the data lineage as a list. To switch back to the visual graph, select Path view.
Consent policies are currently only available for organizations that have purchased Healthcare Shield.
If you have created consent policies and are activating a segment to a destination, you can see how your consent policies affect the percentage of profiles that are included in the activation.
Once you reach at the Review step when activating a destination, select View applied policies.
A policy check dialog appears, showing you a preview of how your consent policies affect the consented audience of the activated segments.
The dialog shows the consented audience for one segment at a time. To view the policy evaluation for a different segment, use the dropdown menu above the diagram to select one from the list.
Use the left rail to switch between the applicable consent policies for the selected segment. Policies that are not selected are represented in the “Other policies” section of the diagram.
The diagram displays the overlap between three groups of profiles:
The profiles that qualify for all three of the above groups represent the consented audience for the selected segment, summarized in the right rail.
Hover over one of the audiences in the diagram to show the number of profiles it contains.
The consented audience is represented by the central overlap of the diagram, and can be highlighted like the other sections.
When data is activated to a destination, the flow run details show the number of identities that were excluded due to active consent policies.
Policy enforcement still applies to segments after they have been activated, restricting any changes to a segment or its destination that would result in a policy violation. Due to how data lineage works in policy enforcement, any of the following actions can potentially trigger a violation:
If any of the above actions triggers a violation, that action is prevented from being saved and a policy violation message is displayed, ensuring that your activated segments continue to comply with data usage policies when being modified.
This document covered how automatic policy enforcement works in Experience Platform. For steps on how to programmatically integrate policy enforcement into your applications using API calls, see the guide on API-based enforcement.