AWS WAF Classic

Previous-generation AWS WAF web ACL of match conditions and rules; end of support 7 October 2026.

Provider
aws
Category
Security
Properties · 4 set by this component
propertytypevaluesrequiredkind defaultthis component
botProtectionboolean—no—▸ false
customRuleCountinteger—no—inherited
defaultAction · component propertyenumallow | blockno—inherited
logging · component propertyboolean—nofalseinherited
managedboolean—nofalse▸ true
managedRuleSetstring—no—inherited
modeenumdetection | prevention | offno—▸ prevention
protectedResource · component propertyenumcloudfront | application-load-balancer | api-gatewayno—inherited
rateBasedRuleWindowMinutes · component propertyinteger—no5inherited
rateLimitingboolean—no—▸ false
Rules that apply · 0

Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.

No rule reads this kind yet. That is a gap, not a guarantee.
Use it in a design
nodes:
  - { id: "waf-classic", component: "aws-waf-classic" }
Other Web application firewall products · 13
Source
# yaml-language-server: $schema=../../schema/component.schema.json
# AWS WAF Classic: the pre-November-2019 AWS WAF, a web ACL of conditions and rules in front of a
# CloudFront distribution, Application Load Balancer or API Gateway REST API ("AWS WAF Classic").
# The web ACL default action is allow or block and rate-based rules count requests over a 5-minute
# period ("Creating and configuring a Web Access Control List (Web ACL)").
# Sunset: end of support 7 October 2026 (AWS service lifecycle, sunset services); placeable until then.
schemaVersion: "1"
type: "component"
id: "aws-waf-classic"
kind: "waf"
provider: "aws"
docs: "https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html"
defaults:
  managed: true
  mode: "prevention"
  botProtection: false
  rateLimiting: false
properties:
  defaultAction:
    type: "enum"
    values: ["allow", "block"]
  protectedResource:
    type: "enum"
    values: ["cloudfront", "application-load-balancer", "api-gateway"]
  rateBasedRuleWindowMinutes:
    type: "integer"
    default: 5
  logging:
    type: "boolean"
    default: false

The same page as markdown, for an agent: /catalogue/components/aws-waf-classic.md