pub enum MfaError {
ChallengeExpired,
InvalidCode,
MethodNotSupported {
method: String,
},
SetupRequired,
VerificationFailed {
message: String,
},
}Expand description
Multi-factor authentication errors.
Variants§
ChallengeExpired
The MFA challenge window has elapsed; the user must request a new challenge.
InvalidCode
The TOTP or one-time code provided by the user is incorrect.
MethodNotSupported
The requested MFA method (e.g. SMS, hardware key) is not enabled.
SetupRequired
MFA has not been configured for this account yet.
VerificationFailed
MFA verification failed for a reason described in message.
Implementations§
Source§impl MfaError
impl MfaError
Sourcepub fn method_not_supported(method: impl Into<String>) -> Self
pub fn method_not_supported(method: impl Into<String>) -> Self
Create a new method not supported error.
§Example
use auth_framework::errors::MfaError;
let err = MfaError::method_not_supported("biometric");
assert!(err.to_string().contains("biometric"));Sourcepub fn verification_failed(message: impl Into<String>) -> Self
pub fn verification_failed(message: impl Into<String>) -> Self
Create a new verification failed error.
§Example
use auth_framework::errors::MfaError;
let err = MfaError::verification_failed("code expired");
assert!(err.to_string().contains("code expired"));Trait Implementations§
Source§impl Error for MfaError
impl Error for MfaError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Auto Trait Implementations§
impl Freeze for MfaError
impl RefUnwindSafe for MfaError
impl Send for MfaError
impl Sync for MfaError
impl Unpin for MfaError
impl UnsafeUnpin for MfaError
impl UnwindSafe for MfaError
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.