【问题标题】:Wrapping S3 URL and remove S3 url from download file包装 S3 URL 并从下载文件中删除 S3 url
【发布时间】:2018-07-22 07:16:41
【问题描述】:

我有一个在线客户文件共享存储,例如 Dropbox。 我们使用 S3 进行存储。当客户下载任何文件时,他们将获得带有 S3 存储桶名称和文件的完整 URL。 s3 正在将预签名的 URL 发送到 api。我不想向我们的最终客户展示我们正在使用 S3 以及我们的 URL/S3 存储桶名称是什么。现在请告诉我解决该问题的解决方法。 我附上了下载文件的短屏幕作为示例,它显示了存储桶名称和完整 URL。

我还附上了请求的详细信息。

response-content-disposition=attachment%3B%20filename%2A%3DUTF-8%27%2717799421_1301945716556805_5072327839011550698_n.jpg
&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD
&X-Amz-Algorithm=AWS4-HMAC-SHA256
&X-Amz-Credential=AKIAJCCG3CKV5IHGGTVA%2F20180722%2Fus-west-2%2Fs3%2Faws4_request
&X-Amz-Date=20180722T063558Z
&X-Amz-SignedHeaders=host
&X-Amz-Expires=600
&X-Amz-Signature=f2666368cd698a4f60e4a7931768cb0e833221007e947671a44bff1a72c54c90

【问题讨论】:

  • 你有没有想过使用一个以 s3 为来源的自定义域名的云端分发?

标签: amazon-web-services amazon-s3 devops devops-services


【解决方案1】:

您需要创建自己的应用程序端点来接收图像请求。然后,您的应用将验证访问权限,从 S3 检索对象并将其传递回调用客户端。

请注意,因此您需要扩展您的应用程序以处理工作负载,而对 Amazon S3 的请求将自动利用 S3 的规模。

我想,您可以通过 API Gateway 和 AWS Lambda 执行上述操作。它会为您处理扩展,但您将根据使用情况付费。

底线:如果你不打算指向 S3,你将不得不指向其他东西——你将负责创建它、维护它并为此付费。

【讨论】:

  • API 网关有负载限制。
猜你喜欢
  • 2022-08-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-25
  • 2019-10-29
  • 2017-10-22
相关资源
最近更新 更多