Class: AWSCDK::EC2::CfnTrafficMirrorFilterRuleProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
ec2/cfn_traffic_mirror_filter_rule_props.rb

Overview

Properties for defining a CfnTrafficMirrorFilterRule.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(destination_cidr_block:, rule_action:, rule_number:, source_cidr_block:, traffic_direction:, traffic_mirror_filter_id:, description: nil, destination_port_range: nil, protocol: nil, source_port_range: nil, tags: nil) ⇒ CfnTrafficMirrorFilterRuleProps

Returns a new instance of CfnTrafficMirrorFilterRuleProps.

Parameters:

  • destination_cidr_block (String)

    The destination CIDR block to assign to the Traffic Mirror rule.

  • rule_action (String)

    The action to take on the filtered traffic.

  • rule_number (Numeric)

    The number of the Traffic Mirror rule.

  • source_cidr_block (String)

    The source CIDR block to assign to the Traffic Mirror rule.

  • traffic_direction (String)

    The type of traffic.

  • traffic_mirror_filter_id (String)

    The ID of the filter that this rule is associated with.

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

    The description of the Traffic Mirror rule.

  • destination_port_range (AWSCDK::IResolvable, AWSCDK::EC2::CfnTrafficMirrorFilterRule::TrafficMirrorPortRangeProperty, nil) (defaults to: nil)

    The destination port range.

  • protocol (Numeric, nil) (defaults to: nil)

    The protocol, for example UDP, to assign to the Traffic Mirror rule.

  • source_port_range (AWSCDK::IResolvable, AWSCDK::EC2::CfnTrafficMirrorFilterRule::TrafficMirrorPortRangeProperty, nil) (defaults to: nil)

    The source port range.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    Tags on Traffic Mirroring filter rules.



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'ec2/cfn_traffic_mirror_filter_rule_props.rb', line 20

def initialize(destination_cidr_block:, rule_action:, rule_number:, source_cidr_block:, traffic_direction:, traffic_mirror_filter_id:, description: nil, destination_port_range: nil, protocol: nil, source_port_range: nil, tags: nil)
  @destination_cidr_block = destination_cidr_block
  Jsii::Type.check_type(@destination_cidr_block, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "destinationCidrBlock")
  @rule_action = rule_action
  Jsii::Type.check_type(@rule_action, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "ruleAction")
  @rule_number = rule_number
  Jsii::Type.check_type(@rule_number, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "ruleNumber")
  @source_cidr_block = source_cidr_block
  Jsii::Type.check_type(@source_cidr_block, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "sourceCidrBlock")
  @traffic_direction = traffic_direction
  Jsii::Type.check_type(@traffic_direction, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "trafficDirection")
  @traffic_mirror_filter_id = traffic_mirror_filter_id
  Jsii::Type.check_type(@traffic_mirror_filter_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "trafficMirrorFilterId")
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @destination_port_range = destination_port_range.is_a?(Hash) ? ::AWSCDK::EC2::CfnTrafficMirrorFilterRule::TrafficMirrorPortRangeProperty.new(**destination_port_range.transform_keys(&:to_sym)) : destination_port_range
  Jsii::Type.check_type(@destination_port_range, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lYzIuQ2ZuVHJhZmZpY01pcnJvckZpbHRlclJ1bGUuVHJhZmZpY01pcnJvclBvcnRSYW5nZVByb3BlcnR5In1dfX0=")), "destinationPortRange") unless @destination_port_range.nil?
  @protocol = protocol
  Jsii::Type.check_type(@protocol, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "protocol") unless @protocol.nil?
  @source_port_range = source_port_range.is_a?(Hash) ? ::AWSCDK::EC2::CfnTrafficMirrorFilterRule::TrafficMirrorPortRangeProperty.new(**source_port_range.transform_keys(&:to_sym)) : source_port_range
  Jsii::Type.check_type(@source_port_range, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lYzIuQ2ZuVHJhZmZpY01pcnJvckZpbHRlclJ1bGUuVHJhZmZpY01pcnJvclBvcnRSYW5nZVByb3BlcnR5In1dfX0=")), "sourcePortRange") unless @source_port_range.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

#descriptionString? (readonly)

The description of the Traffic Mirror rule.



81
82
83
# File 'ec2/cfn_traffic_mirror_filter_rule_props.rb', line 81

def description
  @description
end

#destination_cidr_blockString (readonly)

The destination CIDR block to assign to the Traffic Mirror rule.



49
50
51
# File 'ec2/cfn_traffic_mirror_filter_rule_props.rb', line 49

def destination_cidr_block
  @destination_cidr_block
end

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

The destination port range.



86
87
88
# File 'ec2/cfn_traffic_mirror_filter_rule_props.rb', line 86

def destination_port_range
  @destination_port_range
end

#protocolNumeric? (readonly)

The protocol, for example UDP, to assign to the Traffic Mirror rule.

For information about the protocol value, see Protocol Numbers on the Internet Assigned Numbers Authority (IANA) website.



93
94
95
# File 'ec2/cfn_traffic_mirror_filter_rule_props.rb', line 93

def protocol
  @protocol
end

#rule_actionString (readonly)

The action to take on the filtered traffic.



54
55
56
# File 'ec2/cfn_traffic_mirror_filter_rule_props.rb', line 54

def rule_action
  @rule_action
end

#rule_numberNumeric (readonly)

The number of the Traffic Mirror rule.

This number must be unique for each Traffic Mirror rule in a given direction. The rules are processed in ascending order by rule number.



61
62
63
# File 'ec2/cfn_traffic_mirror_filter_rule_props.rb', line 61

def rule_number
  @rule_number
end

#source_cidr_blockString (readonly)

The source CIDR block to assign to the Traffic Mirror rule.



66
67
68
# File 'ec2/cfn_traffic_mirror_filter_rule_props.rb', line 66

def source_cidr_block
  @source_cidr_block
end

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

The source port range.



98
99
100
# File 'ec2/cfn_traffic_mirror_filter_rule_props.rb', line 98

def source_port_range
  @source_port_range
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

Tags on Traffic Mirroring filter rules.



103
104
105
# File 'ec2/cfn_traffic_mirror_filter_rule_props.rb', line 103

def tags
  @tags
end

#traffic_directionString (readonly)

The type of traffic.



71
72
73
# File 'ec2/cfn_traffic_mirror_filter_rule_props.rb', line 71

def traffic_direction
  @traffic_direction
end

#traffic_mirror_filter_idString (readonly)

The ID of the filter that this rule is associated with.



76
77
78
# File 'ec2/cfn_traffic_mirror_filter_rule_props.rb', line 76

def traffic_mirror_filter_id
  @traffic_mirror_filter_id
end

Class Method Details

.jsii_propertiesObject



105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
# File 'ec2/cfn_traffic_mirror_filter_rule_props.rb', line 105

def self.jsii_properties
  {
    :destination_cidr_block => "destinationCidrBlock",
    :rule_action => "ruleAction",
    :rule_number => "ruleNumber",
    :source_cidr_block => "sourceCidrBlock",
    :traffic_direction => "trafficDirection",
    :traffic_mirror_filter_id => "trafficMirrorFilterId",
    :description => "description",
    :destination_port_range => "destinationPortRange",
    :protocol => "protocol",
    :source_port_range => "sourcePortRange",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'ec2/cfn_traffic_mirror_filter_rule_props.rb', line 121

def to_jsii
  result = {}
  result.merge!({
    "destinationCidrBlock" => @destination_cidr_block,
    "ruleAction" => @rule_action,
    "ruleNumber" => @rule_number,
    "sourceCidrBlock" => @source_cidr_block,
    "trafficDirection" => @traffic_direction,
    "trafficMirrorFilterId" => @traffic_mirror_filter_id,
    "description" => @description,
    "destinationPortRange" => @destination_port_range,
    "protocol" => @protocol,
    "sourcePortRange" => @source_port_range,
    "tags" => @tags,
  })
  result.compact
end