Class Header

java.lang.Object
software.amazon.awssdk.services.networkfirewall.model.Header
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<Header.Builder,Header>

@Generated("software.amazon.awssdk:codegen") public final class Header extends Object implements SdkPojo, Serializable, ToCopyableBuilder<Header.Builder,Header>

The basic rule criteria for Network Firewall to use to inspect packet headers in stateful traffic flow inspection. Traffic flows that match the criteria are a match for the corresponding StatefulRule.

See Also:
  • Method Details

    • protocol

      public final StatefulRuleProtocol protocol()

      The protocol to inspect for. To specify all, you can use IP, because all traffic on Amazon Web Services and on the internet is IP.

      If the service returns an enum value that is not available in the current SDK version, protocol will return StatefulRuleProtocol.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from protocolAsString().

      Returns:
      The protocol to inspect for. To specify all, you can use IP, because all traffic on Amazon Web Services and on the internet is IP.
      See Also:
    • protocolAsString

      public final String protocolAsString()

      The protocol to inspect for. To specify all, you can use IP, because all traffic on Amazon Web Services and on the internet is IP.

      If the service returns an enum value that is not available in the current SDK version, protocol will return StatefulRuleProtocol.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from protocolAsString().

      Returns:
      The protocol to inspect for. To specify all, you can use IP, because all traffic on Amazon Web Services and on the internet is IP.
      See Also:
    • source

      public final String source()

      The source IP address or address range to inspect for, in CIDR notation. To match with any address, specify ANY.

      Specify an IP address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. Network Firewall supports all address ranges for IPv4 and IPv6.

      Examples:

      • To configure Network Firewall to inspect for the IP address 192.0.2.44, specify 192.0.2.44/32.

      • To configure Network Firewall to inspect for IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24.

      • To configure Network Firewall to inspect for the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128.

      • To configure Network Firewall to inspect for IP addresses from 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64.

      For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

      Returns:
      The source IP address or address range to inspect for, in CIDR notation. To match with any address, specify ANY.

      Specify an IP address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. Network Firewall supports all address ranges for IPv4 and IPv6.

      Examples:

      • To configure Network Firewall to inspect for the IP address 192.0.2.44, specify 192.0.2.44/32.

      • To configure Network Firewall to inspect for IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24.

      • To configure Network Firewall to inspect for the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128.

      • To configure Network Firewall to inspect for IP addresses from 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64.

      For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

    • sourcePort

      public final String sourcePort()

      The source port to inspect for. You can specify an individual port, for example 1994 and you can specify a port range, for example 1990:1994. To match with any port, specify ANY.

      Returns:
      The source port to inspect for. You can specify an individual port, for example 1994 and you can specify a port range, for example 1990:1994. To match with any port, specify ANY.
    • direction

      public final StatefulRuleDirection direction()

      The direction of traffic flow to inspect. If set to ANY, the inspection matches bidirectional traffic, both from the source to the destination and from the destination to the source. If set to FORWARD, the inspection only matches traffic going from the source to the destination.

      If the service returns an enum value that is not available in the current SDK version, direction will return StatefulRuleDirection.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from directionAsString().

      Returns:
      The direction of traffic flow to inspect. If set to ANY, the inspection matches bidirectional traffic, both from the source to the destination and from the destination to the source. If set to FORWARD, the inspection only matches traffic going from the source to the destination.
      See Also:
    • directionAsString

      public final String directionAsString()

      The direction of traffic flow to inspect. If set to ANY, the inspection matches bidirectional traffic, both from the source to the destination and from the destination to the source. If set to FORWARD, the inspection only matches traffic going from the source to the destination.

      If the service returns an enum value that is not available in the current SDK version, direction will return StatefulRuleDirection.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from directionAsString().

      Returns:
      The direction of traffic flow to inspect. If set to ANY, the inspection matches bidirectional traffic, both from the source to the destination and from the destination to the source. If set to FORWARD, the inspection only matches traffic going from the source to the destination.
      See Also:
    • destination

      public final String destination()

      The destination IP address or address range to inspect for, in CIDR notation. To match with any address, specify ANY.

      Specify an IP address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. Network Firewall supports all address ranges for IPv4 and IPv6.

      Examples:

      • To configure Network Firewall to inspect for the IP address 192.0.2.44, specify 192.0.2.44/32.

      • To configure Network Firewall to inspect for IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24.

      • To configure Network Firewall to inspect for the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128.

      • To configure Network Firewall to inspect for IP addresses from 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64.

      For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

      Returns:
      The destination IP address or address range to inspect for, in CIDR notation. To match with any address, specify ANY.

      Specify an IP address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. Network Firewall supports all address ranges for IPv4 and IPv6.

      Examples:

      • To configure Network Firewall to inspect for the IP address 192.0.2.44, specify 192.0.2.44/32.

      • To configure Network Firewall to inspect for IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24.

      • To configure Network Firewall to inspect for the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128.

      • To configure Network Firewall to inspect for IP addresses from 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify 1111:0000:0000:0000:0000:0000:0000:0000/64.

      For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.

    • destinationPort

      public final String destinationPort()

      The destination port to inspect for. You can specify an individual port, for example 1994 and you can specify a port range, for example 1990:1994. To match with any port, specify ANY.

      Returns:
      The destination port to inspect for. You can specify an individual port, for example 1994 and you can specify a port range, for example 1990:1994. To match with any port, specify ANY.
    • toBuilder

      public Header.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<Header.Builder,Header>
      Returns:
      a builder for type T
    • builder

      public static Header.Builder builder()
    • serializableBuilderClass

      public static Class<? extends Header.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.