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.1.tar.gz (120.2 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.1-py3-none-any.whl (164.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: privaci-1.0.1.tar.gz
  • Upload date:
  • Size: 120.2 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.1.tar.gz
Algorithm Hash digest
SHA256 02068b4d400d6f3a6df2dbde3c8b77aee740c14b5a952bbc78a2c659662252c4
MD5 d64d9c7f3fc272c6e771ea6d411b84da
BLAKE2b-256 4e696549f1c87062011e7f7768ba40a2670de367f45313c199dfbc5fade52c5b

See more details on using hashes here.

Provenance

The following attestation bundles were made for privaci-1.0.1.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.1-py3-none-any.whl.

File metadata

  • Download URL: privaci-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 164.3 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 aae28b46703095ad04cfb36d7e149196770088dd90d124978c8434b639573917
MD5 6dd79fa7c7caa38b6f6db9d6bfeff5ae
BLAKE2b-256 c6a62699b60ca2086493876b6e08dcfec5defb87b32dbbcf9dfa6c25f8e2d823

See more details on using hashes here.

Provenance

The following attestation bundles were made for privaci-1.0.1-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