Personal data anonymizer
Overview
This document shows how we handle GDPR user rights to erasure (right to be forgotten). In general, the flow will be:
Users can call the forget-me API directly in the player portal, or call the API in-game or from a website.
The API will generate a GDPR event and the player will now indicate they want to be forgotten.
When the GDPR event is received, we erase the PII (personal identifiable information) by blocking out the current PII information in our data warehouse.
Requirement
- ETL schema version 1.5
Schema
We will add a new table called gdpr_account_anonymized_t
to save the user ID that has been anonymized. This table will ensure the data is prevented from being re-inserted in the future, particularly in the backfill process.
gdpr_account_anonymized_t
schema:
Column name | Data Type | Nullable | Constraint | Relations | Comment |
---|---|---|---|---|---|
finished_ts | timestamp | no | when the data is completely anonymized | ||
id | big serial | no | Primary Key | auto-generated ID | |
job_run_id | big integer | no | Foreign Key | job_run_t | ETL job run ID |
user_id | big integer | no | Foreign Key | user_t | user ID |
Personal data replacement is shown in the table below:
Table name | Column name | Replacement |
---|---|---|
user_email_t | Redacted | |
user_display_name_t | display_name | Redacted |
user_date_of_birth_t | date_of_birth | 0001-01-01 00:00:00 |
payment_properties_t | external_user_number | Redacted |
thirdparty_account_t | thirdparty_uid | Redacted+UUID |