【发布时间】:2013-08-12 00:26:59
【问题描述】:
我正在开发一个移动应用程序,它可以让任何人将文件上传到 S3 存储桶。我想我会使用亚马逊提供的匿名令牌自动售货机。
但是,我看不到如何编写一个只允许上传新文件而不是覆盖(有效删除)的 TokenVendingMachinePolicy.json 文件。我认为只允许s3:PutObject 会很好,但似乎s3:PutObject 权限允许两者。这似乎有点奇怪,因为有一个单独的s3:DeleteObject 权限,这是没用的,因为无论如何你都可以用 0 长度的对象覆盖。
有没有办法只允许上传新文件?这个问题一般是怎么解决的?
【问题讨论】:
-
您找到解决方案了吗?
-
我现在也有同样的问题......如果使用预签名 URL 直接从客户端浏览器上传到 S3 存储桶,那么理论上用户可以删除另一个用户的文件拥有他们想要“删除”的文件的密钥(公开可用)。