コンテンツにスキップ

AWS WAF Module

Description

This module creates an AWS WAF service.

Usage

module "aws_waf" {
  source = "./modules/waf"
  product = "oqtopus"
  org = "example"
  env = "dev"
  resource_arn_list = ["arn:aws:apigateway:us-west-2::/apis/api-id"]
  enable_common_rules = true
  enable_rate_limiting = true
  rate_limit = 1000
  cloudwatch_metrics_enabled = true
  sampled_requests_enabled = false
}

Requirements

Name Version
terraform >= 1.9.0, < 2.0.0
aws ~> 5.57.0

Providers

Name Version
aws ~> 5.57.0

Resources

Name Type
aws_wafv2_web_acl.this resource
aws_wafv2_web_acl_association.this resource

Inputs

Name Description Type Default Required
env environment name string n/a yes
org organization name string n/a yes
product product name string n/a yes
resource_arn_list list of ARN of the resources to associate WAF with (like API Gateway) list(string) n/a yes
enable_common_rules flag for enabling/disabling common rules WAF rule bool false no
enable_rate_limiting flag for enabling/disabling rate limiting WAF rule bool false no
rate_limit maximum number of requests, which have an identical value in the field specified by the RateKey, allowed in a five-minute period. Minimum value is 100 number 1000 no
cloudwatch_metrics_enabled flag for enabling/disabling sending WAF metrics to cloudwatch bool false no
sampled_requests_enabled flag for enabling/disabling storing sample requests in WAF for analysis bool false no

Outputs

Name Description
web_acl_arn ARN of web ACL
web_acl_id web ACL ID