module "terraform_dynamodb_table" { source = "terraform-aws-modules/dynamodb-table/aws" version = "4.0.1" name = local.terraform_dynamodb_table_name hash_key = var.terraform_dynamodb_table.hash_key # read_capacity = var.terraform_dynamodb_table.read_capacity # write_capacity = var.terraform_dynamodb_table.write_capacity attributes = var.terraform_dynamodb_table.attributes tags = local.common_tags } resource "aws_s3_bucket" "terraform_s3_bucket" { bucket =local.terraform_s3_bucket_name # tags = local.common_tags } resource "aws_s3_bucket_versioning" "terraform_versioning" { bucket = aws_s3_bucket.terraform_s3_bucket.id versioning_configuration { status = "Enabled" } } data "aws_iam_policy_document" "deny_insecure_communication" { statement { sid = "DenyInsecureCommunications" principals { type = "*" identifiers = ["*"] } condition { test = "Bool" variable = "aws:SecureTransport" values = ["false"] } effect = "Deny" actions = ["s3:*"] resources = [ aws_s3_bucket.terraform_s3_bucket.arn, "${aws_s3_bucket.terraform_s3_bucket.arn}/*", ] } } resource "aws_s3_bucket_policy" "deny_insecure_communication" { bucket = aws_s3_bucket.terraform_s3_bucket.id policy = data.aws_iam_policy_document.deny_insecure_communication.json }