Enum HeaderValidatorConfig.HeadersWithUnderscoresAction

  • All Implemented Interfaces:
    com.google.protobuf.Internal.EnumLite, com.google.protobuf.ProtocolMessageEnum, java.io.Serializable, java.lang.Comparable<HeaderValidatorConfig.HeadersWithUnderscoresAction>
    Enclosing class:
    HeaderValidatorConfig

    public static enum HeaderValidatorConfig.HeadersWithUnderscoresAction
    extends java.lang.Enum<HeaderValidatorConfig.HeadersWithUnderscoresAction>
    implements com.google.protobuf.ProtocolMessageEnum
     Action to take when Envoy receives client request with header names containing underscore
     characters.
     Underscore character is allowed in header names by the RFC-7230 and this behavior is implemented
     as a security measure due to systems that treat '_' and '-' as interchangeable. Envoy by default allows client request headers with underscore
     characters.
     
    Protobuf enum envoy.extensions.http.header_validators.envoy_default.v3.HeaderValidatorConfig.HeadersWithUnderscoresAction
    • Enum Constant Detail

      • REJECT_REQUEST

        public static final HeaderValidatorConfig.HeadersWithUnderscoresAction REJECT_REQUEST
         Reject client request. HTTP/1 requests are rejected with the 400 status. HTTP/2 requests
         end with the stream reset. The
         :ref:`httpN.requests_rejected_with_underscores_in_headers <config_http_conn_man_stats_per_codec>` counter
         is incremented for each rejected request.
         
        REJECT_REQUEST = 1;
      • DROP_HEADER

        public static final HeaderValidatorConfig.HeadersWithUnderscoresAction DROP_HEADER
         Drop the client header with name containing underscores. The header is dropped before the filter chain is
         invoked and as such filters will not see dropped headers. The
         :ref:`httpN.dropped_headers_with_underscores <config_http_conn_man_stats_per_codec>` is incremented for
         each dropped header.
         
        DROP_HEADER = 2;
    • Field Detail

      • ALLOW_VALUE

        public static final int ALLOW_VALUE
         Allow headers with underscores. This is the default behavior.
         
        ALLOW = 0;
        See Also:
        Constant Field Values
      • REJECT_REQUEST_VALUE

        public static final int REJECT_REQUEST_VALUE
         Reject client request. HTTP/1 requests are rejected with the 400 status. HTTP/2 requests
         end with the stream reset. The
         :ref:`httpN.requests_rejected_with_underscores_in_headers <config_http_conn_man_stats_per_codec>` counter
         is incremented for each rejected request.
         
        REJECT_REQUEST = 1;
        See Also:
        Constant Field Values
      • DROP_HEADER_VALUE

        public static final int DROP_HEADER_VALUE
         Drop the client header with name containing underscores. The header is dropped before the filter chain is
         invoked and as such filters will not see dropped headers. The
         :ref:`httpN.dropped_headers_with_underscores <config_http_conn_man_stats_per_codec>` is incremented for
         each dropped header.
         
        DROP_HEADER = 2;
        See Also:
        Constant Field Values
    • Method Detail

      • values

        public static HeaderValidatorConfig.HeadersWithUnderscoresAction[] values()
        Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
        for (HeaderValidatorConfig.HeadersWithUnderscoresAction c : HeaderValidatorConfig.HeadersWithUnderscoresAction.values())
            System.out.println(c);
        
        Returns:
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static HeaderValidatorConfig.HeadersWithUnderscoresAction valueOf​(java.lang.String name)
        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
        Parameters:
        name - the name of the enum constant to be returned.
        Returns:
        the enum constant with the specified name
        Throws:
        java.lang.IllegalArgumentException - if this enum type has no constant with the specified name
        java.lang.NullPointerException - if the argument is null
      • getNumber

        public final int getNumber()
        Specified by:
        getNumber in interface com.google.protobuf.Internal.EnumLite
        Specified by:
        getNumber in interface com.google.protobuf.ProtocolMessageEnum
      • valueOf

        @Deprecated
        public static HeaderValidatorConfig.HeadersWithUnderscoresAction valueOf​(int value)
        Deprecated.
        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
        Parameters:
        value - the name of the enum constant to be returned.
        Returns:
        the enum constant with the specified name
        Throws:
        java.lang.IllegalArgumentException - if this enum type has no constant with the specified name
        java.lang.NullPointerException - if the argument is null
      • getValueDescriptor

        public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor()
        Specified by:
        getValueDescriptor in interface com.google.protobuf.ProtocolMessageEnum
      • getDescriptorForType

        public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType()
        Specified by:
        getDescriptorForType in interface com.google.protobuf.ProtocolMessageEnum
      • getDescriptor

        public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor()
      • valueOf

        public static HeaderValidatorConfig.HeadersWithUnderscoresAction valueOf​(com.google.protobuf.Descriptors.EnumValueDescriptor desc)
        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
        Parameters:
        desc - the name of the enum constant to be returned.
        Returns:
        the enum constant with the specified name
        Throws:
        java.lang.IllegalArgumentException - if this enum type has no constant with the specified name
        java.lang.NullPointerException - if the argument is null