Interface CfnWebACL.CaptchaActionProperty

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
CfnWebACL.CaptchaActionProperty.Jsii$Proxy
Enclosing class:
CfnWebACL

@Stability(Stable) public static interface CfnWebACL.CaptchaActionProperty extends software.amazon.jsii.JsiiSerializable
Specifies that AWS WAF should run a CAPTCHA check against the request:.

  • If the request includes a valid, unexpired CAPTCHA token, AWS WAF allows the web request inspection to proceed to the next rule, similar to a CountAction .
  • If the request doesn't include a valid, unexpired CAPTCHA token, AWS WAF discontinues the web ACL evaluation of the request and blocks it from going to its intended destination.

AWS WAF generates a response that it sends back to the client, which includes the following:

  • The header x-amzn-waf-action with a value of captcha .
  • The HTTP status code 405 Method Not Allowed .
  • If the request contains an Accept header with a value of text/html , the response includes a CAPTCHA challenge.

You can configure the expiration time in the CaptchaConfig ImmunityTimeProperty setting at the rule and web ACL level. The rule setting overrides the web ACL setting.

This action option is available for rules. It isn't available for web ACL default actions.

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.wafv2.*;
 CaptchaActionProperty captchaActionProperty = CaptchaActionProperty.builder()
         .customRequestHandling(CustomRequestHandlingProperty.builder()
                 .insertHeaders(List.of(CustomHTTPHeaderProperty.builder()
                         .name("name")
                         .value("value")
                         .build()))
                 .build())
         .build();