如何在活动部分允许下载图片及其他用户数据(CSV)?

我们(Krita 社区的几位志愿者)已为 Krita 艺术家 社区搭建了一个 Discourse 论坛。其设置与 Blenderartists.org 非常相似。

由于这是一个与艺术软件相关的论坛,讨论中将包含大量图片。从 GDPR 的角度来看,Discourse 提供了从个人资料的活动部分下载用户数据的功能。但我注意到,下载的内容并不包含用户发布到论坛的图片。我想询问是否有办法将用户发布的图片包含在下载的 ZIP 文件中?是否有插件可以提供此类功能?

谢谢。

It’s not currently available in core nor in any plugins I know of unfortunately.

We should arguably include any images the user uploaded in the data download.

Technically they still have the URLs so they could just parse and pull them. I worry about image heavy users ending up costing lots and lots of server time when they click the button.

Sorry if this seems a silly idea, will a predetermined time frame given to user to come back for the zip file help. During this period the zip creation can be done when there is less server activity.

I am uneasy allowing a random end user with lots of activity the ability to trigger downloading half a gig of data from s3 for re-packaging.

Much prefer to provide them with a link to a script they can run against the export to download images.

I’m not an expert, but I believe that from a GDPR perspective this is not an acceptable solution. @RGJ do you know?

closing this for 6 days so our lawyer has a chance to read this before this gets derailed into a GDPR drama.

you still have the ability to run the script as an admin for the user and email them images if you want.

关于这个问题有什么更新吗?是提供脚本/工具,还是核心修复?

我知道如何手动操作,但我比其他人更擅长技术。

具体来说,

![Screenshot_20200422-132435|281x500](upload://dYJTG1LPTCy8fp52SrPh7a1p89j.png)

这是今天生成的 user-archive.csv 文件中的内容。这样的链接对用户来说并不友好。

我昨天首次进行了自五月以来的帖子导出,看到它得到了一些改进,但有一个(对我来说)奇怪的改动:

但其中没有包含图片,而且我仍然看到一些片段(用 meta 测试过),其 URL 非常难以使用,例如:![screen-20200627-125657|385x397](upload://nsHMu7zGRvQ1Y9WuIPrrygpWbC6.png)(注意,这是我在五月更新之后上传的图片)。

将图片放入归档中会很麻烦。我们可以轻松地在归档中包含经过处理的帖子和原始帖子,这样图片及其他所有经过转换的内容都能以标准方式关联,便于解析。

最近引入的预签名 URL 选项是如何工作的?我承认我不太了解其具体实现,但我担心这些 URL 可能不够稳定。

(指的是:https://meta.discourse.org/t/secure-media-uploads/140017)

如果我们按照 @Falco 的建议将已处理的文章放入,那么 URL 将会是 /secure-media-uploads/blah。预签名 URL 仅在从安全媒体 URL 请求上传时生成,因此您不会遇到任何问题。

此功能请求(如果这是功能请求的话)的现状如何?

让我们将此分解为几个较小的问题:

  1. 目前是否有任何方法可以让用户获取其帖子中包含的所有图片的副本?
  2. 是否有任何方法可以获取(或重新创建)这些帖子,至少在上传的图片位于应有位置的程度上?

虽然我不确定我是否能写一个完整的脚本,但我确实尝试过根据 user_archive.csv 中目前包含的信息来重建图片的 URL,但我看不到如何做到这一点,因为 CSV 文件中提供的图片链接与该图片在论坛上的公共 URL 之间似乎没有关联。

例如,我的 CSV 文件中有 ![image|499x436](upload://tIh81VxrDGPzUkxhikPmbgFGbO6.png),而该图片在论坛上的 URL 是 https://forum.example.com/uploads/default/original/2X/d/d04053334ed6a40db3cdcf83c1c6eb139079494e.png,所以即使脚本使用 tIh81VxrDGPzUkxhikPmbgFGbO6.png 结合某个基础 URL,它也无法检索到图片,对吗?或者图片是否以某种方式拥有多个身份?

感谢您顶起这个话题!我之前没看到过。:smiley:

浏览了一下,我既认同 @codinghorror 关于图片应该以这种方式可访问的看法,也认同 @sam 对服务器端资源需求的担忧——尤其是在用户本身不关心图片的情况下。

我无法评论可行性,但从纯粹的用户体验角度来看,我觉得最好是在现有的下载选项旁边提供一个单独的“下载图片”按钮,或者在您使用现有下载选项时弹出一个询问是否要包含图片的提示。

目前还没有,您需要前往论坛。我支持 @Falco 的更改,作为当前情况的快速临时改进。

你的意思是,你必须通过浏览实际的帖子来获取图片?但那样的话,你就无法获得已被删除或对你隐藏的帖子的图片了,对吧?

关于

@sam@Falco 同意某事时,这是否意味着它已被加入某个流程?

有时是……有时不是。这还没有被安排。

我将优先把“cooked”添加到导出中,这是一个简单的更改,应该在下个月的某个时候完成。