Terraform 获取Terrafrorm中AWS bucket的ListObjects访问被拒绝
我在terraform中有以下代码:Terraform 获取Terrafrorm中AWS bucket的ListObjects访问被拒绝,terraform,aws-cli,terraform-provider-aws,Terraform,Aws Cli,Terraform Provider Aws,我在terraform中有以下代码: data "file" "policy" { count = "${length(var.s3_bucket_name)}" template = <<EOF { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["s3:ListAllMyBuckets"], "Resource": ["*"
data "file" "policy" {
count = "${length(var.s3_bucket_name)}"
template = <<EOF
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["s3:ListAllMyBuckets"],
"Resource": ["*"]
},
{
"Effect": "Allow",
"Action": ["s3:ListBucket"],
"Resource": [
"arn:aws:s3:::${var.s3_bucket_name[count.index]}",
"arn:aws:s3:::${var.s3_bucket_name[count.index]}/*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:ListObjects",
"s3:GetObject"],
"Resource": [
"arn:aws:s3:::${var.s3_bucket_name[count.index]}",
"arn:aws:s3:::${var.s3_bucket_name[count.index]}/*"
]
}
]
}
EOF
}
数据“文件”策略{
count=“${length(var.s3\u bucket\u name)}”
template=您在应用terraform并通过用户访问存储桶后出现错误,对吗?如果是,您如何通过cli、boto3等执行ListObjects操作?@error404via cli->aws s3 sync${path.module}/../upload/file s3://bucket1/folder1/@error404代码用于在bucket中输入文件,而不是ec2实例在创建过程中访问文件。ohk..如果我理解正确,您将创建一个角色并将其附加到ec2实例,然后执行aws s3 sync将一些文件上载到s3。如果是,请查看。。。
data "file" "policy" {
count = "${length(var.s3_bucket_name)}"
template = <<EOF
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:ListObjects",
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::${var.s3_bucket_name[count.index]}",
"arn:aws:s3:::${var.s3_bucket_name[count.index]}/*"
]
}
]
}
EOF
}