Supprimer complètement les versions précédentes d'une publication ou d'un message

Say you had to send someone an Android debug log. These logs contain a log of private information. You shouldn’t post that URL in public, and if you message it in person the URL or attachment should be deleted soon after.

Even admins or moderators shouldn’t be able to recover that URL or attachment.
If we can’t delete it it will forever remain visible to the sender, and to all admins and moderators. These logs accumulate over time and it’s a lot of sensitive information lingering forever.

How can we not just hide that URL or attachment but actually delete it?

1 « J'aime »

with this PR, it seems possible. i like :slight_smile:

Sounds like something we need indeed. And it should also apply to messages.
Wow this was committed 3 hours ago? Great!

Salut, il semble que la fonctionnalité fusionnée ne corresponde pas au titre. Avec l’explorateur de données, j’ai trouvé que certaines versions de certains sujets de wiki avaient une grosse pièce jointe que j’aimerais supprimer.

Je veux juste dire comment supprimer une pièce jointe d’une version de la publication sur des instances auto-hébergées. Malheureusement, la méthode de Search attachments by storage name ne peut pas être appliquée dans ce cas (impossible d’obtenir le sha1 à partir du nom de fichier).

Trouvez d’abord le sha1 en utilisant SQL :

sudo /var/discourse/launcher enter app
su - discourse
psql
SELECT filesize, original_filename, sha1 FROM uploads WHERE filesize > 3000000 order BY filesize desc;

puis vous obtenez le sha1. Ensuite, fermez la connexion à la base de données, quittez l’utilisateur pour passer à root et ouvrez la ligne de commande rails :

ctrl+d
ctrl+d
rails c
pry(main)> Upload.find_by(sha1: '<sha1>')

Enfin, vous obtenez l’URL de la pièce jointe pointant vers l’emplacement du système de fichiers. La question du sujet est toujours ouverte.