Class: AWSCDK::WAFv2::CfnWebACL::RateLimitURIPathProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
wa_fv2/cfn_web_acl.rb

Overview

Specifies the request's URI path as an aggregate key for a rate-based rule.

Each distinct URI path contributes to the aggregation instance. If you use just the URI path as your custom key, then each URI path fully defines an aggregation instance.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(text_transformations:) ⇒ RateLimitURIPathProperty

Returns a new instance of RateLimitURIPathProperty.

Parameters:



4720
4721
4722
4723
# File 'wa_fv2/cfn_web_acl.rb', line 4720

def initialize(text_transformations:)
  @text_transformations = text_transformations
  Jsii::Type.check_type(@text_transformations, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfd2FmdjIuQ2ZuV2ViQUNMLlRleHRUcmFuc2Zvcm1hdGlvblByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "textTransformations")
end

Instance Attribute Details

#text_transformationsAWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::WAFv2::CfnWebACL::TextTransformationProperty> (readonly)

Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection.

Text transformations are used in rule match statements, to transform the FieldToMatch request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.



4731
4732
4733
# File 'wa_fv2/cfn_web_acl.rb', line 4731

def text_transformations
  @text_transformations
end

Class Method Details

.jsii_propertiesObject



4733
4734
4735
4736
4737
# File 'wa_fv2/cfn_web_acl.rb', line 4733

def self.jsii_properties
  {
    :text_transformations => "textTransformations",
  }
end

Instance Method Details

#to_jsiiObject



4739
4740
4741
4742
4743
4744
4745
# File 'wa_fv2/cfn_web_acl.rb', line 4739

def to_jsii
  result = {}
  result.merge!({
    "textTransformations" => @text_transformations,
  })
  result.compact
end