Projet

Général

Profil

Development #42393

Flag marquant les utilisateurs supprimés

Ajouté par Frédéric Péters il y a presque 4 ans. Mis à jour il y a presque 4 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
02 mai 2020
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:
Non

Description

#24430 contient des côtés opérationnels qui sont encore l'objet de dicussions mais, techniquement, on pourrait déjà avoir un attribut sur les utilisateurs, pour marquer quand ils ont été supprimés.

(ça permettra d'avancer sur le côté sur d'autres questions, genre ne pas envoyer d'emails aux agents qui n'existent plus).

A priori, il s'agirait juste de reprendre 0001-users-add-a-deleted-flag-24430.patch (mis à jour par rapport au numéro de migration, et sans "partial anonymization") et 0004-hobo_notify-deprovision-by-setting-the-deleted-flag-.patch.


Demandes liées

Lié à w.c.s. - Development #24430: Cronjob pour supprimer les utilisateurs sans compte en ligne quand ils n'ont plus de demande en coursFermé11 juin 2018

Actions
Lié à Publik - Development #26907: Cycle de vie des comptesFermé24 novembre 2020

Actions

Révisions associées

Révision 88812eba (diff)
Ajouté par Benjamin Dauvergne il y a presque 4 ans

users: add a deleted timestamp (#42393)

Révision 34b78bf6 (diff)
Ajouté par Frédéric Péters il y a presque 4 ans

users: ignore users marked as deleted in select queries (#42393)

Révision 2435cbc0 (diff)
Ajouté par Benjamin Dauvergne il y a presque 4 ans

hobo_notify: mark users as deleted when deprovisionning (#42393)

Révision 0791d9af (diff)
Ajouté par Frédéric Péters il y a presque 4 ans

backoffice: don't include deleted users in listing (#42393)

Révision 1473d8ed (diff)
Ajouté par Frédéric Péters il y a presque 4 ans

backoffice: add a notice on deleted user pages (#42393)

Historique

#1

Mis à jour par Frédéric Péters il y a presque 4 ans

  • Statut changé de Nouveau à En cours

(branche wip/42393-deleted-flag poussée avec ceci)

#2

Mis à jour par Benjamin Dauvergne il y a presque 4 ans

Pour le mail je note ici que le problème est plus généralement celui des comptes désactivés (je ne suis pas certain qu'on puisse établir une équivalence ici, on aura toujours des gens supprimés et des gens juste désactivés, par erreur, parce que la procédure l'exige, etc..). Très bien si on a les deux flags, si de toute façon on reste sur l'idée que les bases utilisateurs dans les briques ne sont qu'un cache de ce qui est visible dans a2.

Si on peut avoir les deux d'un coup, is_active et deleted c'est bien. Coté a2 deleted sera un timestamp, ce n'est pas forcé de faire la même chose, mais peut-être que ce serait utile.

#3

Mis à jour par Frédéric Péters il y a presque 4 ans

Branche revue avec :

  • 0001, (ajout attribut), modifié pour que l'attribut s'appelle deleted_timestamp (et soit un timestamp)
  • 0002, nouveau patch, pour ignorer ces utilisateurs marqués des requêtes de recherche d'utilisateur
  • 0003, (modif hobo notify), modifié dans ses tests, pour prendre en compe le changement
  • 0004, nouveau patch, pour ne pas lister les utilisateurs supprimés dans /backoffice/users/
  • 0005, nouveau patch, pour ajouter une info sur /backoffice/users/<id> si l'utilisateur est supprimé

Pour la gestion du is_active envoyé par Authentic, je vais créer un autre ticket.

#4

Mis à jour par Benjamin Dauvergne il y a presque 4 ans

Je relis, merci pour l'autre ticket.

#5

Mis à jour par Benjamin Dauvergne il y a presque 4 ans

  • Statut changé de En cours à Solution validée
Je relis avec pour principe que du point de vue d'un usager ou d'un agent travaillant sur les démarches d'un usager ça doit continuer à fonctionner comme avant :
  • 0001 : ok, l'index viendra avec le cron de suppression des comptes inactifs,
  • 0002 :
    • get_users_with_name_identifier():
      • utilisé dans l'API pour des agents dont effectivement on ne veut plus qu'ils accèdent, donc ok
      • utilisé dans backoffice/management au niveau du filtre user-id, là je ne suis pas sûr si c'est utilisé dans le portail agent pour voir les formulaires d'un utilisateur (mais le portail agent dépendant du compte dans a2 aussi je ne sais pas trop), pas sûr donc,
      • utilisé dans backoffice/submission, idem pour le portail agent et la soumission back-office, à voir,
      • utilisé par hobo_notify, il me semble qu'il faudrait que hobo_notify voit tous les usagers,
      • utilisé par le SSO SAML2 et FranceConnect, comme on a pas encore exclu que les utilisateurs pourraient revenir avec un même NameID pendant un certain temps, il faudrait ne pas cacher les utilisateurs supprimés ici,
    • tout ça pour dire que je verrai bien dans ce cas un flag deleted=True et le mettre à False uniquement pour les accès via l'API,
    • get_users_with_email(): utilisé uniquement par l'API, ok
    • get_users_with_role() :
      • utilisé par Role.get_emails, ok, c'est le cas d'usage des agents, on ne veut plus les notifier (il y a le cas des rôles individuels pour CartaDS et Le Nord, il me semble à première vu que c'est pareil, on ne veut plus les notifier)
      • utilisé par SendNotificationWorkflowStatusItem, ok plus de compte en ligne = plus de portail, donc plus de notifications,
    • donc c'est ok.
  • 0003: ok
  • 0004: je ne sais pas trop; il me semble que cette vue ce n'est plus que du debug pour nous et qu'on est les seuls à y avoir accès (peut-être me trompe-je), que ce soit le cas ou pas il me semble qu'on veut que l'utilisateur y soient toujours visibles, car ils sont toujours dans le système avec des formulaires, il faudrait simplement afficher "(online account deleted on %(date)s)",
  • 0005: idem que dernière remarque, je dirai plutôt "online account deleted on %(date)s" que "user marked as deleted".

Je valide modulo mes remarques notamment pour get_users_with_name_identifier(), que ça n'ait pas plus d'impact que nécessaire.

#6

Mis à jour par Frédéric Péters il y a presque 4 ans

  • Statut changé de Solution validée à En cours

Je retire la validation pour éviter que ça ne soit poussé de manière trop zélée.

#7

Mis à jour par Benjamin Dauvergne il y a presque 4 ans

  • Lié à Development #24430: Cronjob pour supprimer les utilisateurs sans compte en ligne quand ils n'ont plus de demande en cours ajouté
#8

Mis à jour par Benjamin Dauvergne il y a presque 4 ans

#9

Mis à jour par Frédéric Péters il y a presque 4 ans

Je passe enfin sur les différents points,

  • 0005, désormais "Marked as deleted on %(date)s.".
  • 0004, pas touché, je trouve normal que les usagers supprimés n'y apparaissent pas.
  • 0002, "comme on a pas encore exclu que les utilisateurs pourraient revenir"
    • je viens de regarder à nouveau authentic et il me semble vraiment qu'aujourd'hui un usager supprimé est supprimé sans possibilité d'annulation, je suis donc vraiment pour considérer les usagers supprimés comme n'existant plus, et non supposer qu'ils pourraient revenir.
  • 0001, migration actualisée.

et j'ai poussé une branche actualisée.

#10

Mis à jour par Benjamin Dauvergne il y a presque 4 ans

  • Statut changé de En cours à Solution validée

Je valide même si ce n'est pas en solution proposée.

#11

Mis à jour par Frédéric Péters il y a presque 4 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit 1473d8edb019616c85e2e25c843e9244d6ee7d49
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Mon May 4 09:35:01 2020 +0200

    backoffice: add a notice on deleted user pages (#42393)

commit 0791d9af7ad4f0a11a98e44923a9ba61a3c5386d
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Sun May 3 13:47:39 2020 +0200

    backoffice: don't include deleted users in listing (#42393)

commit 2435cbc0322ea13c8eb2d9f7705e3149528d024d
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date:   Thu Oct 4 23:34:05 2018 +0200

    hobo_notify: mark users as deleted when deprovisionning (#42393)

commit 34b78bf6bd7087cda674cf52299111e0d0765736
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Sun May 3 13:40:39 2020 +0200

    users: ignore users marked as deleted in select queries (#42393)

commit 88812ebaf1fa3148858b3aba7211927b74c61bf8
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date:   Thu Oct 4 22:53:35 2018 +0200

    users: add a deleted timestamp (#42393)
#12

Mis à jour par Frédéric Péters il y a presque 4 ans

  • Statut changé de Résolu (à déployer) à Solution déployée

Formats disponibles : Atom PDF