Class: AWSCDK::WAFv2::CfnRuleGroup::RateLimitURIPathProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
wa_fv2/cfn_rule_group.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:



3488
3489
3490
3491
# File 'wa_fv2/cfn_rule_group.rb', line 3488

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.



3499
3500
3501
# File 'wa_fv2/cfn_rule_group.rb', line 3499

def text_transformations
  @text_transformations
end

Class Method Details

.jsii_propertiesObject



3501
3502
3503
3504
3505
# File 'wa_fv2/cfn_rule_group.rb', line 3501

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

Instance Method Details

#to_jsiiObject



3507
3508
3509
3510
3511
3512
3513
# File 'wa_fv2/cfn_rule_group.rb', line 3507

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