pub struct CsrfMiddleware { /* private fields */ }Expand description
CSRF protection middleware
Implementations§
Source§impl CsrfMiddleware
impl CsrfMiddleware
Sourcepub fn new(config: CsrfConfig) -> Self
pub fn new(config: CsrfConfig) -> Self
Create new CSRF middleware with configuration
Sourcepub fn builder() -> CsrfMiddlewareBuilder
pub fn builder() -> CsrfMiddlewareBuilder
Create middleware with builder pattern
Sourcepub async fn generate_token(&self, user_agent: Option<&str>) -> String
pub async fn generate_token(&self, user_agent: Option<&str>) -> String
Generate a new CSRF token
Sourcepub async fn validate_token(
&self,
token: &str,
user_agent: Option<&str>,
) -> bool
pub async fn validate_token( &self, token: &str, user_agent: Option<&str>, ) -> bool
Validate a CSRF token
Sourcepub async fn consume_token(&self, token: &str)
pub async fn consume_token(&self, token: &str)
Remove a token after successful validation (single-use)
Trait Implementations§
Source§impl Clone for CsrfMiddleware
impl Clone for CsrfMiddleware
Source§fn clone(&self) -> CsrfMiddleware
fn clone(&self) -> CsrfMiddleware
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CsrfMiddleware
impl Debug for CsrfMiddleware
Source§impl Middleware for CsrfMiddleware
Implementation of our Middleware trait for CSRF protection
impl Middleware for CsrfMiddleware
Implementation of our Middleware trait for CSRF protection
Auto Trait Implementations§
impl Freeze for CsrfMiddleware
impl !RefUnwindSafe for CsrfMiddleware
impl Send for CsrfMiddleware
impl Sync for CsrfMiddleware
impl Unpin for CsrfMiddleware
impl !UnwindSafe for CsrfMiddleware
Blanket Implementations§
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 more