Skip to main content

Module config

Module config 

Source
Expand description

YAML-based proxy configuration.

All product-specific behavior is driven by config, not code. Same binary, different YAML = different product proxy.

Structs§

AliasConfig
Path alias (rewrite before routing).
AuthConfig
Auth configuration.
AuthzConfig
External authorization via the Envoy ext_authz gRPC contract (envoy.service.auth.v3.Authorization/Check). Interops with OPA and any ext_authz server.
CorsConfig
CORS configuration.
ForwardAuthConfig
Forward auth config.
HealthConfig
Health-probe endpoint configuration.
JwtConfig
JWT validation config.
JwtLimitConfig
Claims that carry a key’s limit inside the JWT itself. A tier-name claim maps to a profiles entry (numbers stay tunable in config); direct numeric claims set the limit explicitly.
LimitProfileConfig
A named limit tier: a sustained rate plus an instantaneous burst capacity.
LimitServiceConfig
External limit-resolution service. The response names a tier or gives explicit numbers; results are cached and refreshed asynchronously, never on the request path.
ListenConfig
Listen address configuration.
LoggingConfig
Logging configuration.
MaintenanceConfig
Maintenance mode config.
MetricsClassConfig
Metrics endpoint classification.
MetricsConfig
Prometheus metrics endpoint configuration.
OidcDiscoveryConfig
OIDC discovery config.
OpenApiConfig
OpenAPI generation config.
ProxyConfig
Top-level proxy configuration (loaded from YAML).
RateRuleConfig
One rate-limit rule: a path pattern, how to key it, and an optional static profile. The rule’s phase (before or after auth) is derived from its key alone: a jwt_claim key needs validated claims so it runs after auth; ip and header keys run before auth so anonymous floods are shed before any signature verification. (jwt_limits therefore only takes effect on jwt_claim rules, the only ones running with claims available.)
RoutePolicyConfig
Route policy entry.
ServiceConfig
Service identity.
ShieldConfig
Shield (rate limiting) configuration.
SigningKeyConfig
Signing key config for JWKS endpoint.
StreamingConfig
Server-streaming response behavior.
SyncConfig
Asynchronous cross-instance reconciliation via a shared store.
UpstreamConfig
Upstream gRPC service configuration.

Enums§

DescriptorSource
Descriptor loading source.
KeySourceConfig
How a rule derives its limit key. All sources fall back to the client IP when their value is absent, so a limit can’t be bypassed by omitting a header or authenticating anonymously. Written as a tagged map, e.g. key: { type: jwt_claim, claim: sub }; omitting key defaults to ip.