java.lang.Object
software.amazon.jsii.JsiiObject
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.127Z") @Stability(Stable) public class CfnWebACL extends CfnResource implements IInspectable
A CloudFormation AWS::WAFRegional::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. 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.

To identify the requests that you want AWS WAF to filter, you associate the WebACL with an API Gateway API or an Application Load Balancer.

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.regional.*;
 CfnWebACL cfnWebACL = CfnWebACL.Builder.create(this, "MyCfnWebACL")
         .defaultAction(ActionProperty.builder()
                 .type("type")
                 .build())
         .metricName("metricName")
         .name("name")
         // the properties below are optional
         .rules(List.of(RuleProperty.builder()
                 .action(ActionProperty.builder()
                         .type("type")
                         .build())
                 .priority(123)
                 .ruleId("ruleId")
                 .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::WAFRegional::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.ActionProperty 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()
      A name for 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)
      A name for 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 .