88 lines
1.8 KiB
HCL
88 lines
1.8 KiB
HCL
# --------------------------------------------------------------------
|
|
# WAF
|
|
# --------------------------------------------------------------------
|
|
|
|
resource "aws_wafv2_web_acl" "this" {
|
|
name = var.name
|
|
scope = var.scope
|
|
|
|
default_action {
|
|
allow {}
|
|
}
|
|
|
|
rule {
|
|
name = "AWS-AWSManagedRulesCommonRuleSet"
|
|
priority = 1
|
|
|
|
override_action {
|
|
none {}
|
|
}
|
|
|
|
statement {
|
|
managed_rule_group_statement {
|
|
name = "AWSManagedRulesCommonRuleSet"
|
|
vendor_name = "AWS"
|
|
}
|
|
}
|
|
|
|
visibility_config {
|
|
cloudwatch_metrics_enabled = true
|
|
metric_name = "AWS-AWSManagedRulesCommonRuleSet"
|
|
sampled_requests_enabled = true
|
|
}
|
|
}
|
|
|
|
rule {
|
|
name = "AWS-AWSManagedRulesLinuxRuleSet"
|
|
priority = 2
|
|
|
|
statement {
|
|
managed_rule_group_statement {
|
|
name = "AWSManagedRulesLinuxRuleSet"
|
|
vendor_name = "AWS"
|
|
}
|
|
}
|
|
|
|
override_action {
|
|
none {}
|
|
}
|
|
|
|
visibility_config {
|
|
cloudwatch_metrics_enabled = true
|
|
metric_name = "AWS-AWSManagedRulesLinuxRuleSet"
|
|
sampled_requests_enabled = true
|
|
}
|
|
}
|
|
|
|
rule {
|
|
name = "AWS-AWSManagedRulesKnownBadInputsRuleSet"
|
|
priority = 3
|
|
|
|
override_action {
|
|
none {}
|
|
}
|
|
|
|
statement {
|
|
managed_rule_group_statement {
|
|
name = "AWSManagedRulesKnownBadInputsRuleSet"
|
|
vendor_name = "AWS"
|
|
}
|
|
}
|
|
|
|
visibility_config {
|
|
cloudwatch_metrics_enabled = true
|
|
metric_name = "AWS-AWSManagedRulesKnownBadInputsRuleSet"
|
|
sampled_requests_enabled = true
|
|
}
|
|
}
|
|
|
|
|
|
visibility_config {
|
|
cloudwatch_metrics_enabled = true
|
|
metric_name = "waf-bsmsapp"
|
|
sampled_requests_enabled = true
|
|
}
|
|
|
|
tags = var.tags
|
|
}
|