gpt4 book ai didi

amazon-s3 - CREATE_FAILED Bucketpolicy - 未知字段 Fn::Join

转载 作者:行者123 更新时间:2023-12-03 07:17:10 27 4
gpt4 key购买 nike

由于以下 S3 存储桶策略,我的 Cloudformation 堆栈失败并不断回滚。引用的 S3 存储桶是一个用于 CloudTrail 日志的单独存储桶(据我所知,这样的事情是使用 CloudTrail 时的最佳实践)。在 cloudFormation 过程中,存储桶与堆栈的其余部分一起创建:[stackname]-cloudtraillogs-[randomstring]

我尝试不使用任何函数来指定存储桶,但这似乎不起作用。我的猜测是因为它随后会寻找存储桶“cloudtraillogs”,但找不到任何具有该名称的存储桶。使用带有引用的 Fn::Join 可能会解决这个问题(?),但是 CloudFormation 在评估存储桶策略时会给出“未知字段 Fn::Join”。

谁能发现我在这里可能做错了什么?

存储桶策略

{
"Resources": {
"policycloudtraillogs": {
"Type": "AWS::S3::BucketPolicy",
"Properties": {
"Bucket": {
"Ref": "cloudtraillogs"
},
"PolicyDocument": {
"Statement": [
{
"Sid": "AWSCloudTrailAclCheck20160224",
"Effect": "Allow",
"Principal": {
"Service": "cloudtrail.amazonaws.com"
},
"Action": "s3:GetBucketAcl",
"Resource": {
"Fn::Join": [
"",
[
"arn:aws:s3:::",
{
"Ref": "cloudtraillogs"
},
"/*"
]
]
},
{
"Sid": "AWSCloudTrailWrite20160224",
"Effect": "Allow",
"Principal": {
"Service": "cloudtrail.amazonaws.com"
},
"Action": "s3:PutObject",
"Resource": {
"Fn::Join": [
"",
[
"arn:aws:s3:::",
{
"Ref": "cloudtraillogs"
},
"/AWSLogs/myAccountID/*"
]
]
},
"Condition": {
"StringEquals": {
"s3:x-amz-acl": "bucket-owner-full-control"
}
}
}
]
}
}
}
}
}

最佳答案

您的模板似乎不是有效的 JSON。您的第一个策略声明 (AWSCloudTrailAclCheck20160224) 的 Resource 对象缺少右括号 }

关于amazon-s3 - CREATE_FAILED Bucketpolicy - 未知字段 Fn::Join,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42441362/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com