This repo demostrates two patterns to extend Envoy to add custom logic before sending the request to the actual upstream application.
This pattern leverages the ext_authz filter in Envoy to callout to an external service.
The external service can:
-
Implement custom rules for authorization
-
Implement routing changes
-
Access the payload (but not modify it) - upto a limit specified in the Envoy configuration
See more here
This pattern leverages two logical Envoy proxies sandwiched between custom code/logic.
The middle proxy can:
-
Implment routing changes.
-
Full access to the payload to transform/modify.
See more here
This is not an officially supported Google product