pub trait Authenticator: Send {
// Required methods
fn initialize<'life0, 'async_trait>(
&'life0 mut self,
initialization: Initialization,
) -> Pin<Box<dyn Future<Output = Result<InitializationResponse>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn challenge<'life0, 'async_trait>(
&'life0 mut self,
challenge: Challenge,
) -> Pin<Box<dyn Future<Output = Result<ChallengeResponse>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn verify<'life0, 'async_trait>(
&'life0 mut self,
verification: Verification,
) -> Pin<Box<dyn Future<Output = Result<VerificationResponse>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn info<'life0, 'async_trait>(
&'life0 mut self,
info: Info,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn error<'life0, 'async_trait>(
&'life0 mut self,
error: Error,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn start_method<'life0, 'async_trait>(
&'life0 mut self,
start_method: StartMethod,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn finished<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
}Expand description
Represents an interface for submitting challenges for authentication.
Required Methods§
Sourcefn initialize<'life0, 'async_trait>(
&'life0 mut self,
initialization: Initialization,
) -> Pin<Box<dyn Future<Output = Result<InitializationResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn initialize<'life0, 'async_trait>(
&'life0 mut self,
initialization: Initialization,
) -> Pin<Box<dyn Future<Output = Result<InitializationResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Issues an initialization notice and returns the response indicating which authentication methods to pursue
Sourcefn challenge<'life0, 'async_trait>(
&'life0 mut self,
challenge: Challenge,
) -> Pin<Box<dyn Future<Output = Result<ChallengeResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn challenge<'life0, 'async_trait>(
&'life0 mut self,
challenge: Challenge,
) -> Pin<Box<dyn Future<Output = Result<ChallengeResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Issues a challenge and returns the answers to the questions asked.
Sourcefn verify<'life0, 'async_trait>(
&'life0 mut self,
verification: Verification,
) -> Pin<Box<dyn Future<Output = Result<VerificationResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn verify<'life0, 'async_trait>(
&'life0 mut self,
verification: Verification,
) -> Pin<Box<dyn Future<Output = Result<VerificationResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Requests verification of some kind and text, returning true if passed verification.
Sourcefn info<'life0, 'async_trait>(
&'life0 mut self,
info: Info,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn info<'life0, 'async_trait>(
&'life0 mut self,
info: Info,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Reports information with no response expected.
Sourcefn error<'life0, 'async_trait>(
&'life0 mut self,
error: Error,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn error<'life0, 'async_trait>(
&'life0 mut self,
error: Error,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Reports an error occurred during authentication, consuming the authenticator since no more challenges should be issued.
Sourcefn start_method<'life0, 'async_trait>(
&'life0 mut self,
start_method: StartMethod,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn start_method<'life0, 'async_trait>(
&'life0 mut self,
start_method: StartMethod,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Reports that the authentication has started for a specific method.
Sourcefn finished<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn finished<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Reports that the authentication has finished successfully, consuming the authenticator since no more challenges should be issued.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".