JWT authorization layer for Axum.
Find a file
2023-01-15 15:56:29 +01:00
config chore: fmt 2023-01-09 07:37:25 +01:00
demo-server feat: building layer from rsa, ec, ed, secret 2023-01-12 06:59:54 +01:00
jwt-authorizer test: jwks store unavailable should be error 500 2023-01-15 15:56:29 +01:00
.gitignore chore: fmt 2023-01-09 07:37:25 +01:00
Cargo.lock test: integration tests 2023-01-14 09:07:02 +01:00
Cargo.toml chore: fmt 2023-01-09 07:37:25 +01:00
CHANGELOG.md fix: panic when missing token 2023-01-14 09:13:52 +01:00
LICENSE Initial commit 2023-01-08 14:50:54 +01:00
README.md chore: fmt 2023-01-09 07:37:25 +01:00
rustfmt.toml chore: fmt 2023-01-09 07:37:25 +01:00

jwt-authorizer

JWT authorizer Layer for Axum.

Features

  • JWT token verification (Bearer)
  • Claims extraction
  • JWKS endpoint support (with refresh)
  • algoritms: ECDSA, RSA, EdDSA, HS

Usage

See documentation of the jwt-authorizer module or the demo-server example.

Development

Key generation

EC (ECDSA) - (algorigthm ES256 - ECDSA using SHA-256)

curve name: prime256v1 (secp256r1, secp384r1)

openssl ecparam -genkey -noout -name prime256v1 | openssl pkcs8 -topk8 -nocrypt -out ec-private.pem

openssl ec -in ec-private.pem -pubout -out ec-public-key.pem

EdDSA (Edwards-curve Digital Signature Algorithm)

(Ed25519 - implémentation spécifique de EdDSA, utilisant la Courbe d'Edwards tordue)

openssl genpkey -algorithm ed25519

Contributing

Contributions are wellcome!

License

MIT