Basic Rust library to manipulate JWTs
https://crates.io/crates/basic-jwt
src | ||
.drone.yml | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
README.md | ||
renovate.json |
Basic JWT
This crate provide basic functions to:
- Sign JWT
- Parse and validate JWT
Basic usage:
let claims = ...; // note : claims must be serializable
// Generate a key pair. Private and public key are both serializable
let priv_key = JWTPrivateKey::generate_ec384_signing_key().unwrap();
let pub_key = priv_key.to_public_key().unwrap();
// Create a JWT for the given claims (note: standard claims: sub, iss, ...) are not
// automatically added if they are missing
let jwt = priv_key.sign_jwt(&claims).expect("Failed to sign JWT!");
// Validate signed JWT
let claims_out = pub_key
.validate_jwt::<Claims>(&jwt)
.expect("Failed to validate JWT!");