Class: AWSCDK::WAFv2::CfnRuleGroup::AsnMatchStatementProperty

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

Overview

A rule statement that inspects web traffic based on the Autonomous System Number (ASN) associated with the request's IP address.

For additional details, see ASN match rule statement in the AWS WAF Developer Guide .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(asn_list: nil, forwarded_ip_config: nil) ⇒ AsnMatchStatementProperty

Returns a new instance of AsnMatchStatementProperty.

Parameters:



750
751
752
753
754
755
# File 'wa_fv2/cfn_rule_group.rb', line 750

def initialize(asn_list: nil, forwarded_ip_config: nil)
  @asn_list = asn_list
  Jsii::Type.check_type(@asn_list, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siY29sbGVjdGlvbiI6eyJlbGVtZW50dHlwZSI6eyJwcmltaXRpdmUiOiJudW1iZXIifSwia2luZCI6ImFycmF5In19LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "asnList") unless @asn_list.nil?
  @forwarded_ip_config = forwarded_ip_config.is_a?(Hash) ? ::AWSCDK::WAFv2::CfnRuleGroup::ForwardedIPConfigurationProperty.new(**forwarded_ip_config.transform_keys(&:to_sym)) : forwarded_ip_config
  Jsii::Type.check_type(@forwarded_ip_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c193YWZ2Mi5DZm5SdWxlR3JvdXAuRm9yd2FyZGVkSVBDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "forwardedIpConfig") unless @forwarded_ip_config.nil?
end

Instance Attribute Details

#asn_listArray<Numeric>, ... (readonly)

Contains one or more Autonomous System Numbers (ASNs).

ASNs are unique identifiers assigned to large internet networks managed by organizations such as internet service providers, enterprises, universities, or government agencies.



763
764
765
# File 'wa_fv2/cfn_rule_group.rb', line 763

def asn_list
  @asn_list
end

#forwarded_ip_configAWSCDK::IResolvable, ... (readonly)

The configuration for inspecting IP addresses to match against an ASN in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin.

Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.



770
771
772
# File 'wa_fv2/cfn_rule_group.rb', line 770

def forwarded_ip_config
  @forwarded_ip_config
end

Class Method Details

.jsii_propertiesObject



772
773
774
775
776
777
# File 'wa_fv2/cfn_rule_group.rb', line 772

def self.jsii_properties
  {
    :asn_list => "asnList",
    :forwarded_ip_config => "forwardedIpConfig",
  }
end

Instance Method Details

#to_jsiiObject



779
780
781
782
783
784
785
786
# File 'wa_fv2/cfn_rule_group.rb', line 779

def to_jsii
  result = {}
  result.merge!({
    "asnList" => @asn_list,
    "forwardedIpConfig" => @forwarded_ip_config,
  })
  result.compact
end