entropy-auth 2026.7.31

Authentication and authorization for Entropy Softworks server and API projects
//! `OpenID` Connect (OIDC) support for ID token validation and discovery.
//!
//! This module is gated behind the `oidc` feature flag.
//! It provides discovery document parsing, ID token validation,
//! and `UserInfo` response parsing.
//!
//! # Signature algorithms
//!
//! ID tokens can be validated against either a shared HMAC secret
//! ([`IdTokenValidator::validate`], `HS256` / `HS512`) or a provider's
//! published JWKS ([`IdTokenValidator::validate_jwks`], `RS256` / `RS512` /
//! `ES256` / `EdDSA`). The asymmetric path — the norm for public identity
//! providers like Google, Microsoft, and Okta — requires the `asym-jwt`
//! feature, which the `oidc` feature enables transitively. RSA is
//! verify-only: this crate validates RSA-signed tokens but never mints them.

mod claims;
mod discovery;
mod federation;
mod id_token;
mod standard_claims;
mod userinfo;

pub use self::claims::{IdTokenClaims, IdTokenClaimsError};
pub use self::discovery::{OidcDiscovery, OidcDiscoveryError};
pub use self::federation::{
    FederatedClaims, FederationContext, FederationDenied, FederationOutcome, FederationVerdict,
    evaluate_federation,
};
pub use self::id_token::{IdTokenError, IdTokenValidator};
pub use self::userinfo::{UserInfo, UserInfoError};