s3.tf 919 B

12345678910111213141516171819202122232425262728293031323334
  1. #S3 bucket for codebuild output
  2. resource "aws_s3_bucket" "artifacts" {
  3. bucket = "xdr-codebuild-artifacts"
  4. force_destroy = true
  5. acl = "private"
  6. server_side_encryption_configuration {
  7. rule {
  8. apply_server_side_encryption_by_default {
  9. kms_master_key_id = aws_kms_key.s3_codebuild_artifacts.arn
  10. sse_algorithm = "aws:kms"
  11. }
  12. }
  13. }
  14. }
  15. resource "aws_s3_bucket_policy" "artifacts" {
  16. bucket = aws_s3_bucket.artifacts.id
  17. policy = data.aws_iam_policy_document.artifacts.json
  18. }
  19. data "aws_iam_policy_document" "artifacts" {
  20. statement {
  21. sid = "AllowS3Access"
  22. actions = [ "s3:GetObject", "s3:GetObjectVersion" ]
  23. effect = "Allow"
  24. resources = [ "${aws_s3_bucket.artifacts.arn}/*" ]
  25. principals {
  26. type = "AWS"
  27. identifiers = [ for a in var.responsible_accounts[var.environment]: "arn:${var.aws_partition}:iam::${a}:root" ]
  28. }
  29. }
  30. }