Amazon s3 AWS政策评估
我有一个IAM角色要附加到microservice,以便基于用户代理限制S3文件夹访问。microservice父帐户和bucket所有者相同Amazon s3 AWS政策评估,amazon-s3,amazon-iam,Amazon S3,Amazon Iam,我有一个IAM角色要附加到microservice,以便基于用户代理限制S3文件夹访问。microservice父帐户和bucket所有者相同 { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:*" ], "Resource": [
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:*"
],
"Resource": [
"arn:aws:s3:::bucket-test/service/${aws:useragent}/*"
]
},
{
"Sid": "AllowListingOfUserFolder",
"Action": [
"s3:ListBucket"
],
"Effect": "Allow",
"Resource": [
"arn:aws:s3:::bucket-test"
],
"Condition": {
"StringLike": {
"s3:prefix": [
"service/${aws:useragent}/*"
]
}
}
}
]
}
同一个S3 bucket具有默认ACL,其中帐户对对象和权限具有R/W权限
考虑到ACL和IAM策略,我不理解该策略的评估结果。例如,具有上述角色的用户使用用户代理micro-a
向bucket test/service/micro-b/new\u object
发出put\u object
请求。这是明确的还是隐含的否定?为什么?基于:
当发出请求时,AWS服务决定是允许还是拒绝给定的请求。评估逻辑遵循以下规则:
我看过那些文件了。仍然不能回答这是一个明确的/隐含的否定,还是允许以及为什么。一个政策从来都不是一个隐含的东西。根据定义,政策总是明确的。对所有策略进行评估。如果有另一个策略允许此策略允许的内容的超集,则此策略没有任何作用。唯一隐式的是默认的隐式拒绝,它存在于没有适用的显式允许的情况下。