JWT authorization layer for Axum.
Find a file
2023-08-19 14:21:11 +02:00
.github/workflows build: disable temporarily nightly tests 2023-07-06 07:32:07 +02:00
config feat: configurable validation (validation: iss, aud, exp, nbf, leeway) (fixes #1) (#4) 2023-02-26 20:30:55 +01:00
demo-server refactor: JwtAuthorizer::IntoLayer -> Authorizer::IntoLayer 2023-08-18 07:48:53 +02:00
jwt-authorizer refactor: AsyncAuthorizer::authorize, map - > filter_map 2023-08-19 14:21:11 +02:00
.editorconfig refactor: Authorizer::build 2023-02-01 22:09:06 +01:00
.gitignore chore: fmt 2023-01-09 07:37:25 +01:00
Cargo.lock chore: release 0.10.1 2023-07-11 08:36:44 +02:00
Cargo.toml chore: fmt 2023-01-09 07:37:25 +01:00
CHANGELOG.md refactor: JwtAuthorizer::IntoLayer -> Authorizer::IntoLayer 2023-08-18 07:48:53 +02:00
LICENSE Initial commit 2023-01-08 14:50:54 +01:00
README.md chore: release 0.10.0 2023-05-19 09:14:53 +02:00
rustfmt.toml chore: fmt 2023-01-28 08:43:51 +01:00

jwt-authorizer

JWT authorizer Layer for Axum.

Build status Crates.io Documentation

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
    • into custom deserializable structs or into RegisteredClaims (default)
  • Claims checker
  • Tracing support (error logging)
  • tonic support

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