在 Web 应用程序中,在哪里存储用户私人信息(如身份证图像等)?

Where to store user private information ( like ID cards images etc.) in a web app?

我正在用 django rest 开发一个应用程序,其中一个功能是让用户存储身份证和驾驶执照。我正在考虑使用亚马逊 AWS S3 来存储文件。 该功能是否足够安全?那种类型的文件通常使用什么?

对于我想要存储此类信息的用例,我会选择 aws s3。

Setting default server-side encryption behavior for Amazon S3 buckets. Depending on the type of setup and amount of money I am willing to spend, I would choose to go with Customer Managed Key 用于加密存储桶。

考虑到我正在接受 AWS 建议的所有安全检查 How can I secure the files in my Amazon S3 bucket?

启用复制、版本控制、日志记录以及可能的基于 IP 的访问以确保一切正常。

在这种情况下,S3 提供了各种安全措施。

亚马逊简单存储服务 (S3)

It allows you to store an infinite amount of data that can be accessed programmatically via different methods like REST API, SOAP, web interface, and more. It is an ideal storage option for videos, images and application data.

特点:

  • 完全托管
  • 存储在桶中
  • 版本控制
  • 访问控制列表和存储桶策略
  • 静态 AES-256 位加密
  • 默认不公开

最适合用于:

  • 托管整个静态网站
  • 静态网页内容和媒体
  • 存储用于计算和大规模分析的数据,例如分析 金融交易、点击流分析和媒体转码
  • 业务连续性的灾难恢复解决方案
  • 敏感数据备份和归档的安全解决方案

使用加密来保护您的数据: 如果您的用例需要在传输过程中加密,Amazon S3 支持 HTTPS 协议,该协议对传入和传出 Amazon S3 的数据进行加密。所有 AWS SDK 和 AWS 工具默认使用 HTTPS

限制对您的 S3 资源的访问: 默认情况下,所有 S3 存储桶都是私有的,只能由明确授予访问权限的用户访问。使用 AWS 时,最佳做法是将对您的资源的访问限制为绝对需要它的人,您可以在 Doc.

中看到