Class: Aws::NetworkFirewall::Types::FirewallPolicy

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-networkfirewall/lib/aws-sdk-networkfirewall/types.rb

Overview

Note:

When making an API call, you may pass FirewallPolicy data as a hash:

{
  stateless_rule_group_references: [
    {
      resource_arn: "ResourceArn", # required
      priority: 1, # required
    },
  ],
  stateless_default_actions: ["CollectionMember_String"], # required
  stateless_fragment_default_actions: ["CollectionMember_String"], # required
  stateless_custom_actions: [
    {
      action_name: "ActionName", # required
      action_definition: { # required
        publish_metric_action: {
          dimensions: [ # required
            {
              value: "DimensionValue", # required
            },
          ],
        },
      },
    },
  ],
  stateful_rule_group_references: [
    {
      resource_arn: "ResourceArn", # required
      priority: 1,
    },
  ],
  stateful_default_actions: ["CollectionMember_String"],
  stateful_engine_options: {
    rule_order: "DEFAULT_ACTION_ORDER", # accepts DEFAULT_ACTION_ORDER, STRICT_ORDER
  },
}

The firewall policy defines the behavior of a firewall using a collection of stateless and stateful rule groups and other settings. You can use one firewall policy for multiple firewalls.

This, along with FirewallPolicyResponse, define the policy. You can retrieve all objects for a firewall policy by calling DescribeFirewallPolicy.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#stateful_default_actionsArray<String>

The default actions to take on a packet that doesn't match any stateful rules.

Returns:

  • (Array<String>)


1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
# File 'gems/aws-sdk-networkfirewall/lib/aws-sdk-networkfirewall/types.rb', line 1743

class FirewallPolicy < Struct.new(
  :stateless_rule_group_references,
  :stateless_default_actions,
  :stateless_fragment_default_actions,
  :stateless_custom_actions,
  :stateful_rule_group_references,
  :stateful_default_actions,
  :stateful_engine_options)
  SENSITIVE = []
  include Aws::Structure
end

#stateful_engine_optionsTypes::StatefulEngineOptions

Additional options governing how Network Firewall handles stateful rules. The stateful rule groups that you use in your policy must have stateful rule options settings that are compatible with these settings.



1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
# File 'gems/aws-sdk-networkfirewall/lib/aws-sdk-networkfirewall/types.rb', line 1743

class FirewallPolicy < Struct.new(
  :stateless_rule_group_references,
  :stateless_default_actions,
  :stateless_fragment_default_actions,
  :stateless_custom_actions,
  :stateful_rule_group_references,
  :stateful_default_actions,
  :stateful_engine_options)
  SENSITIVE = []
  include Aws::Structure
end

#stateful_rule_group_referencesArray<Types::StatefulRuleGroupReference>

References to the stateful rule groups that are used in the policy. These define the inspection criteria in stateful rules.



1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
# File 'gems/aws-sdk-networkfirewall/lib/aws-sdk-networkfirewall/types.rb', line 1743

class FirewallPolicy < Struct.new(
  :stateless_rule_group_references,
  :stateless_default_actions,
  :stateless_fragment_default_actions,
  :stateless_custom_actions,
  :stateful_rule_group_references,
  :stateful_default_actions,
  :stateful_engine_options)
  SENSITIVE = []
  include Aws::Structure
end

#stateless_custom_actionsArray<Types::CustomAction>

The custom action definitions that are available for use in the firewall policy's StatelessDefaultActions setting. You name each custom action that you define, and then you can use it by name in your default actions specifications.

Returns:



1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
# File 'gems/aws-sdk-networkfirewall/lib/aws-sdk-networkfirewall/types.rb', line 1743

class FirewallPolicy < Struct.new(
  :stateless_rule_group_references,
  :stateless_default_actions,
  :stateless_fragment_default_actions,
  :stateless_custom_actions,
  :stateful_rule_group_references,
  :stateful_default_actions,
  :stateful_engine_options)
  SENSITIVE = []
  include Aws::Structure
end

#stateless_default_actionsArray<String>

The actions to take on a packet if it doesn't match any of the stateless rules in the policy. If you want non-matching packets to be forwarded for stateful inspection, specify aws:forward_to_sfe.

You must specify one of the standard actions: aws:pass, aws:drop, or aws:forward_to_sfe. In addition, you can specify custom actions that are compatible with your standard section choice.

For example, you could specify ["aws:pass"] or you could specify ["aws:pass", “customActionName”]. For information about compatibility, see the custom action descriptions under CustomAction.

Returns:

  • (Array<String>)


1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
# File 'gems/aws-sdk-networkfirewall/lib/aws-sdk-networkfirewall/types.rb', line 1743

class FirewallPolicy < Struct.new(
  :stateless_rule_group_references,
  :stateless_default_actions,
  :stateless_fragment_default_actions,
  :stateless_custom_actions,
  :stateful_rule_group_references,
  :stateful_default_actions,
  :stateful_engine_options)
  SENSITIVE = []
  include Aws::Structure
end

#stateless_fragment_default_actionsArray<String>

The actions to take on a fragmented UDP packet if it doesn't match any of the stateless rules in the policy. Network Firewall only manages UDP packet fragments and silently drops packet fragments for other protocols. If you want non-matching fragmented UDP packets to be forwarded for stateful inspection, specify aws:forward_to_sfe.

You must specify one of the standard actions: aws:pass, aws:drop, or aws:forward_to_sfe. In addition, you can specify custom actions that are compatible with your standard section choice.

For example, you could specify ["aws:pass"] or you could specify ["aws:pass", “customActionName”]. For information about compatibility, see the custom action descriptions under CustomAction.

Returns:

  • (Array<String>)


1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
# File 'gems/aws-sdk-networkfirewall/lib/aws-sdk-networkfirewall/types.rb', line 1743

class FirewallPolicy < Struct.new(
  :stateless_rule_group_references,
  :stateless_default_actions,
  :stateless_fragment_default_actions,
  :stateless_custom_actions,
  :stateful_rule_group_references,
  :stateful_default_actions,
  :stateful_engine_options)
  SENSITIVE = []
  include Aws::Structure
end

#stateless_rule_group_referencesArray<Types::StatelessRuleGroupReference>

References to the stateless rule groups that are used in the policy. These define the matching criteria in stateless rules.



1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
# File 'gems/aws-sdk-networkfirewall/lib/aws-sdk-networkfirewall/types.rb', line 1743

class FirewallPolicy < Struct.new(
  :stateless_rule_group_references,
  :stateless_default_actions,
  :stateless_fragment_default_actions,
  :stateless_custom_actions,
  :stateful_rule_group_references,
  :stateful_default_actions,
  :stateful_engine_options)
  SENSITIVE = []
  include Aws::Structure
end