[英]AWS S3 - How to restrict an IAM user to just a single bucket?
我已经为此苦苦挣扎了数小时,无法解决。
我创建了一个新用户,称为双重身份,并创建了一个名为bobs-house的新存储桶,并生成了以下策略:(我不确定应该共享的任何数字都被xxx'了)
{
"Version": "2012-10-17",
"Id": "Policyxxx",
"Statement": [
{
"Sid": "Stmtxxx",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::xxx:user/duplicity"
},
"Action": "s3:*",
"Resource": "arn:aws:s3:::bobs-house/*"
}
]
}
我转到策略模拟器,然后运行一些测试。 果然,它说我可以做任何我想做的事情,但是只能在鲍勃的房子里做。 如果重复性试图做任何涉及其他存储桶的操作,则会被拒绝。 大!
现在,我启动FTP客户端并使用重复的IAM访问密钥和秘密密钥连接到s3.amazonaws.com(当然使用Transmit的S3协议,而不是FTP协议)。 我得到“访问被拒绝”。 我不知道我在做什么错。 任何帮助,将不胜感激!
编辑:
知道了,这要感谢下面约翰的回答。 我可以使用Transmit连接并仅查看该存储桶的内容,添加文件等。但是,重复性(备份软件)在抱怨:
永久重定向。 您尝试访问的存储桶必须使用指定的端点进行寻址。 请将所有将来的请求发送到此端点。 bobs-house.s3.amazonaws.com
因此,我将重复性配置中的格式切换为:
s3://bops-house.s3.amazonaws.com/test
然后我得到这个错误:
我们计算出的请求签名与您提供的签名不匹配。 检查您的密钥和签名方法。
我的访问密钥和秘密密钥绝对正确。
如果您希望向特定用户授予Amazon S3权限,则最好针对IAM用户本身创建策略,而不是对存储桶策略进行创建。
存储桶策略适合分配通用权限,而IAM中的策略则适合向特定用户或用户组授予权限。
请参阅: 用户策略示例
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.