joindoe

Crates.iojoindoe
lib.rsjoindoe
version0.1.0
sourcesrc
created_at2022-07-22 23:56:59.065029
updated_at2022-07-22 23:56:59.065029
descriptionUtility to deidentify sensitive data
homepage
repository
max_upload_size
id631214
size76,387
Felipe Coury (fcoury)

documentation

README

Join Doe

Join Doe is a tool for replicating database contents between environments while deidentifying sensitive data.

It dumps the source data to an S3 bucket, deidentify it and uploads it to the destination.

Current status

Curerntly the project only works with Redshift.

How to use

Join Doe executes its jobs from a YAML config file.

Example:

source:
  connection_uri: $DATABASE_URL
  tables:
    - name: providers
      transform:
          - column: identifier
            transformer: reverse
          - column: first_name
            transformer: first-name
          - column: last_name
            transformer: last-name
    - name: orders
      transform:
          - column: identifier
            transformer: reverse
store:
  bucket: nw-data-transfer
  aws_access_key_id: $AWS_ACCESS_KEY_ID
  aws_secret_access_key: $AWS_SECRET_ACCESS_KEY
destination:
  connection_uri: $TARGET_DATABASE_URL

This config processes two tables from the source database: providers and orders. It then modifies a couple of fields using a given transformer, stores it on an S3 bucket and then uploads it to the destination database.

The supported transformers are:

  • reverse: reverses the contents of the field
  • first-name: replaces the contents of the field by a random first name
  • last-name: replaces the contents of the field by a random last name
Commit count: 0

cargo fmt