objet_archiver_anonymiser

Pour faire suite à une discussion dont je n’arrive plus à retrouver la trace et m’invitant à proposer sous forme d’un plugin mon idée de créer des statuts pour faciliter l’archivage et, éventuellement, l’anonymisation des objets éditoriaux ayant des informations personnelles, j’ai fait un dépôt d’une v1.0.0 de cette expérimentation objet_archiver_anonymiser.

Je vais faire une description de l’usage sur Contrib. Ce plugin suit l’idée proposée d’une description des champs_anonymises dans la table. Il est par défaut opérationnel pour les auteurs et très facile à déployer sur d’autres objets. Attention que l’anonymisation détruira irrémédiablement certaines données sans retour en arrière (contrairement à l’archivage).

Merci par avance pour vos retours.

1 « J'aime »

Merci pour le partage :slight_smile:

Merci pour le code permettant de peut-être mieux voir de quoi il retourne, cependant il y avait des discussions non résolues et qui sont toujours à voir :

  • ton plugin s’appelle objet_archiver alors qu’il semblerait qu’il ne s’occupe que des articles et des auteurs sans mécanisme générique
  • il existait déjà plusieurs plugins pour faire l’archivage, dont un générique pour les objets (donc on se retrouve avec un troisième à la fois qui fait encore différemment) : spip-contrib-extensions/archive_objet: Un mécanisme pour archiver les différents contenus d'un site SPIP - archive_objet - SPIP on GIT
  • de plus, et c’était le résultat d’un choix argumenté, le fait d’être archivé n’était pas forcément un statut mais un drapeau à part, car le fait d’être archivé n’a pas de rapport avec le statut des contenus : si jamais on désarchive un contenu un jour, il devrait vraiment retrouver son statut d’antan (mais c’est un débat, ça peut être fait autrement)
  • mélanger le fait d’anonymiser et d’archiver peut être discutable, ce sont deux fonctionnalités bien distinctes
  • et du coup justement anonymiser c’est une fonctionnalité importante qu’il faudrait concevoir possiblement de manière un peu générique, avec une API peut-être, mais un truc vraiment dédié à ça, car c’est un gros chantier de se mettre raccord avec RGPD et tutti quanti

Pas mal de choses à discuter :slight_smile:

ton plugin s’appelle objet_archiver alors qu’il semblerait qu’il ne s’occupe que des articles et des auteurs sans mécanisme générique

Non, il y a bien un mécanisme sous la forme de fonctions à charger. Elles sont génériques. archiver_objet, anonymiser_objet et placée dans le repertoire inc. Et elles sont personnalisables à un objet archiver_montruc ! Le plugin reconnaitra automatiquement les personnalisations faites et les mettra en oeuvre lors du changement de statut via les pipelines. Par défaut le plugin met en oeuvre l’archivage et l’anonymisation pour les auteurs et l’archivage pour les articles.

il existait déjà plusieurs plugins pour faire l’archivage,

Oui, je les ai vu et étudié. Aucun d’eux ne propose la solution de ce plugin. Le plugin objet_archiver_anaonymiser est générique pour tout objet. Il est personnalisable si un traitement spécifique est souhaité. Il est surtout très simple à mettre en oeuvre.

de plus, et c’était le résultat d’un choix argumenté, le fait d’être archivé n’était pas forcément un statut mais un drapeau à part, car le fait d’être archivé n’a pas de rapport avec le statut des contenus : si jamais on désarchive un contenu un jour, il devrait vraiment retrouver son statut d’antan (mais c’est un débat, ça peut être fait autrement)

Dans mes fonctions professionnelles, je suis référent RGPD d’une grosse collectivité territoriale. Mon approche est sans doute déformée par cette spécialisation et prête sûrement à discussion si je ne respecte pas l’esprit du statut des objets.

Il m’a semblé que l'archivage est le retrait de la base active de l’objet. J’ai cru que l’on pouvait considéré qu’au même titre que la publication (que l’on peut voir comme l’entrée dans la base active de l’objet), l'archivage est un statut.

L'anonymisation est non seulement le retrait de la base active de l’objet mais la destruction partielle de ses données. On peut donc le voir comme un staut intermédiaire entre l'archivage et la poubelle. Là aussi le choix de donner un statut à l’archivage m’a semblé être à considérer comme légitime.

En ce qui concerne le traitement de désarchivage d’un objet pour lui permettre de revenir à un autre état, il est bien pris en compte par le plugin.