Class HeaderValidatorConfig.UriPathNormalizationOptions
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite
-
- com.google.protobuf.AbstractMessage
-
- com.google.protobuf.GeneratedMessageV3
-
- io.envoyproxy.envoy.extensions.http.header_validators.envoy_default.v3.HeaderValidatorConfig.UriPathNormalizationOptions
-
- All Implemented Interfaces:
com.google.protobuf.Message,com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,HeaderValidatorConfig.UriPathNormalizationOptionsOrBuilder,Serializable
- Enclosing class:
- HeaderValidatorConfig
public static final class HeaderValidatorConfig.UriPathNormalizationOptions extends com.google.protobuf.GeneratedMessageV3 implements HeaderValidatorConfig.UriPathNormalizationOptionsOrBuilder
Protobuf typeenvoy.extensions.http.header_validators.envoy_default.v3.HeaderValidatorConfig.UriPathNormalizationOptions- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classHeaderValidatorConfig.UriPathNormalizationOptions.BuilderProtobuf typeenvoy.extensions.http.header_validators.envoy_default.v3.HeaderValidatorConfig.UriPathNormalizationOptionsstatic classHeaderValidatorConfig.UriPathNormalizationOptions.PathWithEscapedSlashesActionDetermines the action for requests that contain ``%2F``, ``%2f``, ``%5C`` or ``%5c`` sequences in the URI path.-
Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3
com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage,BuilderType extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType,BuilderType>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter
-
-
Field Summary
Fields Modifier and Type Field Description static intPATH_WITH_ESCAPED_SLASHES_ACTION_FIELD_NUMBERstatic intSKIP_MERGING_SLASHES_FIELD_NUMBERstatic intSKIP_PATH_NORMALIZATION_FIELD_NUMBER
-
Method Summary
-
Methods inherited from class com.google.protobuf.GeneratedMessageV3
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, hasField, hasOneof, internalGetMapField, isStringEmpty, makeExtensionsImmutable, mergeFromAndMakeImmutableInternal, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBooleanList, newBuilderForType, newDoubleList, newFloatList, newIntList, newLongList, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag
-
Methods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite
addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
-
-
-
Field Detail
-
SKIP_PATH_NORMALIZATION_FIELD_NUMBER
public static final int SKIP_PATH_NORMALIZATION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
SKIP_MERGING_SLASHES_FIELD_NUMBER
public static final int SKIP_MERGING_SLASHES_FIELD_NUMBER
- See Also:
- Constant Field Values
-
PATH_WITH_ESCAPED_SLASHES_ACTION_FIELD_NUMBER
public static final int PATH_WITH_ESCAPED_SLASHES_ACTION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
-
Method Detail
-
newInstance
protected Object newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
- Overrides:
newInstancein classcom.google.protobuf.GeneratedMessageV3
-
getUnknownFields
public final com.google.protobuf.UnknownFieldSet getUnknownFields()
- Specified by:
getUnknownFieldsin interfacecom.google.protobuf.MessageOrBuilder- Overrides:
getUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessageV3
-
getSkipPathNormalization
public boolean getSkipPathNormalization()
Should paths be normalized according to RFC 3986? This operation overwrites the original request URI path and the new path is used for processing of the request by HTTP filters and proxied to the upstream service. Envoy will respond with 400 to requests with malformed paths that fail path normalization. The default behavior is to normalize the path. This value may be overridden by the runtime variable :ref:`http_connection_manager.normalize_path<config_http_conn_man_runtime_normalize_path>`. See `Normalization and Comparison <https://datatracker.ietf.org/doc/html/rfc3986#section-6>`_ for details of normalization. Note that Envoy does not perform `case normalization <https://datatracker.ietf.org/doc/html/rfc3986#section-6.2.2.1>`_ URI path normalization can be applied to a portion of requests by setting the ``envoy_default_header_validator.path_normalization`` runtime value.
bool skip_path_normalization = 1;- Specified by:
getSkipPathNormalizationin interfaceHeaderValidatorConfig.UriPathNormalizationOptionsOrBuilder- Returns:
- The skipPathNormalization.
-
getSkipMergingSlashes
public boolean getSkipMergingSlashes()
Determines if adjacent slashes in the path are merged into one. This operation overwrites the original request URI path and the new path is used for processing of the request by HTTP filters and proxied to the upstream service. Setting this option to true will cause incoming requests with path ``//dir///file`` to not match against route with ``prefix`` match set to ``/dir``. Defaults to ``false``. Note that slash merging is not part of `HTTP spec <https://datatracker.ietf.org/doc/html/rfc3986>`_ and is provided for convenience. Merging of slashes in URI path can be applied to a portion of requests by setting the ``envoy_default_header_validator.merge_slashes`` runtime value.
bool skip_merging_slashes = 2;- Specified by:
getSkipMergingSlashesin interfaceHeaderValidatorConfig.UriPathNormalizationOptionsOrBuilder- Returns:
- The skipMergingSlashes.
-
getPathWithEscapedSlashesActionValue
public int getPathWithEscapedSlashesActionValue()
The action to take when request URL path contains escaped slash sequences (``%2F``, ``%2f``, ``%5C`` and ``%5c``). This operation may overwrite the original request URI path and the new path is used for processing of the request by HTTP filters and proxied to the upstream service.
.envoy.extensions.http.header_validators.envoy_default.v3.HeaderValidatorConfig.UriPathNormalizationOptions.PathWithEscapedSlashesAction path_with_escaped_slashes_action = 3;- Specified by:
getPathWithEscapedSlashesActionValuein interfaceHeaderValidatorConfig.UriPathNormalizationOptionsOrBuilder- Returns:
- The enum numeric value on the wire for pathWithEscapedSlashesAction.
-
getPathWithEscapedSlashesAction
public HeaderValidatorConfig.UriPathNormalizationOptions.PathWithEscapedSlashesAction getPathWithEscapedSlashesAction()
The action to take when request URL path contains escaped slash sequences (``%2F``, ``%2f``, ``%5C`` and ``%5c``). This operation may overwrite the original request URI path and the new path is used for processing of the request by HTTP filters and proxied to the upstream service.
.envoy.extensions.http.header_validators.envoy_default.v3.HeaderValidatorConfig.UriPathNormalizationOptions.PathWithEscapedSlashesAction path_with_escaped_slashes_action = 3;- Specified by:
getPathWithEscapedSlashesActionin interfaceHeaderValidatorConfig.UriPathNormalizationOptionsOrBuilder- Returns:
- The pathWithEscapedSlashesAction.
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessageV3
-
writeTo
public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException- Specified by:
writeToin interfacecom.google.protobuf.MessageLite- Overrides:
writeToin classcom.google.protobuf.GeneratedMessageV3- Throws:
IOException
-
getSerializedSize
public int getSerializedSize()
- Specified by:
getSerializedSizein interfacecom.google.protobuf.MessageLite- Overrides:
getSerializedSizein classcom.google.protobuf.GeneratedMessageV3
-
equals
public boolean equals(Object obj)
- Specified by:
equalsin interfacecom.google.protobuf.Message- Overrides:
equalsin classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfacecom.google.protobuf.Message- Overrides:
hashCodein classcom.google.protobuf.AbstractMessage
-
parseFrom
public static HeaderValidatorConfig.UriPathNormalizationOptions parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static HeaderValidatorConfig.UriPathNormalizationOptions parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static HeaderValidatorConfig.UriPathNormalizationOptions parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static HeaderValidatorConfig.UriPathNormalizationOptions parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static HeaderValidatorConfig.UriPathNormalizationOptions parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static HeaderValidatorConfig.UriPathNormalizationOptions parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static HeaderValidatorConfig.UriPathNormalizationOptions parseFrom(InputStream input) throws IOException
- Throws:
IOException
-
parseFrom
public static HeaderValidatorConfig.UriPathNormalizationOptions parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
parseDelimitedFrom
public static HeaderValidatorConfig.UriPathNormalizationOptions parseDelimitedFrom(InputStream input) throws IOException
- Throws:
IOException
-
parseDelimitedFrom
public static HeaderValidatorConfig.UriPathNormalizationOptions parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
parseFrom
public static HeaderValidatorConfig.UriPathNormalizationOptions parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
- Throws:
IOException
-
parseFrom
public static HeaderValidatorConfig.UriPathNormalizationOptions parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
newBuilderForType
public HeaderValidatorConfig.UriPathNormalizationOptions.Builder newBuilderForType()
- Specified by:
newBuilderForTypein interfacecom.google.protobuf.Message- Specified by:
newBuilderForTypein interfacecom.google.protobuf.MessageLite
-
newBuilder
public static HeaderValidatorConfig.UriPathNormalizationOptions.Builder newBuilder()
-
newBuilder
public static HeaderValidatorConfig.UriPathNormalizationOptions.Builder newBuilder(HeaderValidatorConfig.UriPathNormalizationOptions prototype)
-
toBuilder
public HeaderValidatorConfig.UriPathNormalizationOptions.Builder toBuilder()
- Specified by:
toBuilderin interfacecom.google.protobuf.Message- Specified by:
toBuilderin interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected HeaderValidatorConfig.UriPathNormalizationOptions.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
- Specified by:
newBuilderForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstance
public static HeaderValidatorConfig.UriPathNormalizationOptions getDefaultInstance()
-
parser
public static com.google.protobuf.Parser<HeaderValidatorConfig.UriPathNormalizationOptions> parser()
-
getParserForType
public com.google.protobuf.Parser<HeaderValidatorConfig.UriPathNormalizationOptions> getParserForType()
- Specified by:
getParserForTypein interfacecom.google.protobuf.Message- Specified by:
getParserForTypein interfacecom.google.protobuf.MessageLite- Overrides:
getParserForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstanceForType
public HeaderValidatorConfig.UriPathNormalizationOptions getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
-