aws-wafwebacl-cloudfront
| Reference Documentation: | https://docs.aws.amazon.com/solutions/latest/constructs/ |
| Language | Package |
|---|---|
|
|
|
|
|
|
|
|
|
Overview
This AWS Solutions Construct implements an AWS WAF web ACL connected to Amazon CloudFront.
Here is a minimal deployable pattern definition:
Example
Pattern Construct Props
| Name | Type | Description |
|---|---|---|
|
existingCloudFrontWebDistribution |
The existing CloudFront instance that will be protected with the WAF web ACL. Note that a WAF web ACL can only be added to a configured CloudFront, so this construct only accepts an existing Distribution and does not accept cloudfrontProps. |
|
|
existingWebaclObj? |
Optional - existing instance of a WAF web ACL, providing both this and |
|
|
webaclProps? |
Optional user-provided props to override the default props for the AWS WAF web ACL. Providing both this and existingWebaclObj causes an error. To use a different collection of managed rule sets, specify a new rules property. Use our wrapManagedRuleSet(managedGroupName: string, vendorName: string, priority: number) function from core to create an array entry from each desired managed rule set. |
Pattern Properties
| Name | Type | Description |
|---|---|---|
|
webacl |
Returns an instance of the waf.CfnWebACL created by the construct. |
|
|
cloudFrontWebDistribution |
Returns an instance of cloudfront.Distribution created by the construct. |
Default settings
Out of the box implementation of the Construct without any override will set the following defaults:
AWS WAF
-
Deploy a WAF web ACL with 7 AWS managed rule groups.
-
AWSManagedRulesBotControlRuleSet
-
AWSManagedRulesKnownBadInputsRuleSet
-
AWSManagedRulesCommonRuleSet
-
AWSManagedRulesAnonymousIpList
-
AWSManagedRulesAmazonIpReputationList
-
AWSManagedRulesAdminProtectionRuleSet
-
AWSManagedRulesSQLiRuleSet
Note that the default rules can be replaced by specifying the rules property of CfnWebACLProps
-
-
Send metrics to Amazon CloudWatch
Amazon CloudFront
-
User provided CloudFront object is used as-is
Architecture
Github
Go to the Github repo