I have code to create S3 buckets and then apply the rule, for some reason am getting the error below for the resource ‘aws_s3_bucket_ownership_controls’
resource "aws_s3_bucket" "sftp-bucket" {
# bucket = var.bucket_name
for_each = var.bucket_sftp_users
bucket = each.value["s3_bucket_name"]
}
resource "aws_s3_bucket_ownership_controls" "sftp-bucket-acl-ownership" {
for_each = aws_s3_bucket.sftp-bucket
bucket = each.key
rule = {
object_ownership = "BucketOwnerEnforced"
}
}
Getting an error as
│ Error: Insufficient rule blocks
│
│ on main.tf line 17, in resource “aws_s3_bucket_ownership_controls” “sftp-bucket-acl-ownership”:
│ 17: resource “aws_s3_bucket_ownership_controls” “sftp-bucket-acl-ownership” {
│
│ At least 1 “rule” blocks are required.
╵
╷
│ Error: Unsupported argument
│
│ on main.tf line 20, in resource “aws_s3_bucket_ownership_controls” “sftp-bucket-acl-ownership”:
│ 20: rule = {
│
│ An argument named “rule” is not expected here. Did you mean to define a block of type “rule”?