【发布时间】:2020-11-27 21:29:53
【问题描述】:
我使用 s3 存储桶策略如下:
{
"Version": "2012-10-17",
"Id": "OnlyAllowMyVPC",
"Statement": [
{
"Sid": "denyOthers",
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": [
"arn:aws-cn:s3:::devbucket",
"arn:aws-cn:s3::: devbucket/*"
],
"Condition": {
"NotIpAddress": {
"aws:SourceIp": "10.192.0.0/19"
}
}
}
]
}
10.192.0.0/19是我的VPC的CIDR,我的VPC不能上网。
然后,即使从这个 VPC 中的 ec2,我仍然无法访问“devbucket”存储桶,但我可以访问其他存储桶。我不知道为什么。
谁能帮帮我,非常感谢!
一种方法是use root user to delete the bucket permission,但我很难获得root用户的访问权限。
更新:
我可以访问其他s3的原因是我添加了s3 VPC Endpoint。当我删除端点时,我无法访问任何存储桶。
【问题讨论】:
-
你应该做一个
"aws:sourceVpc": "..."比较而不是IP比较。 -
是的,但为时已晚,我无法再访问此存储桶了...
-
那你倒霉了,太可惜了。
-
基于私有IP限制访问根本没有任何意义,如果我创建一个VPC并分配相同的CIDR范围,那么我可以访问你的存储桶!?无论如何都不理想。
-
现在,我知道这根本没有意义。我从这个错误中学到了很多。
标签: amazon-web-services amazon-s3 amazon-vpc