Class: AWSCDK::NetworkFirewall::CfnRuleGroup::TCPFlagFieldProperty

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

Overview

TCP flags and masks to inspect packets for. This is used in the match attributes specification.

For example:

"TCPFlags": [ { "Flags": [ "ECE", "SYN" ], "Masks": [ "SYN", "ECE" ] } ]

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(flags:, masks: nil) ⇒ TCPFlagFieldProperty

Returns a new instance of TCPFlagFieldProperty.

Parameters:

  • flags (Array<String>)

    Used in conjunction with the Masks setting to define the flags that must be set and flags that must not be set in order for the packet to match.

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

    The set of flags to consider in the inspection.



1829
1830
1831
1832
1833
1834
# File 'network_firewall/cfn_rule_group.rb', line 1829

def initialize(flags:, masks: nil)
  @flags = flags
  Jsii::Type.check_type(@flags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "flags")
  @masks = masks
  Jsii::Type.check_type(@masks, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "masks") unless @masks.nil?
end

Instance Attribute Details

#flagsArray<String> (readonly)

Used in conjunction with the Masks setting to define the flags that must be set and flags that must not be set in order for the packet to match.

This setting can only specify values that are also specified in the Masks setting.

For the flags that are specified in the masks setting, the following must be true for the packet to match:

  • The ones that are set in this flags setting must be set in the packet.
  • The ones that are not set in this flags setting must also not be set in the packet.


1847
1848
1849
# File 'network_firewall/cfn_rule_group.rb', line 1847

def flags
  @flags
end

#masksArray<String>? (readonly)

The set of flags to consider in the inspection.

To inspect all flags in the valid values list, leave this with no setting.



1854
1855
1856
# File 'network_firewall/cfn_rule_group.rb', line 1854

def masks
  @masks
end

Class Method Details

.jsii_propertiesObject



1856
1857
1858
1859
1860
1861
# File 'network_firewall/cfn_rule_group.rb', line 1856

def self.jsii_properties
  {
    :flags => "flags",
    :masks => "masks",
  }
end

Instance Method Details

#to_jsiiObject



1863
1864
1865
1866
1867
1868
1869
1870
# File 'network_firewall/cfn_rule_group.rb', line 1863

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