Class: AWSCDK::WAFv2::CfnWebACL::JsonMatchPatternProperty

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

Overview

The patterns to look for in the JSON body.

AWS WAF inspects the results of these pattern matches against the rule inspection criteria. This is used with the FieldToMatch option JsonBody .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(all: nil, included_paths: nil) ⇒ JsonMatchPatternProperty

Returns a new instance of JsonMatchPatternProperty.

Parameters:

  • all (Object, nil) (defaults to: nil)

    Match all of the elements. See also MatchScope in the JsonBody FieldToMatch specification.

  • included_paths (Array<String>, nil) (defaults to: nil)

    Match only the specified include paths. See also MatchScope in the JsonBody FieldToMatch specification.



3360
3361
3362
3363
3364
3365
# File 'wa_fv2/cfn_web_acl.rb', line 3360

def initialize(all: nil, included_paths: nil)
  @all = all
  Jsii::Type.check_type(@all, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "all") unless @all.nil?
  @included_paths = included_paths
  Jsii::Type.check_type(@included_paths, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "includedPaths") unless @included_paths.nil?
end

Instance Attribute Details

#allObject? (readonly)

Match all of the elements. See also MatchScope in the JsonBody FieldToMatch specification.

You must specify either this setting or the IncludedPaths setting, but not both.



3373
3374
3375
# File 'wa_fv2/cfn_web_acl.rb', line 3373

def all
  @all
end

#included_pathsArray<String>? (readonly)

Match only the specified include paths. See also MatchScope in the JsonBody FieldToMatch specification.

Provide the include paths using JSON Pointer syntax. For example, "IncludedPaths": ["/dogs/0/name", "/dogs/1/name"] . For information about this syntax, see the Internet Engineering Task Force (IETF) documentation JavaScript Object Notation (JSON) Pointer .

You must specify either this setting or the All setting, but not both.

Don't use this option to include all paths. Instead, use the All setting.



3384
3385
3386
# File 'wa_fv2/cfn_web_acl.rb', line 3384

def included_paths
  @included_paths
end

Class Method Details

.jsii_propertiesObject



3386
3387
3388
3389
3390
3391
# File 'wa_fv2/cfn_web_acl.rb', line 3386

def self.jsii_properties
  {
    :all => "all",
    :included_paths => "includedPaths",
  }
end

Instance Method Details

#to_jsiiObject



3393
3394
3395
3396
3397
3398
3399
3400
# File 'wa_fv2/cfn_web_acl.rb', line 3393

def to_jsii
  result = {}
  result.merge!({
    "all" => @all,
    "includedPaths" => @included_paths,
  })
  result.compact
end