文件上传到前端的s3存储桶好还是后端好?

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

我正在创建一个网络应用程序,其中有一个选项可供经过身份验证的用户上传图片。我很困惑,到底是前端好还是后端好。我已经在前端实现了它,但我必须包含我的“accessKeyId”和“secretKey”。我不知道这是否会损害我的安全。我在后端使用云函数。如果有人可以帮助我获得与此相关的最佳实践,我将非常感激。

reactjs amazon-s3 google-cloud-functions frontend backend
2个回答
13
投票

您可以从后端生成预签名 URL,然后您的前端可以将文件直接安全上传到 S3,而不会暴露您的凭据。

查看文档这里

此外,这篇文章指出了该策略的一些优点:

  1. 您仍然可以只允许经过身份验证的用户访问预签名的网址
  2. 您可以为生成的预签名网址设置过期时间
  3. 避免文件通过后端功能,从而节省带宽、内存处理和上传时间

0
投票

前端,假设你有1000个用户,全部通过服务器上传,你的服务器将不得不做非常繁重的工作。让客户端上传就可以了

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