diff --git a/envoy/config/core/v3/grpc_service.proto b/envoy/config/core/v3/grpc_service.proto index 3f62884d..967c694d 100644 --- a/envoy/config/core/v3/grpc_service.proto +++ b/envoy/config/core/v3/grpc_service.proto @@ -36,6 +36,12 @@ message GrpcService { // in the :ref:`Cluster ` :ref:`transport_socket // `. string cluster_name = 1 [(validate.rules).string = {min_bytes: 1}]; + + // The `:authority` header in the grpc request. If this field is not set, the authority header value will be `cluster_name`. + // Note that this authority does not override the SNI. The SNI is provided by the transport socket of the cluster. + string authority = 2 + [(validate.rules).string = + {min_bytes: 0 max_bytes: 16384 well_known_regex: HTTP_HEADER_VALUE strict: false}]; } // [#next-free-field: 9] diff --git a/envoy/config/core/v4alpha/grpc_service.proto b/envoy/config/core/v4alpha/grpc_service.proto index 4c95bb9e..51f11fa1 100644 --- a/envoy/config/core/v4alpha/grpc_service.proto +++ b/envoy/config/core/v4alpha/grpc_service.proto @@ -36,6 +36,12 @@ message GrpcService { // in the :ref:`Cluster ` :ref:`transport_socket // `. string cluster_name = 1 [(validate.rules).string = {min_bytes: 1}]; + + // The `:authority` header in the grpc request. If this field is not set, the authority header value will be `cluster_name`. + // Note that this authority does not override the SNI. The SNI is provided by the transport socket of the cluster. + string authority = 2 + [(validate.rules).string = + {min_bytes: 0 max_bytes: 16384 well_known_regex: HTTP_HEADER_VALUE strict: false}]; } // [#next-free-field: 9]