Expand description
OIDC provider for outbound authentication.
This crate enables the proxy to act as its own OIDC identity provider:
- JWT signing — mint JWTs signed with the proxy’s RSA private key
- JWKS serving — expose the corresponding public key as a JWK set
- OIDC discovery — generate
.well-known/openid-configurationresponses - Credential exchange — trade self-signed JWTs for cloud provider credentials (AWS STS, Azure AD, GCP STS)
- Route handler —
route_handler::OidcRouterExtregisters.well-knownendpoint closures on aRouter
The crate is runtime-agnostic: HTTP calls are abstracted behind an
HttpExchange trait so that each runtime (reqwest, Fetch API, etc.)
can provide its own implementation.
Modules§
- backend_
auth - OIDC-based backend credential resolution.
- cache
- TTL credential cache.
- discovery
- OpenID Connect discovery document generation.
- exchange
- Credential exchange — trade a self-signed JWT for cloud provider credentials.
- jwks
- JWKS response generation — expose the proxy’s public key as a JWK set.
- jwt
- JWT minting — sign JWTs with the proxy’s RSA private key.
- route_
handler - Route handler for OIDC discovery endpoints.
Structs§
- Cloud
Credentials - Temporary cloud credentials obtained via token exchange.
- Oidc
Credential Provider - Top-level provider that combines signing, exchange, and caching.
Enums§
- Oidc
Provider Error - Errors produced by this crate.
Traits§
- Http
Exchange - HTTP client abstraction for outbound requests (STS token exchange).