Class: AWSCDK::WAFv2::CfnRuleGroup::RateLimitQueryStringProperty

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

Overview

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

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

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(text_transformations:) ⇒ RateLimitQueryStringProperty

Returns a new instance of RateLimitQueryStringProperty.

Parameters:



3451
3452
3453
3454
# File 'wa_fv2/cfn_rule_group.rb', line 3451

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

Instance Attribute Details

#text_transformationsAWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::WAFv2::CfnRuleGroup::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.



3462
3463
3464
# File 'wa_fv2/cfn_rule_group.rb', line 3462

def text_transformations
  @text_transformations
end

Class Method Details

.jsii_propertiesObject



3464
3465
3466
3467
3468
# File 'wa_fv2/cfn_rule_group.rb', line 3464

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

Instance Method Details

#to_jsiiObject



3470
3471
3472
3473
3474
3475
3476
# File 'wa_fv2/cfn_rule_group.rb', line 3470

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