Skip to main content

rskit_auth/oidc/
error.rs

1/// Errors from OIDC operations.
2#[derive(Debug, thiserror::Error, PartialEq, Eq)]
3pub enum OidcError {
4    /// Configuration is invalid or unsafe.
5    #[error("invalid OIDC configuration: {0}")]
6    Configuration(String),
7    /// Discovery failed or returned an invalid document.
8    #[error("OIDC discovery failed: {0}")]
9    Discovery(String),
10    /// The token could not be validated.
11    #[error("invalid token: {0}")]
12    InvalidToken(String),
13    /// The OIDC provider could not be reached.
14    #[error("provider unreachable: {0}")]
15    ProviderUnreachable(String),
16    /// Callback state mismatched the original request.
17    #[error("OIDC state mismatch")]
18    StateMismatch,
19    /// Public clients must supply PKCE verifiers.
20    #[error("PKCE verifier is required for public clients")]
21    MissingPkce,
22    /// Nonce mismatched the validated ID token.
23    #[error("OIDC nonce mismatch")]
24    NonceMismatch,
25    /// The provider or token selected an unsupported algorithm.
26    #[error("unsupported OIDC signing algorithm: {0}")]
27    UnsupportedAlgorithm(String),
28    /// A required claim is missing.
29    #[error("missing required OIDC claim: {0}")]
30    MissingClaim(String),
31}