Skip to main content

openauth_oidc/
lib.rs

1//! Enterprise OIDC relying-party support for OpenAuth.
2//!
3//! This crate is for OpenAuth acting as a client of external OIDC identity
4//! providers. OpenAuth's own OAuth/OIDC provider implementation lives in
5//! `openauth-oauth-provider`.
6
7pub mod discovery;
8pub mod flow;
9pub mod options;
10
11pub use discovery::{
12    compute_discovery_url, discover_oidc_config, discover_oidc_config_with_origin_validator,
13    ensure_runtime_oidc_config_with_origin_validator, fetch_discovery_document,
14    is_configured_oidc_endpoint, needs_runtime_discovery, normalize_absolute_http_url,
15    normalize_discovery_urls, normalize_endpoint_url, normalize_url,
16    select_token_endpoint_authentication, validate_configured_oidc_endpoint_origins,
17    validate_discovery_document, validate_discovery_url, validate_issuer_url,
18    HydratedOidcDiscovery, OidcDiscoveryDocument, OidcDiscoveryError, OidcEndpointConfig,
19    OidcRuntimeRequirement, PartialOidcDiscoveryConfig, REQUIRED_DISCOVERY_FIELDS,
20};
21pub use flow::{oidc_redirect_uri, OidcFlowOptions};
22pub use options::{
23    OidcConfig, OidcMapping, OidcProfileMapping, OidcProviderConfig, SecretString,
24    TokenEndpointAuthentication,
25};
26
27/// Current crate version.
28pub const VERSION: &str = env!("CARGO_PKG_VERSION");