2013-03-08 284 views
0

我在S3水桶包含文件的用户数量,就像这样:授予LIST权限

mybucket 
    /user1/file1.jpg 
    /user1/file2.jpg 
    /user2/doc1.jpg 
    /user2/doc2.jpg 

我现在用的是S3 REST API向用户授予权限发布到S3存储桶中的子文件夹。发布的路径(例如“user1 /”)包含在签名中,因此用户无法发布到其他用户的子文件夹。

我想使用S3 REST API来授予用户在其子文件夹中获取文件内容的权限。但是,根据文档在这里:

http://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html

的URL可以过滤桶的内容,就像这样:

GET /?prefix=user1 HTTP/1.1 

但串签没有前缀:

GET\n 
\n 
\n 
Tue, 27 Mar 2007 19:42:41 +0000\n 
/bucket/ 

这意味着user1可以修改URL并查看其他user2的子目录内容(!?!?)。

是否有限制列出文件内容的方法,还是必须为每个用户创建单独的存储桶?

感谢

回答

0

你可以签署凭据不同的IAM用户,每个用户的权限只是你希望他们看到的路径中的GET的URL。