policy-mdr_iam_admin.tf 932 B

123456789101112131415161718192021222324252627282930313233
  1. data "aws_iam_policy_document" "iam_admin_kms" {
  2. statement {
  3. sid = "AllowKMSthings"
  4. effect = "Allow"
  5. actions = [ #tfsec:ignore:aws-iam-no-policy-wildcards - baseline this setting first. Lockdown after baselining IAM permissions
  6. "kms:Create*",
  7. "kms:Describe*",
  8. "kms:Enable*",
  9. "kms:List*",
  10. "kms:Put*",
  11. "kms:Update*",
  12. "kms:Revoke*",
  13. "kms:Disable*",
  14. "kms:Get*",
  15. "kms:Delete*",
  16. "kms:TagResource",
  17. "kms:UntagResource",
  18. "kms:ScheduleKeyDeletion",
  19. "kms:CancelKeyDeletion"
  20. ]
  21. #tfsec:ignore:aws-iam-no-policy-wildcards - baseline this setting first. Lockdown after baselining IAM permissions
  22. resources = ["*"]
  23. }
  24. }
  25. resource "aws_iam_policy" "iam_admin_kms" {
  26. name = "iam_admin_kms"
  27. path = "/user/"
  28. description = "KMS access for IAM admins"
  29. policy = data.aws_iam_policy_document.iam_admin_kms.json
  30. }