PostgreSQL Anonymizer 0.10: An improved engine and a brand new tutorial

From: Dalibo via PostgreSQL Announce <announce-noreply(at)postgresql(dot)org>
To: PostgreSQL Announce <pgsql-announce(at)lists(dot)postgresql(dot)org>
Subject: PostgreSQL Anonymizer 0.10: An improved engine and a brand new tutorial
Date: 2022-03-15 20:18:52
Message-ID: 164737553249.656.7152736499267352481@wrigleys.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-announce

_Paris, France, March 14, 2022_

`PostgreSQL Anonymizer` is an extension that hides or replaces personally
identifiable information (PII) or commercially sensitive data from a PostgreSQL
database.

The extension supports 3 different anonymization strategies: [Dynamic Masking],
[Static Masking] and [Anonymous Dumps]. It also offers a large choice of
[Masking Functions] such as Substitution, Randomization, Faking,
Pseudonymization, Partial Scrambling, Shuffling, Noise Addition and
Generalization.

[Masking Functions]: https://postgresql-anonymizer.readthedocs.io/en/latest/masking_functions/
[Anonymous Dumps]: https://postgresql-anonymizer.readthedocs.io/en/latest/anonymous_dumps/
[Static Masking]: https://postgresql-anonymizer.readthedocs.io/en/latest/static_masking/
[Dynamic Masking]: https://postgresql-anonymizer.readthedocs.io/en/latest/dynamic_masking/

Many improvements and a better dynamic masking engine
--------------------------------------------------------------------------------

This version is a major step toward the upcoming version 1.0 which will be
considered as production ready.

The main changes are focused on the `pg_dump_anon.sh` wrapper which is now
faster and more accurate.

The dynamic masking engine has been simplified and improved. The change is not
visible for end users but the inner workings are now more robust, in particular
the main event trigger that hides the real data to the masked roles.

A brand new tutorial
--------------------------------------------------------------------------------

Anonymization can be a difficult task and sometimes we just don't know where
to start ! In addition to the [project documentation], we are now publishing
a complete 4-hours workshop with practical examples, a series of exercises and
their solutions.

The result is a 50 pages document designed as a kickstarter to help you discover
how you can use PostgreSQL Anonymizer to protect the privacy and comply to the
GDPR requirements.

The tutorial is available here:

https://dali.bo/howto_anon_handout

How to Install
--------------------------------------------------------------------------------

This extension is officially supported on PostgreSQL 9.6 and further versions.

On Red Hat, CentOS and Rocky Linux systems, you can install it directly from the
[official PostgreSQL RPM repository]:

dnf install postgresql_anonymizer14

Then load the extension with:

ALTER DATABASE foo SET session_preload_libraries = 'anon';

Create the extension inside the database:

CREATE EXTENSION anon CASCADE;

And finally, initialize the extension

SELECT anon.init();

For other systems, check out the [install] documentation:

https://postgresql-anonymizer.readthedocs.io/en/latest/INSTALL/

[official PostgreSQL RPM repository]: https://yum.postgresql.org/
[install]: https://postgresql-anonymizer.readthedocs.io/en/latest/INSTALL/

Thanks
--------------------------------------------------------------------------------

This release includes code, bugfixes, documentation, code reviews and ideas from
Be Hai Tran, Florent Jardin, Yann B., Christophe Courtois, Vito Botta,
Cristiano S., Adrien S., Justin Wei (and others we may have missed).

Many thanks to them!

A final special thanks goes to [Frédéric Yhuel] for his work on the pl/pgsql code
and the documentation !

How to contribute
--------------------------------------------------------------------------------

PostgreSQL Anonymizer is part of the [Dalibo Labs] initiative. It is mainly
developed by [Damien Clochard].

This is an open project, contributions are welcome. We need your feedback and
ideas! Let us know what you think of this tool, how it fits your needs and
what features are missing.

If you want to help, you can find a list of `Junior Jobs` here:

https://gitlab.com/dalibo/postgresql_anonymizer/issues?label_name%5B%5D=Junior+Jobs

[Dalibo Labs]: https://labs.dalibo.com
[Damien Clochard]: https://www.dalibo.com/en/equipe#daamien
[Frédéric Yhuel]: https://www.dalibo.com/en/equipe#frederic

Browse pgsql-announce by date

  From Date Subject
Next Message Peter Eisentraut via PostgreSQL Announce 2022-03-25 08:25:35 PgBouncer 1.17.0 released
Previous Message Gilles Darold via PostgreSQL Announce 2022-03-15 20:18:38 pg_dumpbinary v2.7