如何向其他用户提供用户头像图像?

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

在我们的服务中,我们有其他用户应该能够看到的用户头像图像。

如何暴露用户头像?我想到的两个选择是:

  • 通过公共 S3 存储桶或...
  • 通过 REST API 端点将图像返回到前端。

这些中是否有任何一个是首选,或者是否有最佳实践,在简单性和数据安全性方面都是首选(也考虑到 GDPR 等)?

amazon-web-services rest security amazon-s3 avatar
1个回答
0
投票

这完全取决于您的风险偏好。

如果您同意图像可公开查找(即使具有复杂的 URL),那么公共存储桶就可以了。

Gravatar - 全球公认的头像就是这样做的——它需要用户电子邮件地址的哈希并在 URL 中使用它。

或者,您的应用程序可以生成 Amazon S3 预签名 URL,它提供对 Amazon S3 中的私有对象的限时访问。这可以临时访问 S3 存储桶中的私有对象。您的应用程序只需要生成一个哈希值,然后可以使用它来生成一个 URL。这提供了控制访问的好处,但仍然使用 S3 来提供私有数据(从而减少应用程序的负载)。

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