[package] name = "jwt-authorizer" description = "jwt authorizer middleware for axum and tonic" version = "0.15.0" edition = "2021" authors = ["cduvray "] license = "MIT" readme = "docs/README.md" repository = "https://github.com/cduvray/jwt-authorizer" keywords = ["jwt", "axum", "authorisation", "jwks"] [dependencies] axum = { version = "0.7" } chrono = { version = "0.4", optional = true } futures-util = "0.3" futures-core = "0.3" headers = "0.4" jsonwebtoken = "9.3" http = "1.1" pin-project = "1.1" reqwest = { version = "0.12.4", default-features = false, features = ["json"] } serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" thiserror = "1.0" tokio = { version = "1.37", features = ["full"] } tower-http = { version = "0.5", features = ["trace", "auth"] } tower-layer = "0.3" tower-service = "0.3" tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } tonic = { version = "0.12", optional = true } time = { version = "0.3", optional = true } http-body-util = "0.1.1" [dev-dependencies] hyper = { version = "1.3.1", features = ["full"] } lazy_static = "1.4.0" prost = "0.13" tower = { version = "0.4.13", features = ["util", "buffer"] } wiremock = "0.6.1" [features] default = ["default-tls", "chrono"] default-tls = ["reqwest/default-tls"] native-tls = ["reqwest/native-tls"] native-tls-vendored = ["reqwest/native-tls-vendored"] native-tls-alpn = ["reqwest/native-tls-alpn"] rustls-tls = ["reqwest/rustls-tls"] rustls-tls-manual-roots = ["reqwest/rustls-tls-manual-roots"] rustls-tls-webpki-roots = ["reqwest/rustls-tls-webpki-roots"] rustls-tls-native-roots = ["reqwest/rustls-tls-native-roots"] time = ["dep:time"] chrono = ["dep:chrono"] [[test]] name = "tonic" required-features = ["tonic"]