Documentation ¶
Index ¶
- Variables
- type GrpcService
- func (m *GrpcService) Clone() proto.Message
- func (*GrpcService) Descriptor() ([]byte, []int)deprecated
- func (m *GrpcService) Equal(that interface{}) bool
- func (x *GrpcService) GetAuthority() *wrapperspb.StringValue
- func (x *GrpcService) GetExtProcServerRef() *core.ResourceRef
- func (x *GrpcService) GetInitialMetadata() []*v32.HeaderValue
- func (x *GrpcService) GetRetryPolicy() *v32.RetryPolicy
- func (x *GrpcService) GetTimeout() *durationpb.Duration
- func (m *GrpcService) Hash(hasher hash.Hash64) (uint64, error)deprecated
- func (m *GrpcService) HashUnique(hasher hash.Hash64) (uint64, error)
- func (*GrpcService) ProtoMessage()
- func (x *GrpcService) ProtoReflect() protoreflect.Message
- func (x *GrpcService) Reset()
- func (x *GrpcService) String() string
- type HeaderForwardingRules
- func (m *HeaderForwardingRules) Clone() proto.Message
- func (*HeaderForwardingRules) Descriptor() ([]byte, []int)deprecated
- func (m *HeaderForwardingRules) Equal(that interface{}) bool
- func (x *HeaderForwardingRules) GetAllowedHeaders() *v33.ListStringMatcher
- func (x *HeaderForwardingRules) GetDisallowedHeaders() *v33.ListStringMatcher
- func (m *HeaderForwardingRules) Hash(hasher hash.Hash64) (uint64, error)deprecated
- func (m *HeaderForwardingRules) HashUnique(hasher hash.Hash64) (uint64, error)
- func (*HeaderForwardingRules) ProtoMessage()
- func (x *HeaderForwardingRules) ProtoReflect() protoreflect.Message
- func (x *HeaderForwardingRules) Reset()
- func (x *HeaderForwardingRules) String() string
- type Overrides
- func (m *Overrides) Clone() proto.Message
- func (*Overrides) Descriptor() ([]byte, []int)deprecated
- func (m *Overrides) Equal(that interface{}) bool
- func (x *Overrides) GetAsyncMode() *wrapperspb.BoolValue
- func (x *Overrides) GetGrpcService() *GrpcService
- func (x *Overrides) GetMetadataContextNamespaces() []string
- func (x *Overrides) GetProcessingMode() *v3.ProcessingMode
- func (x *Overrides) GetRequestAttributes() []string
- func (x *Overrides) GetResponseAttributes() []string
- func (x *Overrides) GetTypedMetadataContextNamespaces() []string
- func (m *Overrides) Hash(hasher hash.Hash64) (uint64, error)deprecated
- func (m *Overrides) HashUnique(hasher hash.Hash64) (uint64, error)
- func (*Overrides) ProtoMessage()
- func (x *Overrides) ProtoReflect() protoreflect.Message
- func (x *Overrides) Reset()
- func (x *Overrides) String() string
- type RouteSettings
- func (m *RouteSettings) Clone() proto.Message
- func (*RouteSettings) Descriptor() ([]byte, []int)deprecated
- func (m *RouteSettings) Equal(that interface{}) bool
- func (x *RouteSettings) GetDisabled() *wrapperspb.BoolValue
- func (m *RouteSettings) GetOverride() isRouteSettings_Override
- func (x *RouteSettings) GetOverrides() *Overrides
- func (m *RouteSettings) Hash(hasher hash.Hash64) (uint64, error)deprecated
- func (m *RouteSettings) HashUnique(hasher hash.Hash64) (uint64, error)
- func (*RouteSettings) ProtoMessage()
- func (x *RouteSettings) ProtoReflect() protoreflect.Message
- func (x *RouteSettings) Reset()
- func (x *RouteSettings) String() string
- type RouteSettings_Disabled
- type RouteSettings_Overrides
- type Settings
- func (m *Settings) Clone() proto.Message
- func (*Settings) Descriptor() ([]byte, []int)deprecated
- func (m *Settings) Equal(that interface{}) bool
- func (x *Settings) GetAllowModeOverride() *wrapperspb.BoolValue
- func (x *Settings) GetAsyncMode() *wrapperspb.BoolValue
- func (x *Settings) GetDisableClearRouteCache() *wrapperspb.BoolValue
- func (x *Settings) GetFailureModeAllow() *wrapperspb.BoolValue
- func (x *Settings) GetFilterMetadata() *structpb.Struct
- func (x *Settings) GetFilterStage() *filters.FilterStage
- func (x *Settings) GetForwardRules() *HeaderForwardingRules
- func (x *Settings) GetGrpcService() *GrpcService
- func (x *Settings) GetMaxMessageTimeout() *durationpb.Duration
- func (x *Settings) GetMessageTimeout() *durationpb.Duration
- func (x *Settings) GetMetadataContextNamespaces() []string
- func (x *Settings) GetMutationRules() *v31.HeaderMutationRules
- func (x *Settings) GetProcessingMode() *v3.ProcessingMode
- func (x *Settings) GetRequestAttributes() []string
- func (x *Settings) GetResponseAttributes() []string
- func (x *Settings) GetStatPrefix() *wrapperspb.StringValue
- func (x *Settings) GetTypedMetadataContextNamespaces() []string
- func (m *Settings) Hash(hasher hash.Hash64) (uint64, error)deprecated
- func (m *Settings) HashUnique(hasher hash.Hash64) (uint64, error)
- func (*Settings) ProtoMessage()
- func (x *Settings) ProtoReflect() protoreflect.Message
- func (x *Settings) Reset()
- func (x *Settings) String() string
Constants ¶
This section is empty.
Variables ¶
var File_github_com_solo_io_gloo_projects_gloo_api_v1_enterprise_options_extproc_extproc_proto protoreflect.FileDescriptor
Functions ¶
This section is empty.
Types ¶
type GrpcService ¶
type GrpcService struct { // A reference to the Upstream representing the external processor gRPC server. // See https://www.envoyproxy.io/docs/envoy/latest/api-v3/service/ext_proc/v3/external_processor.proto // for details. ExtProcServerRef *core.ResourceRef `protobuf:"bytes,1,opt,name=ext_proc_server_ref,json=extProcServerRef,proto3" json:"ext_proc_server_ref,omitempty"` // The `:authority` header in the grpc request. If this field is not set, the authority header value will be the // cluster name. // Note that this authority does not override the SNI. The SNI is provided by the transport socket of the cluster. Authority *wrapperspb.StringValue `protobuf:"bytes,2,opt,name=authority,proto3" json:"authority,omitempty"` // Indicates the retry policy for re-establishing the gRPC stream // This field is optional. If max interval is not provided, it will be set to ten times the provided base interval. // Currently only supported for xDS gRPC streams. // If not set, xDS gRPC streams default base interval:500ms, maximum interval:30s will be applied. RetryPolicy *v32.RetryPolicy `protobuf:"bytes,3,opt,name=retry_policy,json=retryPolicy,proto3" json:"retry_policy,omitempty"` // The timeout for the gRPC request. This is the timeout for a specific request. Timeout *durationpb.Duration `protobuf:"bytes,4,opt,name=timeout,proto3" json:"timeout,omitempty"` // Additional metadata to include in streams initiated to the GrpcService. This can be used for // scenarios in which additional ad hoc authorization headers (e.g. `x-foo-bar: baz-key`) are to // be injected. For more information, including details on header value syntax, see the // documentation on [custom request headers](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#config-http-conn-man-headers-custom-request-headers). InitialMetadata []*v32.HeaderValue `protobuf:"bytes,5,rep,name=initial_metadata,json=initialMetadata,proto3" json:"initial_metadata,omitempty"` // contains filtered or unexported fields }
func (*GrpcService) Descriptor
deprecated
func (*GrpcService) Descriptor() ([]byte, []int)
Deprecated: Use GrpcService.ProtoReflect.Descriptor instead.
func (*GrpcService) GetAuthority ¶
func (x *GrpcService) GetAuthority() *wrapperspb.StringValue
func (*GrpcService) GetExtProcServerRef ¶
func (x *GrpcService) GetExtProcServerRef() *core.ResourceRef
func (*GrpcService) GetInitialMetadata ¶
func (x *GrpcService) GetInitialMetadata() []*v32.HeaderValue
func (*GrpcService) GetRetryPolicy ¶
func (x *GrpcService) GetRetryPolicy() *v32.RetryPolicy
func (*GrpcService) GetTimeout ¶
func (x *GrpcService) GetTimeout() *durationpb.Duration
func (*GrpcService) Hash
deprecated
func (m *GrpcService) Hash(hasher hash.Hash64) (uint64, error)
Hash function
Deprecated: due to hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions. Prefer the HashUnique function instead.
func (*GrpcService) HashUnique ¶ added in v1.18.0
func (m *GrpcService) HashUnique(hasher hash.Hash64) (uint64, error)
HashUnique function generates a hash of the object that is unique to the object by hashing field name and value pairs. Replaces Hash due to original hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions.
func (*GrpcService) ProtoMessage ¶
func (*GrpcService) ProtoMessage()
func (*GrpcService) ProtoReflect ¶
func (x *GrpcService) ProtoReflect() protoreflect.Message
func (*GrpcService) Reset ¶
func (x *GrpcService) Reset()
func (*GrpcService) String ¶
func (x *GrpcService) String() string
type HeaderForwardingRules ¶
type HeaderForwardingRules struct { // If set, specifically allow any header in this list to be forwarded to the external // processing server. This can be overridden by the below `disallowed_headers`. AllowedHeaders *v33.ListStringMatcher `protobuf:"bytes,1,opt,name=allowed_headers,json=allowedHeaders,proto3" json:"allowed_headers,omitempty"` // If set, specifically disallow any header in this list to be forwarded to the external // processing server. This overrides the above `allowed_headers` if a header matches both. // NOT CURRENTLY IMPLEMENTED. DisallowedHeaders *v33.ListStringMatcher `protobuf:"bytes,2,opt,name=disallowed_headers,json=disallowedHeaders,proto3" json:"disallowed_headers,omitempty"` // contains filtered or unexported fields }
The HeaderForwardingRules structure specifies what headers are allowed to be forwarded to the external processing server. See https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/filters/http/ext_proc/v3/ext_proc.proto#extensions-filters-http-ext-proc-v3-headerforwardingrules for details.
func (*HeaderForwardingRules) Clone ¶
func (m *HeaderForwardingRules) Clone() proto.Message
Clone function
func (*HeaderForwardingRules) Descriptor
deprecated
func (*HeaderForwardingRules) Descriptor() ([]byte, []int)
Deprecated: Use HeaderForwardingRules.ProtoReflect.Descriptor instead.
func (*HeaderForwardingRules) Equal ¶
func (m *HeaderForwardingRules) Equal(that interface{}) bool
Equal function
func (*HeaderForwardingRules) GetAllowedHeaders ¶
func (x *HeaderForwardingRules) GetAllowedHeaders() *v33.ListStringMatcher
func (*HeaderForwardingRules) GetDisallowedHeaders ¶
func (x *HeaderForwardingRules) GetDisallowedHeaders() *v33.ListStringMatcher
func (*HeaderForwardingRules) Hash
deprecated
func (m *HeaderForwardingRules) Hash(hasher hash.Hash64) (uint64, error)
Hash function
Deprecated: due to hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions. Prefer the HashUnique function instead.
func (*HeaderForwardingRules) HashUnique ¶ added in v1.18.0
func (m *HeaderForwardingRules) HashUnique(hasher hash.Hash64) (uint64, error)
HashUnique function generates a hash of the object that is unique to the object by hashing field name and value pairs. Replaces Hash due to original hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions.
func (*HeaderForwardingRules) ProtoMessage ¶
func (*HeaderForwardingRules) ProtoMessage()
func (*HeaderForwardingRules) ProtoReflect ¶
func (x *HeaderForwardingRules) ProtoReflect() protoreflect.Message
func (*HeaderForwardingRules) Reset ¶
func (x *HeaderForwardingRules) Reset()
func (*HeaderForwardingRules) String ¶
func (x *HeaderForwardingRules) String() string
type Overrides ¶
type Overrides struct { // Set a different processing mode for this virtual host or route than the default. ProcessingMode *v3.ProcessingMode `protobuf:"bytes,1,opt,name=processing_mode,json=processingMode,proto3" json:"processing_mode,omitempty"` // NOT CURRENTLY IMPLEMENTED. // Set a different asynchronous processing option than the default. AsyncMode *wrapperspb.BoolValue `protobuf:"bytes,2,opt,name=async_mode,json=asyncMode,proto3" json:"async_mode,omitempty"` // NOT FINALIZED UPSTREAM use at your own upgrade risk // Set different optional attributes than the default setting of the // `request_attributes` field. RequestAttributes []string `protobuf:"bytes,3,rep,name=request_attributes,json=requestAttributes,proto3" json:"request_attributes,omitempty"` // NOT FINALIZED UPSTREAM use at your own upgrade risk // Set different optional properties than the default setting of the // `response_attributes` field. ResponseAttributes []string `protobuf:"bytes,4,rep,name=response_attributes,json=responseAttributes,proto3" json:"response_attributes,omitempty"` // Set a different gRPC service for this virtual host or route than the default. GrpcService *GrpcService `protobuf:"bytes,5,opt,name=grpc_service,json=grpcService,proto3" json:"grpc_service,omitempty"` // Specifies a list of metadata namespaces whose values, if present, will be passed to the // ext_proc service as an opaque *protobuf::Struct*. MetadataContextNamespaces []string `` /* 138-byte string literal not displayed */ // Specifies a list of metadata namespaces whose values, if present, will be passed to the // ext_proc service. :ref:`typed_filter_metadata <envoy_v3_api_field_config.core.v3.Metadata.typed_filter_metadata>` is passed as an “protobuf::Any“. // // It works in a way similar to “metadata_context_namespaces“ but allows envoy and external processing server to share the protobuf message definition // in order to do a safe parsing. TypedMetadataContextNamespaces []string `` /* 155-byte string literal not displayed */ // contains filtered or unexported fields }
func (*Overrides) Descriptor
deprecated
func (*Overrides) GetAsyncMode ¶
func (x *Overrides) GetAsyncMode() *wrapperspb.BoolValue
func (*Overrides) GetGrpcService ¶
func (x *Overrides) GetGrpcService() *GrpcService
func (*Overrides) GetMetadataContextNamespaces ¶ added in v1.15.5
func (*Overrides) GetProcessingMode ¶
func (x *Overrides) GetProcessingMode() *v3.ProcessingMode
func (*Overrides) GetRequestAttributes ¶
func (*Overrides) GetResponseAttributes ¶
func (*Overrides) GetTypedMetadataContextNamespaces ¶ added in v1.15.5
func (*Overrides) HashUnique ¶ added in v1.18.0
HashUnique function generates a hash of the object that is unique to the object by hashing field name and value pairs. Replaces Hash due to original hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions.
func (*Overrides) ProtoMessage ¶
func (*Overrides) ProtoMessage()
func (*Overrides) ProtoReflect ¶
func (x *Overrides) ProtoReflect() protoreflect.Message
type RouteSettings ¶
type RouteSettings struct { // Types that are assignable to Override: // // *RouteSettings_Disabled // *RouteSettings_Overrides Override isRouteSettings_Override `protobuf_oneof:"override"` // contains filtered or unexported fields }
External processor settings that can be configured on a virtual host or route.
func (*RouteSettings) Descriptor
deprecated
func (*RouteSettings) Descriptor() ([]byte, []int)
Deprecated: Use RouteSettings.ProtoReflect.Descriptor instead.
func (*RouteSettings) GetDisabled ¶
func (x *RouteSettings) GetDisabled() *wrapperspb.BoolValue
func (*RouteSettings) GetOverride ¶
func (m *RouteSettings) GetOverride() isRouteSettings_Override
func (*RouteSettings) GetOverrides ¶
func (x *RouteSettings) GetOverrides() *Overrides
func (*RouteSettings) Hash
deprecated
func (m *RouteSettings) Hash(hasher hash.Hash64) (uint64, error)
Hash function
Deprecated: due to hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions. Prefer the HashUnique function instead.
func (*RouteSettings) HashUnique ¶ added in v1.18.0
func (m *RouteSettings) HashUnique(hasher hash.Hash64) (uint64, error)
HashUnique function generates a hash of the object that is unique to the object by hashing field name and value pairs. Replaces Hash due to original hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions.
func (*RouteSettings) ProtoMessage ¶
func (*RouteSettings) ProtoMessage()
func (*RouteSettings) ProtoReflect ¶
func (x *RouteSettings) ProtoReflect() protoreflect.Message
func (*RouteSettings) Reset ¶
func (x *RouteSettings) Reset()
func (*RouteSettings) String ¶
func (x *RouteSettings) String() string
type RouteSettings_Disabled ¶
type RouteSettings_Disabled struct { // Set to true to disable the External Processing filter for this virtual host or route. // Setting this value to false is not supported. Disabled *wrapperspb.BoolValue `protobuf:"bytes,1,opt,name=disabled,proto3,oneof"` }
type RouteSettings_Overrides ¶
type RouteSettings_Overrides struct { // Override specific configuration for this virtual host or route. // If a route specifies overrides, it will override the disabled flag of its parent virtual host. Overrides *Overrides `protobuf:"bytes,2,opt,name=overrides,proto3,oneof"` }
type Settings ¶
type Settings struct { // Required. Configuration for the gRPC service that the filter will communicate with. GrpcService *GrpcService `protobuf:"bytes,1,opt,name=grpc_service,json=grpcService,proto3" json:"grpc_service,omitempty"` // Required. Where in the HTTP filter chain to insert the filter. FilterStage *filters.FilterStage `protobuf:"bytes,2,opt,name=filter_stage,json=filterStage,proto3" json:"filter_stage,omitempty"` // By default, if the gRPC stream cannot be established, or if it is closed // prematurely with an error, the filter will fail. Specifically, if the // response headers have not yet been delivered, then it will return a 500 // error downstream. If they have been delivered, then instead the HTTP stream to the // downstream client will be reset. // With this parameter set to true, however, then if the gRPC stream is prematurely closed // or could not be opened, processing continues without error. FailureModeAllow *wrapperspb.BoolValue `protobuf:"bytes,3,opt,name=failure_mode_allow,json=failureModeAllow,proto3" json:"failure_mode_allow,omitempty"` // Specifies default options for how HTTP headers, trailers, and bodies are // sent. ProcessingMode *v3.ProcessingMode `protobuf:"bytes,4,opt,name=processing_mode,json=processingMode,proto3" json:"processing_mode,omitempty"` // NOT CURRENTLY IMPLEMENTED. // If true, send each part of the HTTP request or response specified by ProcessingMode // asynchronously -- in other words, send the message on the gRPC stream and then continue // filter processing. If false, which is the default, suspend filter execution after // each message is sent to the remote service and wait up to "message_timeout" // for a reply. AsyncMode *wrapperspb.BoolValue `protobuf:"bytes,5,opt,name=async_mode,json=asyncMode,proto3" json:"async_mode,omitempty"` // NOT CURRENTLY IMPLEMENTED. // Envoy provides a number of [attributes](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/advanced/attributes#arch-overview-attributes) // for expressive policies. Each attribute name provided in this field will be // matched against that list and populated in the request_headers message. // See the [request attribute documentation](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/advanced/attributes#request-attributes) // for the list of supported attributes and their types. RequestAttributes []string `protobuf:"bytes,6,rep,name=request_attributes,json=requestAttributes,proto3" json:"request_attributes,omitempty"` // NOT CURRENTLY IMPLEMENTED. // Envoy provides a number of [attributes](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/advanced/attributes#arch-overview-attributes) // for expressive policies. Each attribute name provided in this field will be // matched against that list and populated in the response_headers message. // See the [response attribute documentation](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/advanced/attributes#response-attributes) // for the list of supported attributes and their types. ResponseAttributes []string `protobuf:"bytes,7,rep,name=response_attributes,json=responseAttributes,proto3" json:"response_attributes,omitempty"` // Specifies the timeout for each individual message sent on the stream // when the filter is running in synchronous mode. Whenever the proxy sends // a message on the stream that requires a response, it will reset this timer, // and will stop processing and return an error (subject to the processing mode) // if the timer expires before a matching response is received. There is no // timeout when the filter is running in asynchronous mode. Value must be at // least 0 seconds, and less than or equal to 3600 seconds. Zero is a valid // value which means the timer will be triggered immediately. If not // configured, default is 200 milliseconds. MessageTimeout *durationpb.Duration `protobuf:"bytes,8,opt,name=message_timeout,json=messageTimeout,proto3" json:"message_timeout,omitempty"` // Optional additional prefix to use when emitting statistics. This allows distinguishing // between statistics emitted by multiple *ext_proc* filters in an HTTP filter chain. StatPrefix *wrapperspb.StringValue `protobuf:"bytes,9,opt,name=stat_prefix,json=statPrefix,proto3" json:"stat_prefix,omitempty"` // Rules that determine what modifications an external processing server may // make to message headers. If not set, all headers may be modified except // for "host", ":authority", ":scheme", ":method", and headers that start // with the header prefix set via // [header_prefix](https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/bootstrap/v3/bootstrap.proto#envoy-v3-api-field-config-bootstrap-v3-bootstrap-header-prefix) // (which is usually "x-envoy"). // Note that changing headers such as "host" or ":authority" may not in itself // change Envoy's routing decision, as routes can be cached. To also force the // route to be recomputed, set the // [clear_route_cache](https://www.envoyproxy.io/docs/envoy/latest/api-v3/service/ext_proc/v3/external_processor.proto#envoy-v3-api-field-service-ext-proc-v3-commonresponse-clear-route-cache) // field to true in the same response. MutationRules *v31.HeaderMutationRules `protobuf:"bytes,10,opt,name=mutation_rules,json=mutationRules,proto3" json:"mutation_rules,omitempty"` // Specify the upper bound of // [override_message_timeout](https://www.envoyproxy.io/docs/envoy/latest/api-v3/service/ext_proc/v3/external_processor.proto#envoy-v3-api-field-service-ext-proc-v3-processingresponse-override-message-timeout). // If not specified, by default it is 0, which will effectively disable the `override_message_timeout` API. // Value must be greater than or equal to the `messageTimeout` and less than or equal to 3600 seconds. MaxMessageTimeout *durationpb.Duration `protobuf:"bytes,11,opt,name=max_message_timeout,json=maxMessageTimeout,proto3" json:"max_message_timeout,omitempty"` // Prevents clearing the route-cache when the // [clear_route_cache](https://www.envoyproxy.io/docs/envoy/latest/api-v3/service/ext_proc/v3/external_processor.proto#envoy-v3-api-field-service-ext-proc-v3-commonresponse-clear-route-cache) // field is set in an external processor response. DisableClearRouteCache *wrapperspb.BoolValue `` /* 132-byte string literal not displayed */ // Allow headers matching the `forward_rules` to be forwarded to the external processing server. // If not set, all headers are forwarded to the external processing server. ForwardRules *HeaderForwardingRules `protobuf:"bytes,13,opt,name=forward_rules,json=forwardRules,proto3" json:"forward_rules,omitempty"` // Additional metadata to be added to the filter state for logging purposes. The metadata // will be added to StreamInfo's filter state under the namespace corresponding to the // ext_proc filter name. FilterMetadata *structpb.Struct `protobuf:"bytes,14,opt,name=filter_metadata,json=filterMetadata,proto3" json:"filter_metadata,omitempty"` // If `allow_mode_override` is set to true, the filter config [processing_mode](https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/filters/http/ext_proc/v3/ext_proc.proto#envoy-v3-api-field-extensions-filters-http-ext-proc-v3-externalprocessor-processing-mode) // can be overridden by the response message from the external processing server // [mode_override](https://www.envoyproxy.io/docs/envoy/latest/api-v3/service/ext_proc/v3/external_processor.proto#envoy-v3-api-field-service-ext-proc-v3-processingresponse-mode-override). // If not set, `mode_override` API in the response message will be ignored. AllowModeOverride *wrapperspb.BoolValue `protobuf:"bytes,15,opt,name=allow_mode_override,json=allowModeOverride,proto3" json:"allow_mode_override,omitempty"` // Specifies a list of metadata namespaces whose values, if present, will be passed to the // ext_proc service as an opaque *protobuf::Struct*. MetadataContextNamespaces []string `` /* 139-byte string literal not displayed */ // Specifies a list of metadata namespaces whose values, if present, will be passed to the // ext_proc service. :ref:`typed_filter_metadata <envoy_v3_api_field_config.core.v3.Metadata.typed_filter_metadata>` is passed as an “protobuf::Any“. // // It works in a way similar to “metadata_context_namespaces“ but allows envoy and external processing server to share the protobuf message definition // in order to do a safe parsing. TypedMetadataContextNamespaces []string `` /* 156-byte string literal not displayed */ // contains filtered or unexported fields }
Enterprise-only: Configuration for Envoy's [External Processing Filter](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/ext_proc_filter). The External Processing filter allows for calling out to an external gRPC service at a specified point within a HTTP filter chain. The external service may access and modify various parts of the request or response, and may terminate processing. Envoy's External Processing Filter is considered a work in progress and has an unknown security posture. Users should take care to understand the risks of using this extension before proceeding.
func (*Settings) Descriptor
deprecated
func (*Settings) GetAllowModeOverride ¶
func (x *Settings) GetAllowModeOverride() *wrapperspb.BoolValue
func (*Settings) GetAsyncMode ¶
func (x *Settings) GetAsyncMode() *wrapperspb.BoolValue
func (*Settings) GetDisableClearRouteCache ¶
func (x *Settings) GetDisableClearRouteCache() *wrapperspb.BoolValue
func (*Settings) GetFailureModeAllow ¶
func (x *Settings) GetFailureModeAllow() *wrapperspb.BoolValue
func (*Settings) GetFilterMetadata ¶
func (*Settings) GetFilterStage ¶
func (x *Settings) GetFilterStage() *filters.FilterStage
func (*Settings) GetForwardRules ¶
func (x *Settings) GetForwardRules() *HeaderForwardingRules
func (*Settings) GetGrpcService ¶
func (x *Settings) GetGrpcService() *GrpcService
func (*Settings) GetMaxMessageTimeout ¶
func (x *Settings) GetMaxMessageTimeout() *durationpb.Duration
func (*Settings) GetMessageTimeout ¶
func (x *Settings) GetMessageTimeout() *durationpb.Duration
func (*Settings) GetMetadataContextNamespaces ¶ added in v1.15.5
func (*Settings) GetMutationRules ¶
func (x *Settings) GetMutationRules() *v31.HeaderMutationRules
func (*Settings) GetProcessingMode ¶
func (x *Settings) GetProcessingMode() *v3.ProcessingMode
func (*Settings) GetRequestAttributes ¶
func (*Settings) GetResponseAttributes ¶
func (*Settings) GetStatPrefix ¶
func (x *Settings) GetStatPrefix() *wrapperspb.StringValue
func (*Settings) GetTypedMetadataContextNamespaces ¶ added in v1.15.5
func (*Settings) HashUnique ¶ added in v1.18.0
HashUnique function generates a hash of the object that is unique to the object by hashing field name and value pairs. Replaces Hash due to original hashing implemention only using field values. The omission of the field name in the hash calculation can lead to hash collisions.
func (*Settings) ProtoMessage ¶
func (*Settings) ProtoMessage()
func (*Settings) ProtoReflect ¶
func (x *Settings) ProtoReflect() protoreflect.Message