pub struct AuthMiddleware { /* private fields */ }Expand description
Authentication middleware configuration
Implementations§
Source§impl AuthMiddleware
impl AuthMiddleware
Sourcepub const fn new(validator: Arc<JwtValidator>, public_key: Vec<u8>) -> Self
pub const fn new(validator: Arc<JwtValidator>, public_key: Vec<u8>) -> Self
Create a new authentication middleware
§Arguments
validator- JWT validatorpublic_key- Public key for JWT signature verification
Note: this type validates a presented Bearer token. The previous
session_store and optional parameters were never consulted (no
session-revocation check, no optional-auth handling), so they were removed
rather than continue to advertise behavior that did not exist
(L-authmw-ignores). Optional/anonymous handling belongs at the request layer;
session-revocation checks belong on the refresh-token path.
Sourcepub async fn validate_token(&self, token: &str) -> Result<Claims>
pub async fn validate_token(&self, token: &str) -> Result<Claims>
Validate a Bearer token and extract claims.
§Errors
Returns AuthError::InvalidToken if the token signature is invalid,
expired, or does not match the expected issuer/audience.
Returns AuthError::KeyError if the public key cannot be used for
verification.
Auto Trait Implementations§
impl Freeze for AuthMiddleware
impl RefUnwindSafe for AuthMiddleware
impl Send for AuthMiddleware
impl Sync for AuthMiddleware
impl Unpin for AuthMiddleware
impl UnsafeUnpin for AuthMiddleware
impl UnwindSafe for AuthMiddleware
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
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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