AWS 策略限制每个 IAM 用户的 S3 数据大小

tom*_*tti 5 amazon-s3 amazon-web-services amazon-iam amazon-cognito aws-lambda

我试图根据帐户层限制给定用户可以上传到 S3 存储桶的数据量。

\n\n

例如:\n第 1 层:用户最多可以上传 1GB 到 S3 |\n第 2 层:\xe2\x80\x9c\xe2\x80\x9d 5GB |\n第 3 层:\xe2\x80\x9c\xe2\x80\x9d 25GB |\netc。

\n\n

我在网络上找不到任何解决此问题的资源。

\n\n

我已经探索了 IAM 和 S3 存储桶策略的世界,但据我了解,一切似乎都与限制对存储桶的访问有关,而不是限制用户可以贡献的数据量。

\n\n

我仍然希望用户能够针对此存储桶执行 CRUD 操作,但前提是保持在与其层关联的大小限制内。

\n\n

感谢所有建议。

\n

Joh*_*ein 3

Amazon S3没有限制存储量的内置功能。

您可以使用的一种方法是让您的应用程序监视用户消耗的存储量。当他们想要上传另一个文件时,您可以检查是否超出了他们的限制。如果是这样,则不允许上传。

如果尚未超出其限制,您的应用程序可以创建用于上传文件的预签名 URL,并在该预签名 URL 的策略内指定允许的最大文件大小。您的应用程序将根据其配额内剩余的数量来设置此大小。

请注意,有关配额的所有逻辑将由您的应用程序负责

请参阅:使用预签名 URL 上传对象 - Amazon Simple Storage Service