Les modérateurs lisent les messages dans les journaux d'action du personnel

Nous rencontrons un problème de confidentialité : des modérateurs ont accès à des messages qu’ils ne devraient pas pouvoir consulter.

À ma connaissance, Discourse poursuit deux objectifs de conception qui entrent en jeu ici :

  1. Les modérateurs ne sont pas exemptés des vérifications d’autorisations et ne peuvent lire que les messages auxquels ils ont été invités.
  2. Lorsqu’ils utilisent leurs pouvoirs, toute action entreprise est journalisée et peut être inspectée par tout membre du personnel.

Parfois, ces objectifs sont en conflit, par exemple lorsqu’un modérateur modifie un message d’un autre utilisateur dans une conversation avec lui. Dans ces cas, Discourse donne la priorité à :deux : le message modifié de l’utilisateur est révélé à tout le personnel dans les journaux d’actions du personnel.

Bien que je sois déjà en désaccord avec la décision de privilégier :deux, cela entraîne des cas limites que je considère comme clairement indésirables, frôlant le bug. Le plus important que nous ayons identifié : les modérateurs peuvent actuellement lire chaque message contenant un lien vers une image externe, car @system télécharge l’image, modifie le message, et cela est ajouté aux journaux d’actions du personnel.

Je ne suis pas sûr de la bonne démarche à adopter ici. Rendre l’accès aux journaux d’actions du personnel configurable pour les modérateurs ? Interdire la visualisation du message pour les entrées de journal d’actions du personnel provenant de @system ? Faire en sorte que la fonctionnalité de visualisation du message respecte généralement les autorisations du message ?

Quoi qu’il en soit, j’espère qu’une modification pourra intervenir ici, car nous sommes actuellement contraints de bloquer l’accès à l’API des journaux d’actions du personnel au niveau de Nginx.

9 « J'aime »

Je ne pense pas que ces modifications devraient être consignées.

@david, peux-tu t’assurer que nous ne consignons pas ces modifications très spécifiques de l’utilisateur @system ? (et supprimer celles qui existent déjà)

10 « J'aime »

Ceci est réalisé dans FIX: Do not log 'pull_hotlinked_images' edits in the staff action log · discourse/discourse@67a9894 · GitHub.

Notez que les modérateurs peuvent toujours consulter les journaux des messages privés modifiés par une personne autre que l’auteur.

Cela est délicat à automatiser : nous n’avons aucun moyen de savoir si les journaux existants proviennent de l’action « extraire les images hotlinkées » ou ont été modifiés en tant qu’utilisateur système via l’API. @fefrei, si vous souhaitez effacer les anciens journaux relatifs à toutes les modifications système sur votre site, vous pouvez exécuter une commande similaire à celle-ci dans la console :

UserHistory.where(action: UserHistory.actions[:post_edit], acting_user: Discourse.system_user).destroy_all
9 « J'aime »

Super, merci ! :heart:

5 « J'aime »