Class: Aws::WAFV2::Types::CaptchaAction

Inherits:
Struct
  • Object
show all
Includes:
Structure
Defined in:
lib/aws-sdk-wafv2/types.rb

Overview

Note:

When making an API call, you may pass CaptchaAction data as a hash:

{
  custom_request_handling: {
    insert_headers: [ # required
      {
        name: "CustomHTTPHeaderName", # required
        value: "CustomHTTPHeaderValue", # required
      },
    ],
  },
}

Specifies that WAF should run a `CAPTCHA` check against the request:

  • If the request includes a valid, unexpired `CAPTCHA` token, 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, WAF discontinues the web ACL evaluation of the request and blocks it from going to its intended destination.

    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.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#custom_request_handlingTypes::CustomRequestHandling

Defines custom handling for the web request.

For information about customizing web requests and responses, see

Customizing web requests and responses in WAF][1

in the [WAF

Developer Guide].

[1]: docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html [2]: docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html



917
918
919
920
921
# File 'lib/aws-sdk-wafv2/types.rb', line 917

class CaptchaAction < Struct.new(
  :custom_request_handling)
  SENSITIVE = []
  include Aws::Structure
end