Class: AWSCDK::WAFv2::CfnRuleGroup::RateLimitQueryArgumentProperty

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

Overview

Specifies a query argument in the request as an aggregate key for a rate-based rule.

Each distinct value for the named query argument contributes to the aggregation instance. If you use a single query argument as your custom key, then each value fully defines an aggregation instance.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name:, text_transformations:) ⇒ RateLimitQueryArgumentProperty

Returns a new instance of RateLimitQueryArgumentProperty.

Parameters:



3405
3406
3407
3408
3409
3410
# File 'wa_fv2/cfn_rule_group.rb', line 3405

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

Instance Attribute Details

#nameString (readonly)

The name of the query argument to use.



3416
3417
3418
# File 'wa_fv2/cfn_rule_group.rb', line 3416

def name
  @name
end

#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.



3423
3424
3425
# File 'wa_fv2/cfn_rule_group.rb', line 3423

def text_transformations
  @text_transformations
end

Class Method Details

.jsii_propertiesObject



3425
3426
3427
3428
3429
3430
# File 'wa_fv2/cfn_rule_group.rb', line 3425

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

Instance Method Details

#to_jsiiObject



3432
3433
3434
3435
3436
3437
3438
3439
# File 'wa_fv2/cfn_rule_group.rb', line 3432

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