mirror of
https://github.com/pomerium/pomerium.git
synced 2025-08-03 00:40:25 +02:00
Pomerium configures a gRPC listener in Envoy, for internal communication between the various Pomerium services. Currently this listener shares much of the same configuration as the main HTTP listener, based on the main Pomerium configuration options. However, some configuration options don't make sense for the gRPC listener. Specifically, the `codec_type` option should not be applied to the gRPC listener, as gRPC requires HTTP/2. Also, any client certificate settings should not apply to the gRPC listener. Separate the gRPC listener configuration from the main HTTP listener configuration, so we can avoid applying these configuration options. Instead set AlpnProtocols to just "h2" (HTTP/2), and do not set any ValidationContextType on the DownstreamTlsContext (no client certificate validation). Specifically, inline the call to buildTLSSocket() within the body of buildGRPCListener(). Extract a new method envoyCertificates() from buildDownstreamTLSContextMulti(), to avoid repeating this logic. |
||
---|---|---|
.. | ||
filemgr | ||
luascripts | ||
testdata | ||
acmetlsalpn.go | ||
acmetlsalpn_test.go | ||
bootstrap.go | ||
bootstrap_test.go | ||
builder.go | ||
clusters.go | ||
clusters_envoy_admin.go | ||
clusters_test.go | ||
envoyconfig.go | ||
filters.go | ||
http_connection_manager.go | ||
listeners.go | ||
listeners_envoy_admin.go | ||
listeners_test.go | ||
lua.go | ||
lua_test.go | ||
outbound.go | ||
outbound_test.go | ||
per_filter_config.go | ||
protocols.go | ||
protocols_test.go | ||
route_configurations.go | ||
route_configurations_test.go | ||
routes.go | ||
routes_test.go | ||
tls.go | ||
tls_test.go | ||
tracing.go | ||
tracing_test.go |