Postgres Integration

Automating your Data Types discovery and Privacy Requests fulfillment by integrating MineOS to Postgres

This integration allows you to:

  • Automate content classification to detect data types stored in your Postgres tables.
  • Automate Copy and Delete requests for your Postgres tables.

Before you start

  • Make sure your MineOS plan supports integrations.
  • Make sure you have the correct information and connectionString to connect to your Postgres database.

Make sure to whitelist MineOS IPs in your Postgres database:


Setting up

To connect the Postgres integration, follow these steps:

  1. On the left sidebar, click Data Inventory and then Data Sources
  2. Click on Add data source
  3. Select Postgres from the catalog, then enter the Postgres page from your data sources list
  4. In the RequestHandling tab, check the Handle this data source in privacy requests checkbox and choose the Integration handling style.
  5. create a new user and grant it with the following privileges:
    1. SELECT on the desired database, and tables on your Postgres Database
    2. DELETE on the desired database, and tables on your Postgres Database
      (to support DELETE requests)
  6. you can read about granting privileges here
  7. Enter your Postgres Database ConnectionString which can include:
    1. User ID
    2. User Password
    3. Server's IP
    4. Database Name
    For example, In the following format:

Content Discovery

When using Content Discovery for your tables data, you need to make sure you have given the Postgres user the required permissions to your relevant tables.

Upon content discovery, we will scan all your databases and tables, and analyze each row's data in our PII Processing Engine. These scan results will be added to the data types of your integration general info.

DSR Queries

To manage your DSR handling actions, you need to define the queries that will run on the Database for each possible action:

Note: The queries you use won't be validated! You should run them in your Postgres account to make sure they are running as expected

Query used for search records & delete validation

The query will be used for showing how many records were found as well as showing a sample (preview) of the data. Also, it will be used as a validation for the delete action.

Example Query:

SELECT name,phone,address FROM table1 WHERE email =  '{{endUserEmail}}';

* Preview will return the count of the number of records returned in the query response

* Preview will show the first 3 values from the query response, it supports strings and long types

* The 'endUserEmail' variable is mandatory


Copy Query

The Copy query will be used for the Copy action. Copy action is running on the ticket processing page in ticket of type Copy when clicking on Generate Copy

Example Query:

SELECT * FROM table1 WHERE email = {% raw %} '{{endUserEmail}}';

* Copy will show all records returned in the query response

* The 'endUserEmail' variable is mandatory


Delete Query

The Delete query will be used for the Delete action. Delete action is running on the ticket processing page in ticket of type Deletion when clicking on Delete from X sources


Example Query:

DELETE FROM table1 WHERE email = '{{endUserEmail}}';

* The 'endUserEmail' variable is mandatory.

Paste the details and queries in the Request handling tab in the correct inputs and click Save.


What's next?

Read more about the deletion process using integrations here.

Read more about the get a copy process using integrations here.

Talk to us if you need any help with Integrations via our chat or at, and we'll be happy to assist!🙂