Skip to content

Commit

Permalink
add create kms key
Browse files Browse the repository at this point in the history
  • Loading branch information
ashle001 committed Sep 22, 2020
1 parent 359df1a commit 17bc30d
Showing 1 changed file with 37 additions and 15 deletions.
52 changes: 37 additions & 15 deletions main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,19 @@ locals {
enforced_tags = {
"boc:safeguard" = "title26"
}
account_id = data.aws_caller_identity.current.account_id
aws_region = data.aws_region.current.name
partition = data.aws_arn.current.partition
name = (var.name != "" && var.name != null) ? var.name : format("inf-objectlogging-%v-%v", local.account_id, local.aws_region)

# kms_key_arn_exists = var.kms_key_arn != "" && var.kms_key_arn != null
kms_key_arn = aws_kms_key.key.arn
kms_key_name = format("%s%s", local._prefixes["kms"], local.name)

base_tags = {
"boc:tf_module_version" = var._module_version
"boc:created_by" = "terraform"
}
}

#---
Expand All @@ -21,8 +34,6 @@ resource "aws_s3_bucket" "this" {
bucket = var.bucket_name
acl = "private"

force_destroy = true

server_side_encryption_configuration {
rule {
apply_server_side_encryption_by_default {
Expand All @@ -34,13 +45,12 @@ resource "aws_s3_bucket" "this" {

versioning {
enabled = true
#enabled = false
}

logging {
target_bucket = var.access_log_bucket
target_prefix = format("%s/%s/", var.access_log_bucket_prefix, var.bucket_name)
}
target_prefix = format("%s/%s/", var.access_log_bucket_prefix, var.access_log_bucket)
}

lifecycle {
prevent_destroy = true
Expand Down Expand Up @@ -86,21 +96,13 @@ data "aws_iam_policy_document" "this" {
}
}

##########
# attach bucket policy
##########
resource "aws_s3_bucket_policy" "this" {
bucket = aws_s3_bucket.this.bucket
policy = data.aws_iam_policy_document.this.json
}

resource "null_resource" "s3_create_wait" {
triggers = {
bucket = aws_s3_bucket.this.id
}
provisioner "local-exec" {
when = create
command = "sleep 180"
command = "sleep 120"
}
}

Expand All @@ -116,9 +118,24 @@ resource "aws_s3_bucket_object" "this_objects" {
#-------------------------------------------------------------------------
# EFS KMS KEY AND ALIAS
#-------------------------------------------------------------------------
#resource "aws_kms_key" "key" {
# description = "KMS CMK for title26_s3 ${local.name}"
# enable_key_rotation = true

# tags = merge(
# local.base_tags,
# { "Name" = local.kms_key_name },
# var.tags
# )
#}

#---
# create a key and alias if not specified
#---
resource "aws_kms_key" "key" {
description = "KMS CMK for title26_s3 ${local.name}"
description = "KMS CMK for Cloudtrail and S3 bucket ${local.name}"
enable_key_rotation = true
policy = data.aws_iam_policy_document.key.json

tags = merge(
local.base_tags,
Expand All @@ -131,3 +148,8 @@ resource "aws_kms_alias" "key" {
name = "alias/${local.kms_key_name}"
target_key_id = aws_kms_key.key.key_id
}

resource "aws_kms_alias" "key" {
name = "alias/${local.kms_key_name}"
target_key_id = aws_kms_key.key.key_id
}

0 comments on commit 17bc30d

Please sign in to comment.