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?
Hallo, es scheint, dass das Feature „merged“ nicht dem Titel entspricht. Mit dem Daten-Explorer habe ich festgestellt, dass einige Versionen eines bestimmten Wiki-Themas einen großen Anhang hatten, den ich löschen möchte.
Ich möchte nur wissen, wie man einen Anhang aus einer Version des Beitrags löscht auf selbst gehosteten Instanzen. Leider kann die Methode von Search attachments by storage name in diesem Fall nicht angewendet werden (sha1 kann nicht aus dem Dateinamen abgerufen werden).
Finden Sie zuerst sha1 mit SQL:
sudo /var/discourse/launcher enter app
su - discourse
psql
SELECT filesize, original_filename, sha1 FROM uploads WHERE filesize > 3000000 order BY filesize desc;
dann erhalten Sie sha1. Schließen Sie als Nächstes die Verbindung zur Datenbank, verlassen Sie den Benutzer und kehren Sie zu Root zurück, und öffnen Sie die Rails-Befehlszeile:
ctrl+d
ctrl+d
rails c
pry(main)> Upload.find_by(sha1: '<sha1>')
Schließlich erhalten Sie die URL des Anhangs, die auf den Dateisystemspeicherort verweist. Die Frage des Themas ist noch offen.