2. Greenmask (https://github.com/GreenmaskIO/greenmask) is written in Go and acts as a pg_dump replacement. The schema part is outsourced to actual pg_dump, while the data part is passed through anonymization.
Comments
Log in with your Bluesky account to leave a comment
3. https://github.com/rap2hpoutre/pg-anonymizer by @rap2h.bsky.social is written in typescript and wraps pg_dump. It parses its output and replaces the values. It can use faker to generate the replacement values, which is pretty cool.
4. masquerade (https://github.com/TonicAI/masquerade) from TonicAI. This is one is a proxy speaking the Postgres wire protocol. It can mask columns in the response. It runs on the .net runtime.
5. tidus (https://github.com/viafintech/tidus) from Viafintech. This one uses Postgres views, which means the anonymizing functions are written in pl/pgsql and the work happens in Postgres.
Then a pg_dump wrapper will get the data through the views rather than directly. Neat!
6. Replibyte (https://github.com/Qovery/Replibyte) from Qovery, is written in Rust and works by parsing the dump file. It can do both anonymization and data subsetting (sampling) and supports more databases than just Postgres.
7. Snaplet snapshot (https://github.com/supabase-community/snapshot). Does both subsetting and anonymization via transformations. Snaplet (the company) unfortunately shut down earlier this year, and while they open-sourced snapshot under supabase-community, it looks unmaintained right now.
8. Neosync (https://github.com/nucleuscloud/neosync). It's written in Go and MIT licensed. This one is different from the others in the sense that it's not a CLI tool but uses a web-UI configuration and workflow.
Comments
Then a pg_dump wrapper will get the data through the views rather than directly. Neat!