Class: AWSCDK::NetworkFirewall::CfnRuleGroupProps

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

Overview

Properties for defining a CfnRuleGroup.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(capacity:, rule_group_name:, type:, description: nil, rule_group: nil, summary_configuration: nil, tags: nil) ⇒ CfnRuleGroupProps

Returns a new instance of CfnRuleGroupProps.

Parameters:

  • capacity (Numeric)

    The maximum operating resources that this rule group can use.

  • rule_group_name (String)

    The descriptive name of the rule group.

  • type (String)

    Indicates whether the rule group is stateless or stateful.

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

    A description of the rule group.

  • rule_group (AWSCDK::IResolvable, AWSCDK::NetworkFirewall::CfnRuleGroup::RuleGroupProperty, nil) (defaults to: nil)

    An object that defines the rule group rules.

  • summary_configuration (AWSCDK::IResolvable, AWSCDK::NetworkFirewall::CfnRuleGroup::SummaryConfigurationProperty, nil) (defaults to: nil)

    A complex type containing the currently selected rule option fields that will be displayed for rule summarization returned by DescribeRuleGroupSummary .

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

    An array of key-value pairs to apply to this resource.



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'network_firewall/cfn_rule_group_props.rb', line 16

def initialize(capacity:, rule_group_name:, type:, description: nil, rule_group: nil, summary_configuration: nil, tags: nil)
  @capacity = capacity
  Jsii::Type.check_type(@capacity, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "capacity")
  @rule_group_name = rule_group_name
  Jsii::Type.check_type(@rule_group_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "ruleGroupName")
  @type = type
  Jsii::Type.check_type(@type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type")
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @rule_group = rule_group.is_a?(Hash) ? ::AWSCDK::NetworkFirewall::CfnRuleGroup::RuleGroupProperty.new(**rule_group.transform_keys(&:to_sym)) : rule_group
  Jsii::Type.check_type(@rule_group, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19uZXR3b3JrZmlyZXdhbGwuQ2ZuUnVsZUdyb3VwLlJ1bGVHcm91cFByb3BlcnR5In1dfX0=")), "ruleGroup") unless @rule_group.nil?
  @summary_configuration = summary_configuration.is_a?(Hash) ? ::AWSCDK::NetworkFirewall::CfnRuleGroup::SummaryConfigurationProperty.new(**summary_configuration.transform_keys(&:to_sym)) : summary_configuration
  Jsii::Type.check_type(@summary_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19uZXR3b3JrZmlyZXdhbGwuQ2ZuUnVsZUdyb3VwLlN1bW1hcnlDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "summaryConfiguration") unless @summary_configuration.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

#capacityNumeric (readonly)

The maximum operating resources that this rule group can use.

You can't change a rule group's capacity setting after you create the rule group. When you update a rule group, you are limited to this capacity. When you reference a rule group from a firewall policy, Network Firewall reserves this capacity for the rule group.



39
40
41
# File 'network_firewall/cfn_rule_group_props.rb', line 39

def capacity
  @capacity
end

#descriptionString? (readonly)

A description of the rule group.



59
60
61
# File 'network_firewall/cfn_rule_group_props.rb', line 59

def description
  @description
end

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

An object that defines the rule group rules.



64
65
66
# File 'network_firewall/cfn_rule_group_props.rb', line 64

def rule_group
  @rule_group
end

#rule_group_nameString (readonly)

The descriptive name of the rule group.

You can't change the name of a rule group after you create it.



46
47
48
# File 'network_firewall/cfn_rule_group_props.rb', line 46

def rule_group_name
  @rule_group_name
end

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

A complex type containing the currently selected rule option fields that will be displayed for rule summarization returned by DescribeRuleGroupSummary .

  • The RuleOptions specified in SummaryConfiguration
  • Rule metadata organization preferences


72
73
74
# File 'network_firewall/cfn_rule_group_props.rb', line 72

def summary_configuration
  @summary_configuration
end

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

An array of key-value pairs to apply to this resource.

For more information, see Tag .



79
80
81
# File 'network_firewall/cfn_rule_group_props.rb', line 79

def tags
  @tags
end

#typeString (readonly)

Indicates whether the rule group is stateless or stateful.

If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules.



54
55
56
# File 'network_firewall/cfn_rule_group_props.rb', line 54

def type
  @type
end

Class Method Details

.jsii_propertiesObject



81
82
83
84
85
86
87
88
89
90
91
# File 'network_firewall/cfn_rule_group_props.rb', line 81

def self.jsii_properties
  {
    :capacity => "capacity",
    :rule_group_name => "ruleGroupName",
    :type => "type",
    :description => "description",
    :rule_group => "ruleGroup",
    :summary_configuration => "summaryConfiguration",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



93
94
95
96
97
98
99
100
101
102
103
104
105
# File 'network_firewall/cfn_rule_group_props.rb', line 93

def to_jsii
  result = {}
  result.merge!({
    "capacity" => @capacity,
    "ruleGroupName" => @rule_group_name,
    "type" => @type,
    "description" => @description,
    "ruleGroup" => @rule_group,
    "summaryConfiguration" => @summary_configuration,
    "tags" => @tags,
  })
  result.compact
end