Interface CfnRuleGroupProps

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
CfnRuleGroupProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:30:00.445Z") @Stability(Stable) public interface CfnRuleGroupProps extends software.amazon.jsii.JsiiSerializable
Properties for defining a CfnRuleGroup.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.networkfirewall.*;
 CfnRuleGroupProps cfnRuleGroupProps = CfnRuleGroupProps.builder()
         .capacity(123)
         .ruleGroupName("ruleGroupName")
         .type("type")
         // the properties below are optional
         .description("description")
         .ruleGroup(RuleGroupProperty.builder()
                 .rulesSource(RulesSourceProperty.builder()
                         .rulesSourceList(RulesSourceListProperty.builder()
                                 .generatedRulesType("generatedRulesType")
                                 .targets(List.of("targets"))
                                 .targetTypes(List.of("targetTypes"))
                                 .build())
                         .rulesString("rulesString")
                         .statefulRules(List.of(StatefulRuleProperty.builder()
                                 .action("action")
                                 .header(HeaderProperty.builder()
                                         .destination("destination")
                                         .destinationPort("destinationPort")
                                         .direction("direction")
                                         .protocol("protocol")
                                         .source("source")
                                         .sourcePort("sourcePort")
                                         .build())
                                 .ruleOptions(List.of(RuleOptionProperty.builder()
                                         .keyword("keyword")
                                         // the properties below are optional
                                         .settings(List.of("settings"))
                                         .build()))
                                 .build()))
                         .statelessRulesAndCustomActions(StatelessRulesAndCustomActionsProperty.builder()
                                 .statelessRules(List.of(StatelessRuleProperty.builder()
                                         .priority(123)
                                         .ruleDefinition(RuleDefinitionProperty.builder()
                                                 .actions(List.of("actions"))
                                                 .matchAttributes(MatchAttributesProperty.builder()
                                                         .destinationPorts(List.of(PortRangeProperty.builder()
                                                                 .fromPort(123)
                                                                 .toPort(123)
                                                                 .build()))
                                                         .destinations(List.of(AddressProperty.builder()
                                                                 .addressDefinition("addressDefinition")
                                                                 .build()))
                                                         .protocols(List.of(123))
                                                         .sourcePorts(List.of(PortRangeProperty.builder()
                                                                 .fromPort(123)
                                                                 .toPort(123)
                                                                 .build()))
                                                         .sources(List.of(AddressProperty.builder()
                                                                 .addressDefinition("addressDefinition")
                                                                 .build()))
                                                         .tcpFlags(List.of(TCPFlagFieldProperty.builder()
                                                                 .flags(List.of("flags"))
                                                                 // the properties below are optional
                                                                 .masks(List.of("masks"))
                                                                 .build()))
                                                         .build())
                                                 .build())
                                         .build()))
                                 // the properties below are optional
                                 .customActions(List.of(CustomActionProperty.builder()
                                         .actionDefinition(ActionDefinitionProperty.builder()
                                                 .publishMetricAction(PublishMetricActionProperty.builder()
                                                         .dimensions(List.of(DimensionProperty.builder()
                                                                 .value("value")
                                                                 .build()))
                                                         .build())
                                                 .build())
                                         .actionName("actionName")
                                         .build()))
                                 .build())
                         .build())
                 // the properties below are optional
                 .referenceSets(ReferenceSetsProperty.builder()
                         .ipSetReferences(Map.of(
                                 "ipSetReferencesKey", Map.of(
                                         "referenceArn", "referenceArn")))
                         .build())
                 .ruleVariables(RuleVariablesProperty.builder()
                         .ipSets(Map.of(
                                 "ipSetsKey", Map.of(
                                         "definition", List.of("definition"))))
                         .portSets(Map.of(
                                 "portSetsKey", PortSetProperty.builder()
                                         .definition(List.of("definition"))
                                         .build()))
                         .build())
                 .statefulRuleOptions(StatefulRuleOptionsProperty.builder()
                         .ruleOrder("ruleOrder")
                         .build())
                 .build())
         .tags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .build();
 
  • Method Details

    • getCapacity

      @Stability(Stable) @NotNull Number getCapacity()
      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.

    • getRuleGroupName

      @Stability(Stable) @NotNull String getRuleGroupName()
      The descriptive name of the rule group.

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

    • getType

      @Stability(Stable) @NotNull String getType()
      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.

    • getDescription

      @Stability(Stable) @Nullable default String getDescription()
      A description of the rule group.
    • getRuleGroup

      @Stability(Stable) @Nullable default Object getRuleGroup()
      An object that defines the rule group rules.
    • getTags

      @Stability(Stable) @Nullable default List<CfnTag> getTags()
      An array of key-value pairs to apply to this resource.

      For more information, see Tag .

    • builder

      @Stability(Stable) static CfnRuleGroupProps.Builder builder()
      Returns:
      a CfnRuleGroupProps.Builder of CfnRuleGroupProps