vars.tf 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. variable "block_settings" {
  2. description = "Can change rules to 'count' in order to test before deployment"
  3. type = object(
  4. {
  5. default = bool, # Default action. False = count
  6. custom = bool, # XDR Custom Rules. False = count
  7. admin = bool, # /admin folder
  8. AWSManagedRulesCommonRuleSet = bool,
  9. AWSManagedRulesAmazonIpReputationList = bool,
  10. AWSManagedRulesKnownBadInputsRuleSet = bool,
  11. AWSManagedRulesSQLiRuleSet = bool,
  12. AWSManagedRulesLinuxRuleSet = bool,
  13. AWSManagedRulesUnixRuleSet = bool,
  14. }
  15. )
  16. default = {
  17. "default" = true # Default action. False = count
  18. "custom" = true # XDR Custom Rules. False = count
  19. "admin" = true
  20. "AWSManagedRulesCommonRuleSet" = true
  21. "AWSManagedRulesAmazonIpReputationList" = true
  22. "AWSManagedRulesKnownBadInputsRuleSet" = true
  23. "AWSManagedRulesSQLiRuleSet" = true
  24. "AWSManagedRulesLinuxRuleSet" = true
  25. "AWSManagedRulesUnixRuleSet" = true
  26. }
  27. nullable = false # If passed in null, default value will be assigned
  28. }
  29. ## Exclude Rules
  30. variable "excluded_rules_AWSManagedRulesCommonRuleSet" {
  31. type = list(string)
  32. default = [
  33. "SizeRestrictions_BODY" # Breaks too many things
  34. ]
  35. nullable = false
  36. }
  37. variable "excluded_rules_AWSManagedRulesAmazonIpReputationList" {
  38. type = list(string)
  39. default = []
  40. nullable = false
  41. }
  42. variable "excluded_rules_AWSManagedRulesKnownBadInputsRuleSet" {
  43. type = list(string)
  44. default = []
  45. nullable = false
  46. }
  47. variable "excluded_rules_AWSManagedRulesSQLiRuleSet" {
  48. type = list(string)
  49. default = []
  50. nullable = false
  51. }
  52. variable "excluded_rules_AWSManagedRulesLinuxRuleSet" {
  53. type = list(string)
  54. default = []
  55. nullable = false
  56. }
  57. variable "excluded_rules_AWSManagedRulesUnixRuleSet" {
  58. type = list(string)
  59. default = []
  60. nullable = false
  61. }
  62. ## Exclude Entire Sets
  63. variable "excluded_set_AWSManagedRulesCommonRuleSet" {
  64. type = bool
  65. default = false
  66. nullable = false
  67. }
  68. variable "excluded_set_AWSManagedRulesAmazonIpReputationList" {
  69. type = bool
  70. default = false
  71. nullable = false
  72. }
  73. variable "excluded_set_AWSManagedRulesKnownBadInputsRuleSet" {
  74. type = bool
  75. default = false
  76. nullable = false
  77. }
  78. variable "excluded_set_AWSManagedRulesSQLiRuleSet" {
  79. type = bool
  80. default = false
  81. nullable = false
  82. }
  83. variable "excluded_set_AWSManagedRulesLinuxRuleSet" {
  84. type = bool
  85. default = false
  86. nullable = false
  87. }
  88. variable "excluded_set_AWSManagedRulesUnixRuleSet" {
  89. type = bool
  90. default = false
  91. nullable = false
  92. }
  93. variable "additional_blocked_ips" {
  94. description = "IP addresses that are blocked, in addition to the defaults."
  95. type = list(string)
  96. default = []
  97. nullable = false
  98. }
  99. variable "allowed_ips" {
  100. description = "IP Addresses that are always allowed"
  101. type = list(string)
  102. default = []
  103. nullable = false
  104. }
  105. variable "admin_ips" {
  106. description = "IP Addressed that are allowed to the admin interface"
  107. type = list(string)
  108. default = []
  109. nullable = false
  110. }
  111. variable "resource_arn" { type = string }
  112. variable "fqdns" { type = list(string) }
  113. variable "tags" { type = map(any) }
  114. variable "aws_partition" { type = string }
  115. variable "aws_region" { type = string }
  116. variable "aws_account_id" { type = string }