michalskalski/envoy-web-bot-auth

Envoy Dynamic Module and resolver for verifying signed automated requests with the Web Bot Auth Protocol

Rust

0

23 commits

updated Sep 13, 2026

See the code
authentication
envoy-gateway
envoy-proxy
rust
web-bot-auth

README

Envoy Web Bot Auth

Envoy Web Bot Auth is an Envoy Dynamic Module and local resolver that uses Ed25519 to implement a profile of the Web Bot Auth HTTP Message Signatures working group draft. The reviewed implementation baseline is draft-ietf-webbotauth-httpsig-protocol-00. It verifies signed automated requests at the gateway, resolves public verification keys, and makes a trusted caller identity available to later Envoy policy.

Use it when a target service needs to identify an automated caller before applying its own access policy. A verified identity is an authentication input. It does not grant authorization, express reputation, or provide replay protection.

See the architecture for the supported protocol profile, resolver design, limits, egress model, and protocol update policy. See operations for deployment, configuration, and metrics.

Admission modes

Resultobserveoptionalrequired
No signatureallowallow403 with Accept-Signature
Malformed fieldsallow400400
Rejected or unsupported credentialallow403403
Resolver unavailableallow503503
Verifiedallowallowallow

After verification, the module enriches the request with trusted authentication data for later Envoy filters and upstream services. Use that data for your own authorization and rate policy. See trusted outputs for the headers and dynamic metadata.

CONTRIBUTING.md describes the contributor and release workflow.

Contributors

michalskalski

23 commits

michalskalski/envoy-web-bot-auth

Envoy Dynamic Module and resolver for verifying signed automated requests with the Web Bot Auth Protocol

Rust

0

23 commits

updated Sep 13, 2026

See the code
authentication
envoy-gateway
envoy-proxy
rust
web-bot-auth

README

Envoy Web Bot Auth

Envoy Web Bot Auth is an Envoy Dynamic Module and local resolver that uses Ed25519 to implement a profile of the Web Bot Auth HTTP Message Signatures working group draft. The reviewed implementation baseline is draft-ietf-webbotauth-httpsig-protocol-00. It verifies signed automated requests at the gateway, resolves public verification keys, and makes a trusted caller identity available to later Envoy policy.

Use it when a target service needs to identify an automated caller before applying its own access policy. A verified identity is an authentication input. It does not grant authorization, express reputation, or provide replay protection.

See the architecture for the supported protocol profile, resolver design, limits, egress model, and protocol update policy. See operations for deployment, configuration, and metrics.

Admission modes

Resultobserveoptionalrequired
No signatureallowallow403 with Accept-Signature
Malformed fieldsallow400400
Rejected or unsupported credentialallow403403
Resolver unavailableallow503503
Verifiedallowallowallow

After verification, the module enriches the request with trusted authentication data for later Envoy filters and upstream services. Use that data for your own authorization and rate policy. See trusted outputs for the headers and dynamic metadata.

CONTRIBUTING.md describes the contributor and release workflow.

Contributors

michalskalski

23 commits

Languages

Rust

91.2%

Makefile

7.2%

Dockerfile

1.3%