Skip to main content

Crate id_token_verifier

Crate id_token_verifier 

Source
Expand description

ยง๐Ÿ”Ž id_token_verifier โœ…

crates.io codecov

A feature-rich, highly configurable OpenID Connect ID token verifier in Rust โ€” empowering you to validate ID tokens as easily as this, while handling retries, caching, and more under the hood:

use id_token_verifier::*;
use id_token_verifier::client::*;

#[derive(serde::Deserialize)]
struct MyClaims {
    sub: String,
    email: Option<String>,
    email_verified: Option<bool>,
}

async fn verify(
    token: &str,
    id_token_verifier: &IdTokenVerifierDefault
) -> Result<MyClaims, IdTokenVerifierError> {
    id_token_verifier.verify(token).await
}

ยงโœจ Features

  • ๐Ÿ” Configurable JWKS caching, including background refresh.
  • ๐Ÿ›  Pluggable retry logic via backoff_config and backon.
  • โš™๏ธ Flexible validation settings.
  • ๐Ÿงฉ serde-friendly configuration โ€” load from config files or environment variables, or use the provided config Builders.
  • ๐Ÿ“ˆ tracing support via the optional tracing feature flag.

ยง๐Ÿ“š Examples

Re-exportsยง

pub use backoff_config;
pub use reqwest;

Modulesยง

cache
client
util
validation

Structsยง

IdTokenVerifierConfig
ID token verifier configuration.
IdTokenVerifierConfigBuilder
Use builder syntax to set the inputs and finish with build().
IdTokenVerifierDefault
Default implementation of the ID token verifier.

Enumsยง

IdTokenVerifierError
Top-level error when verifying an ID token.

Traitsยง

IdTokenVerifier
ID token verifier.