Class: AWSCDK::WAFRegional::CfnByteMatchSet::FieldToMatchProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
waf_regional/cfn_byte_match_set.rb

Overview

AWS WAF Classic support will end on September 30, 2025.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the developer guide.

For the latest version of AWS WAF , use the AWS WAF V2 API and see the AWS WAF Developer Guide . With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Specifies where in a web request to look for TargetString .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(type:, data: nil) ⇒ FieldToMatchProperty

Returns a new instance of FieldToMatchProperty.

Parameters:

  • type (String)

    The part of the web request that you want AWS WAF to search for a specified string.

  • data (String, nil) (defaults to: nil)

    When the value of Type is HEADER , enter the name of the header that you want AWS WAF to search, for example, User-Agent or Referer .



709
710
711
712
713
714
# File 'waf_regional/cfn_byte_match_set.rb', line 709

def initialize(type:, data: nil)
  @type = type
  Jsii::Type.check_type(@type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type")
  @data = data
  Jsii::Type.check_type(@data, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "data") unless @data.nil?
end

Instance Attribute Details

#dataString? (readonly)

When the value of Type is HEADER , enter the name of the header that you want AWS WAF to search, for example, User-Agent or Referer .

The name of the header is not case sensitive.

When the value of Type is SINGLE_QUERY_ARG , enter the name of the parameter that you want AWS WAF to search, for example, UserName or SalesRegion . The parameter name is not case sensitive.

If the value of Type is any other value, omit Data .



741
742
743
# File 'waf_regional/cfn_byte_match_set.rb', line 741

def data
  @data
end

#typeString (readonly)

The part of the web request that you want AWS WAF to search for a specified string.

Parts of a request that you can search include the following:

  • HEADER : A specified request header, for example, the value of the User-Agent or Referer header. If you choose HEADER for the type, specify the name of the header in Data .
  • METHOD : The HTTP method, which indicated the type of operation that the request is asking the origin to perform.
  • QUERY_STRING : A query string, which is the part of a URL that appears after a ? character, if any.
  • URI : The part of a web request that identifies a resource, for example, /images/daily-ad.jpg .
  • BODY : The part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form. The request body immediately follows the request headers. Note that only the first 8192 bytes of the request body are forwarded to AWS WAF for inspection. To allow or block requests based on the length of the body, you can create a size constraint set.
  • SINGLE_QUERY_ARG : The parameter in the query string that you will inspect, such as UserName or SalesRegion . The maximum length for SINGLE_QUERY_ARG is 30 characters.
  • ALL_QUERY_ARGS : Similar to SINGLE_QUERY_ARG , but rather than inspecting a single parameter, AWS WAF will inspect all parameters within the query for the value or regex pattern that you specify in TargetString .


730
731
732
# File 'waf_regional/cfn_byte_match_set.rb', line 730

def type
  @type
end

Class Method Details

.jsii_propertiesObject



743
744
745
746
747
748
# File 'waf_regional/cfn_byte_match_set.rb', line 743

def self.jsii_properties
  {
    :type => "type",
    :data => "data",
  }
end

Instance Method Details

#to_jsiiObject



750
751
752
753
754
755
756
757
# File 'waf_regional/cfn_byte_match_set.rb', line 750

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