PostgreSQL Anonymizer : une approche « privacy by design » pour la protection des données personnelles

0
188

Dalibo, spécialiste français de PostgreSQL, annonce la version 1.0 de l’extension PostgreSQL Anonymizer. Il s’agit d’une extension du Système de Gestion de Bases de Données open source PostgreSQL permettant de masquer ou de remplacer des informations personnellement identifiables (PII) ou des données commercialement sensibles au sein d’une base de données. L’extension fournit un panel de techniques de masquage en fonction des besoins : randomisation, ajout de bruit, contrefaçon, destruction partielle, pseudonymisation, généralisation, etc.

  • PostgreSQL Anonymizer est conçu de manière à impliquer les développeurs et les architectes dès les phases préliminaires de conception de projets amenés à traiter des informations personnellement identifiables
  • La DGFIP et bioMérieux, acteur majeur dans le domaine du diagnostic in vitro, utilisent PostgreSQL Anonymizer pour garantir la confidentialité des données qu’ils traitent

Communiqué – L’article 25 du RGPD impose la « Protection des données dès la conception », en précisant que la protection des droits et libertés des personnes physiques doit être mise en œuvre « tant au moment de la détermination des moyens du traitement qu’au moment du traitement lui-même ». Pourtant, quatre ans après sa mise en route, son application reste complexe pour de nombreuses entreprises et organisations. L’implémentation du principe « privacy by design » s’avère particulièrement complexe à mettre en œuvre.

Pour y contribuer, le projet PostgreSQL Anonymizer s’appuie sur une approche déclarative de l’anonymisation : le langage de définition de données (DDL) de PostgreSQL est utilisé afin de spécifier la stratégie d’anonymisation à l’intérieur de la définition de la table elle-même.

La majorité des outils d’anonymisation actuels fonctionnent à l’extérieur de la base de données, sur le principe des outils ETL (Extract-Transform-Load). Il en résulte que la responsabilité de la rédaction de la politique de sécurité est généralement confiée aux DBA (administrateurs de bases de données) de production. Ces outils se focalisent donc sur la phase de traitement des données plutôt que sur la phase de détermination de ces traitements.

À l’inverse, l’extension PostgreSQL Anonymizer cherche à impliquer les développeurs et les architectes dès les phases préliminaires de conception. Grâce à une syntaxe SQL appelée « SECURITY LABEL », les règles de masquage sont déclarées directement à l’intérieur même de la base, au même titre qu’une contrainte d’intégrité ou d’un index.

Pour Thierry Aimé qui travaille au sein du bureau de l’architecture et des normes de la DGFIP, il s’agit d’un point important : « PostgreSQL Anonymizer intègre, dès la conception de la base de données, le principe qu’en dehors de la production, les données sont anonymisées. Cela renforce les garanties du RGPD, sans nuire à la qualité des tests lors des montées de versions par exemple. »

PostgreSQL Anonymizer permet à bioMérieux, fournisseur de solutions de diagnostic qui déterminent l’origine d’une maladie ou d’une contamination, de définir des règles complexes de masquage pour implémenter une pseudonymisation complète de ses bases de données sans impact fonctionnel.

« L’extension PostgreSQL Anonymizer a tout de suite suscité note intérêt. Cette extension innovante nous a permis d’intégrer l’anonymisation des données patients au plus tôt dans le processus du développement et donc de raccourcir les délais d’implémentation pour être plus réactifs envers nos clients » explique Grégory GNOS, IT Solution MW chez bioMérieux.

En pratique, lorsque l’on ajoute une nouvelle colonne dans une table, cette déclaration est accompagnée de règles et des restrictions qui seront garanties par la base (unicité, clé étrangère, etc.). Avec PostgreSQL Anonymizer, il est désormais possible de définir que cette colonne contient des données personnelles et d’écrire une règle de masquage pour décrire comment ces données seront transformées pendant le processus d’anonymisation. Concrètement les règles de masquage seront accolées à la définition de la table.

Il est également possible d’indiquer qu’une colonne est un identifiant indirect et le DBA de production pourra utiliser une fonction de K Anonymity pour vérifier qu’il n’est pas possible de singulariser un individu à l’intérieur de la table.

« La protection des données privées est un travail d’équipe. Chaque personne impliquée dans la création et la gestion d’une application est concernée par le RGPD. Dans cet esprit, l’extension PostgreSQL Anonymizer fournit une boîte à outils pour les développeurs et les administrateurs de données pour les aider à implémenter les règles de masquages le plus tôt possible, et ainsi respecter le principe de Privacy by Design » explique Damien Clochard, DBA PostgreSQL chez Dalibo, spécialiste français de PostgreSQL et Président de l’Association PostgreSQLFr.

PostgreSQL Anonymizer a été développé dans le cadre de l’initiative Dalibo Labs. Consciente de l’importance de fournir des contributions de qualité et en quantité pour PostgreSQL et sa communauté, Dalibo encourage en effet tous ses employés à consacrer jusqu’à 20 % de leur temps de travail à des activités communautaires : écriture ou relecture de code, mais aussi rédaction d’articles, organisation de conférences, etc. Dalibo Labs a pour objectif de promouvoir les projets open source développés en interne. Une fois que ces projets grandissent et trouvent leur propre communauté, la propriété en est généralement transférée à des groupes de développeurs indépendants.