Skip to main content

In-VPC PostgreSQL masking and anonymization engine

Project description

PrivaCI

One command. Sanitized staging data. No data leaves your VPC.

PrivaCI is a stateless batch engine that reads from a PostgreSQL source (typically a production replica), masks PII with a three-tier pipeline, and writes realistic synthetic data to a staging database with referential integrity preserved.

Prerequisites

  • Python 3.12+, or the official container image (ghcr.io/boundarylogic/privaci)
  • A PostgreSQL source (typically a production replica) and an empty target database

Quickstart

Fastest path — self-contained evaluation stack (~60 s):

export ANONYMIZATION_SALT="$(openssl rand -hex 32)"
make eval-up

See docs/quickstart.md for the full walkthrough.

Your own databases:

pip install -e .
privaci gen-salt > .privaci-salt && chmod 600 .privaci-salt
export ANONYMIZATION_SALT=$(cat .privaci-salt)
export SOURCE_DB_URL=postgresql://user:pass@source-host:5432/app
export TARGET_DB_URL=postgresql://user:pass@target-host:5432/staging

privaci validate && privaci dry-run && privaci run && privaci verify

Browse the docs site locally: pip install -e ".[dev]" && make docs-serve

Documentation

Start with the documentation index or quickstart. Key pages:

Using PrivaCI

Developing PrivaCI

License

The engine is licensed under the Elastic License 2.0. Optional paid features ship as a separate plugin layer via the plugin contracts.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

privaci-1.0.2.tar.gz (126.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

privaci-1.0.2-py3-none-any.whl (173.9 kB view details)

Uploaded Python 3

File details

Details for the file privaci-1.0.2.tar.gz.

File metadata

  • Download URL: privaci-1.0.2.tar.gz
  • Upload date:
  • Size: 126.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for privaci-1.0.2.tar.gz
Algorithm Hash digest
SHA256 b8dcfa5192daf7a9a34d774cf6b578b9bb4160779aa6747acf05d807eb9dae60
MD5 dc8b6dfe7b8e4acf5dce139b53d43e17
BLAKE2b-256 d565875f2b97d933c2248a8cbe347063551dc4784de0bf85a6aa7f49bc140ec5

See more details on using hashes here.

Provenance

The following attestation bundles were made for privaci-1.0.2.tar.gz:

Publisher: publish-pypi.yml on BoundaryLogic/privaci

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file privaci-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: privaci-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 173.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for privaci-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8743c695a70021bfd9ecc2ce85e1f33717815ba6f538a7abb1fd6643d0be6a5d
MD5 af114ed2483d44e20c84c2739403616a
BLAKE2b-256 638fd5b9554759c807f989a6f8226cd2d1cba6a8065fee08621f35a75a155a3d

See more details on using hashes here.

Provenance

The following attestation bundles were made for privaci-1.0.2-py3-none-any.whl:

Publisher: publish-pypi.yml on BoundaryLogic/privaci

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page