Skip to content

You are viewing documentation for Immuta version 2023.2.

For the latest version, view our documentation for Immuta SaaS or the latest self-hosted version.

Write a Purpose-Based Restriction Policy

Use Case

A company in the financial services industry conducts an analysis of two different portfolios to compare their performance.

Compliance Requirement: Client data needs to be limited to specific types of analysis: Performance comparisons.

For this organization's purposes, they should write a purpose-based restriction policy that will restrict use of data in the portfolio to users acting under the purpose(s) of comparing performance of client portfolios. Otherwise, the policy should prevent users who are not conducting performance comparison from accessing the data. The steps below use this scenario to illustrate the policy, but other policy options are noted throughout the tutorial.

  1. Navigate to the Data Policies tab on the Policies page.

  2. Click Add Policy, enter a name for the policy, and then select Limit usage to purpose(s) in the first dropdown menu.

  3. In the next field, select Performance Comparisons as the specific purpose that you would like to restrict usage of this data source to. Additional options include ANY PURPOSE.

    Note: You can add more than one condition by selecting + ADD. The dropdown menu in the far right of the Policy Builder contains conjunctions for your policy. If you select or, only one of your conditions must apply to a user for them to see the data. If you select and, all of the conditions must apply.

  4. Select for everyone from the next dropdown menu to continue the condition. Additional options include for everyone except.

    Note: If you select for everyone except, you must select conditions that will drive the policy such as group, purpose, or attribute key / value pair.

  5. Opt to complete the Enter Rationale for Policy (Optional) field, and then click Add.

  6. Click the dropdown menu beneath Where should this policy be applied, and select On all data sources. Additional options include On data sources and When selected by data owners.

    Note: If you select On data sources, finish the condition in one of the following ways:

    • Tagged: Select this option and then search for tags in the subsequent dropdown menu.

    • With columns tagged: Select this option and then search for tags in the subsequent dropdown menu.

    • With column names spelled like: Select this option, and then enter a regex and choose a modifier in the subsequent fields.

    • In server: Select this option and then choose a server from the subsequent dropdown menu to apply the policy to data sources that share this connection string.

    • Created between: Select this option and then choose a start date and an end date in the subsequent dropdown menus.

  7. Click Create Policy, and then click Activate Policy or Stage Policy.


Once your policy is created, you can view it in the Data Policies tab on the Policy page.

The image below displays the data returned by the query for a user working under the Performance Comparisons purpose.

Data Results

If users were not working under the Performance Comparisons purpose, they would see an error like the one pictured below:

Data Results 2