指向公共 GCP 存储桶中文件的匿名 URL

问题描述 投票:0回答:1

我正在尝试从我的服务器发送电子邮件,这些电子邮件将包含 GCP 中存储桶中的文件。目前保存这些文件的存储桶是私有的。我面临的问题是文件太大,无法使用我当前的设置发送。我尝试在发送之前压缩文件,但我使用的服务(sendgrid/mail)不能处理解压,至少我发现没有。

所以我似乎有两个选择:

  1. 将签名的 URL 发送到我的私人存储桶中的文件。问题是,理想情况下,对这些文件的访问不会过期,签名的 URL 也不会过期。
  2. 公开存储桶并发送链接。这种方法的问题是安全性,用户在 URL 中将有足够的信息来确定查看其他文件。

所以我的问题是,有没有办法将 URL 发送到以某种方式屏蔽的公共存储桶文件以隐藏我的存储桶名称?发送一个指向我实际网址的模糊网址?此外,任何解决此问题的替代方法也很酷。或者,如果我完全不在这儿,请告诉我。

(顺便说一句,我正在节点/快速服务器中工作) 预先感谢!

node.js file google-cloud-platform bucket
1个回答
0
投票

由于 DNS 和 HTTP 的工作方式,屏蔽或代理存储桶仍会导致连接到主机/存储桶/服务端点以获取文件。因此,尝试屏蔽目标主机/存储桶/服务端点有点徒劳。您可以使用设置的自定义域更改主机/存储桶,但黑客仍然可以解析和查看端点。

另一种可能的方法是混淆路径和/或文件名。

更安全的选择是添加一个身份验证层(接收文件下载请求的应用程序根据下载链接中嵌入的 url 参数对其进行授权。如果通过,则让应用程序从存储桶中获取文件并将其返回到用户。

© www.soinside.com 2019 - 2024. All rights reserved.