Envoy Types
Collection of protobuf types and other assets to work with the Envoy Proxy through Rust gRPC services.
Among other use cases, this crate can be used to implement an Envoy External Authorization (ExtAuthz) gRPC Server written in Rust.
Getting Started
Rust Version
This project's MSRV is 1.75.
Dependencies
[]
= "<envoy-types-version>"
The protobuf types made available are already pre-compiled, so you only need the
latest stable Protocol Buffer Compiler (protoc) to run the crate's tests.
Generated code may vary across protoc versions, and the use of the latest
stable version is enforced by CI.
Installation instructions can be found here.
Examples
The example bellow covers a bare-bones implementation of an Envoy ExtAuthz gRPC
AuthorizationServer, with tonic. A more complete implementation,
including query parameters and header manipulation, can be found at the
examples directory.
use env;
use ;
use ;
use ;
;
async
Compatibility
The table bellow outlines the correspondence between the versions of tonic
and the compatible versions of envoy-types.
tonic |
envoy-types |
|---|---|
| v0.12 | v0.5 |
| v0.11 | v0.4 |
| v0.10 | v0.3 |
| v0.9 | v0.2 |
License
This project is licensed under the Apache License (Version 2.0).
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion by you, shall be licensed as Apache-2.0, without any additional terms or conditions.