pub struct AuthenticateMiddlewareFactory<ClaimsType> { /* private fields */ }Expand description
A factory for the authentication middleware.
This is meant to be instantiated once during bootstrap and cloned to the app factory closure. That way, there is a single set of invalidated JWTs held in memory, refreshed by a single periodic timer.
Cloning is cheap because internally this uses Arcs to hold state.
Implementations
sourceimpl<ClaimsType> AuthenticateMiddlewareFactory<ClaimsType> where
ClaimsType: DeserializeOwned + 'static,
impl<ClaimsType> AuthenticateMiddlewareFactory<ClaimsType> where
ClaimsType: DeserializeOwned + 'static,
sourcepub fn new<R>(
reader: R,
settings: AuthenticateMiddlewareSettings
) -> AuthenticateMiddlewareFactory<ClaimsType> where
R: InvalidatedJWTsReader + Sync + Send + 'static,
pub fn new<R>(
reader: R,
settings: AuthenticateMiddlewareSettings
) -> AuthenticateMiddlewareFactory<ClaimsType> where
R: InvalidatedJWTsReader + Sync + Send + 'static,
Takes an InvalidatedJWTsReader returns a AuthenticateMiddlewareFactory that knows how to periodically use the InvalidatedJWTsReader’s read method to re-load an in-memory set of invalidated JWTs that is then passed on to the AuthenticateMiddleware that it spawns.
The current periodic refresh implementation assumes this method is called from within an Actix runtime.
Trait Implementations
sourceimpl<ClaimsType: Clone> Clone for AuthenticateMiddlewareFactory<ClaimsType>
impl<ClaimsType: Clone> Clone for AuthenticateMiddlewareFactory<ClaimsType>
sourcefn clone(&self) -> AuthenticateMiddlewareFactory<ClaimsType>
fn clone(&self) -> AuthenticateMiddlewareFactory<ClaimsType>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more
sourceimpl<S, B, ClaimsType> Transform<S, ServiceRequest> for AuthenticateMiddlewareFactory<ClaimsType> where
S: Service<ServiceRequest, Response = ServiceResponse<B>, Error = Error> + 'static,
ClaimsType: DeserializeOwned + 'static,
impl<S, B, ClaimsType> Transform<S, ServiceRequest> for AuthenticateMiddlewareFactory<ClaimsType> where
S: Service<ServiceRequest, Response = ServiceResponse<B>, Error = Error> + 'static,
ClaimsType: DeserializeOwned + 'static,
type Response = ServiceResponse<B>
type Response = ServiceResponse<B>
Responses produced by the service.
type Transform = AuthenticateMiddleware<S, ClaimsType>
type Transform = AuthenticateMiddleware<S, ClaimsType>
The TransformService value created by this factory
type Future = Ready<Result<<AuthenticateMiddlewareFactory<ClaimsType> as Transform<S, ServiceRequest>>::Transform, <AuthenticateMiddlewareFactory<ClaimsType> as Transform<S, ServiceRequest>>::InitError>>
type Future = Ready<Result<<AuthenticateMiddlewareFactory<ClaimsType> as Transform<S, ServiceRequest>>::Transform, <AuthenticateMiddlewareFactory<ClaimsType> as Transform<S, ServiceRequest>>::InitError>>
The future response value.
sourcefn new_transform(&self, service: S) -> Self::Future
fn new_transform(&self, service: S) -> Self::Future
Creates and returns a new Transform component, asynchronously
Auto Trait Implementations
impl<ClaimsType> !RefUnwindSafe for AuthenticateMiddlewareFactory<ClaimsType>
impl<ClaimsType> Send for AuthenticateMiddlewareFactory<ClaimsType> where
ClaimsType: Send,
impl<ClaimsType> Sync for AuthenticateMiddlewareFactory<ClaimsType> where
ClaimsType: Sync,
impl<ClaimsType> Unpin for AuthenticateMiddlewareFactory<ClaimsType> where
ClaimsType: Unpin,
impl<ClaimsType> !UnwindSafe for AuthenticateMiddlewareFactory<ClaimsType>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a
WithDispatch wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber to this type, returning a
WithDispatch wrapper. Read more