Class CfnWebACL

All Implemented Interfaces:
IConstruct, IDependable, IInspectable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:30:36.060Z") @Stability(Stable) public class CfnWebACL extends CfnResource implements IInspectable
A CloudFormation AWS::WAF::WebACL.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the developer guide.

For the latest version of AWS WAF , use the AWS WAF V2 API and see the AWS WAF Developer Guide . With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Contains the Rules that identify the requests that you want to allow, block, or count. In a WebACL , you also specify a default action ( ALLOW or BLOCK ), and the action for each Rule that you add to a WebACL , for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the WebACL with a Amazon CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a WebACL , a request needs to match only one of the specifications to be allowed, blocked, or counted.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.waf.*;
 CfnWebACL cfnWebACL = CfnWebACL.Builder.create(this, "MyCfnWebACL")
         .defaultAction(WafActionProperty.builder()
                 .type("type")
                 .build())
         .metricName("metricName")
         .name("name")
         // the properties below are optional
         .rules(List.of(ActivatedRuleProperty.builder()
                 .priority(123)
                 .ruleId("ruleId")
                 // the properties below are optional
                 .action(WafActionProperty.builder()
                         .type("type")
                         .build())
                 .build()))
         .build();
 
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnWebACL

      protected CfnWebACL(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnWebACL

      protected CfnWebACL(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnWebACL

      @Stability(Stable) public CfnWebACL(@NotNull Construct scope, @NotNull String id, @NotNull CfnWebACLProps props)
      Create a new AWS::WAF::WebACL.

      Parameters:
      scope -
      • scope in which this resource is defined.
      This parameter is required.
      id -
      • scoped id of the resource.
      This parameter is required.
      props -
      • resource properties.
      This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector -
      • tree inspector to collect and process attributes.
      This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getDefaultAction

      @Stability(Stable) @NotNull public Object getDefaultAction()
      The action to perform if none of the Rules contained in the WebACL match.

      The action is specified by the WafAction object.

    • setDefaultAction

      @Stability(Stable) public void setDefaultAction(@NotNull IResolvable value)
      The action to perform if none of the Rules contained in the WebACL match.

      The action is specified by the WafAction object.

    • setDefaultAction

      @Stability(Stable) public void setDefaultAction(@NotNull CfnWebACL.WafActionProperty value)
      The action to perform if none of the Rules contained in the WebACL match.

      The action is specified by the WafAction object.

    • getMetricName

      @Stability(Stable) @NotNull public String getMetricName()
      The name of the metrics for this WebACL .

      The name can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length 128 and minimum length one. It can't contain whitespace or metric names reserved for AWS WAF , including "All" and "Default_Action." You can't change MetricName after you create the WebACL .

    • setMetricName

      @Stability(Stable) public void setMetricName(@NotNull String value)
      The name of the metrics for this WebACL .

      The name can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length 128 and minimum length one. It can't contain whitespace or metric names reserved for AWS WAF , including "All" and "Default_Action." You can't change MetricName after you create the WebACL .

    • getName

      @Stability(Stable) @NotNull public String getName()
      A friendly name or description of the WebACL .

      You can't change the name of a WebACL after you create it.

    • setName

      @Stability(Stable) public void setName(@NotNull String value)
      A friendly name or description of the WebACL .

      You can't change the name of a WebACL after you create it.

    • getRules

      @Stability(Stable) @Nullable public Object getRules()
      An array that contains the action for each Rule in a WebACL , the priority of the Rule , and the ID of the Rule .
    • setRules

      @Stability(Stable) public void setRules(@Nullable IResolvable value)
      An array that contains the action for each Rule in a WebACL , the priority of the Rule , and the ID of the Rule .
    • setRules

      @Stability(Stable) public void setRules(@Nullable List<Object> value)
      An array that contains the action for each Rule in a WebACL , the priority of the Rule , and the ID of the Rule .