JWT authorization layer for Axum.
Find a file
2024-01-20 14:53:16 +01:00
.github/workflows fix: ci test (pinned: 1.68) 2023-09-04 18:59:44 +02:00
config test: add EC384 test keys and tokens 2023-11-19 10:04:03 +01:00
demo-server update hyperium crates to 1.0, axum to 0.7 2023-12-01 12:37:13 -05:00
jwt-authorizer chore: remove tonic temporarily (waiting hyperium/tonic/#1595) 2024-01-20 14:53:16 +01: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: remove tonic temporarily (waiting hyperium/tonic/#1595) 2024-01-20 14:53:16 +01:00
Cargo.toml fix: clippy warnings 2023-09-04 08:52:15 +02:00
CHANGELOG.md chore: release 2023-11-20 07:59:45 +01:00
LICENSE Initial commit 2023-01-08 14:50:54 +01:00
README.md chore: remove tonic temporarily (waiting hyperium/tonic/#1595) 2024-01-20 14:53:16 +01: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

Tonic support is temporarily removed (waiting upgrade to hyper 1 and axum 0.7 hyperium/tonic/#1584)

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