我正在尝试向 S3 存储桶中的某些模板授予 CloudFormation 的只读访问权限。
当 CF 与 S3 存储桶位于同一账户中时,我可以使用 aws:PrincipalIsAWSService
执行此操作。但是,当我尝试让它适用于任何 child 帐户时,我的权限被拒绝。我已尝试添加 PrincipalOrgID
或 Org 帐户 - 但到目前为止还没有任何进展。
我试图避免列出所有子帐户,因为它们经常被添加,并且我的印象是 PrincipalOrgID
就是为了这个目的。
有什么想法吗?
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": [
"arn:aws:s3:::my-bucket",
"arn:aws:s3:::my-bucket/*"
],
"Condition": {
"StringEquals": {
"aws:PrincipalOrgID": "o-yyyyyyyyyy"
},
"Bool": {
"aws:PrincipalIsAWSService": "true"
}
}
}
最佳答案
从评论转向答案以获得可见性:
问题是条件的组合。
"StringEquals": {
"aws:PrincipalOrgID": "o-yyyyyyyyyy"
},
"Bool": {
"aws:PrincipalIsAWSService": "true"
}
刚刚离开
"StringEquals": {
"aws:PrincipalOrgID": "o-yyyyyyyyyy"
}
允许组织中的其他帐户访问它。
关于amazon-web-services - 用于授予 AWS 组织子账户从 AWS 服务 (cloudFormation) 访问权限的 S3 策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74447380/