mirror of
https://github.com/TECHNOFAB11/jwt-authorizer.git
synced 2025-12-11 23:50:07 +01:00
JWT authorization layer for Axum.
Cloning the inner service to use in call can mean a not-ready clone gets used which violates the tower service preconditions. Replace the cloned service with the ready service to ensure the right copy gets used. See https://docs.rs/tower/0.4.13/tower/trait.Service.html#be-careful-when-cloning-inner-services for more details Signed-off-by: Sjoerd Simons <sjoerd@collabora.com> |
||
|---|---|---|
| .github/workflows | ||
| config | ||
| demo-server | ||
| jwt-authorizer | ||
| .editorconfig | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| CHANGELOG.md | ||
| LICENSE | ||
| README.md | ||
| rustfmt.toml | ||
jwt-authorizer
JWT authorizer Layer for Axum and Tonic.
Features
- JWT token verification (Bearer)
- Algoritms: ECDSA, RSA, EdDSA, HMAC
- JWKS endpoint support
- Configurable refresh
- OpenId Connect Discovery
- Validation
- exp, nbf, iss, aud
- Claims extraction
- Claims checker
- Tracing support (error logging)
Usage
See documentation of the jwt-authorizer module or the demo-server example.
Development
Minimum supported Rust version is 1.65.
Contributing
Contributions are wellcome!
License
MIT