pub struct BearerTokenAuthorizationPolicy { /* private fields */ }Expand description
Authentication policy for a bearer token.
Implementations§
Source§impl BearerTokenAuthorizationPolicy
impl BearerTokenAuthorizationPolicy
Sourcepub fn new<A, B>(credential: Arc<dyn TokenCredential>, scopes: A) -> Self
pub fn new<A, B>(credential: Arc<dyn TokenCredential>, scopes: A) -> Self
Creates a new BearerTokenAuthorizationPolicy.
Sourcepub fn with_on_request(self, on_request: Arc<dyn OnRequest>) -> Self
pub fn with_on_request(self, on_request: Arc<dyn OnRequest>) -> Self
Sets a callback for send to invoke once on each request it receives, before sending the request.
See OnRequest for more details. When not set, the policy authorizes each request using the credential
and scopes specified to new.
Sourcepub fn with_on_challenge(self, on_challenge: Arc<dyn OnChallenge>) -> Self
pub fn with_on_challenge(self, on_challenge: Arc<dyn OnChallenge>) -> Self
Sets a callback to invoke upon receiving a 401 Unauthorized response with an authentication challenge.
See OnChallenge for more details. When not set, send returns 401 responses without attempting to
handle their challenges.
Trait Implementations§
Source§impl Clone for BearerTokenAuthorizationPolicy
impl Clone for BearerTokenAuthorizationPolicy
Source§fn clone(&self) -> BearerTokenAuthorizationPolicy
fn clone(&self) -> BearerTokenAuthorizationPolicy
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Policy for BearerTokenAuthorizationPolicy
impl Policy for BearerTokenAuthorizationPolicy
Source§fn send<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
ctx: &'life1 Context<'_>,
request: &'life2 mut Request,
next: &'life3 [Arc<dyn Policy>],
) -> Pin<Box<dyn Future<Output = PolicyResult> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn send<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
ctx: &'life1 Context<'_>,
request: &'life2 mut Request,
next: &'life3 [Arc<dyn Policy>],
) -> Pin<Box<dyn Future<Output = PolicyResult> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Send the request through this policy and the subsequent policies in the pipeline. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for BearerTokenAuthorizationPolicy
impl !UnwindSafe for BearerTokenAuthorizationPolicy
impl Freeze for BearerTokenAuthorizationPolicy
impl Send for BearerTokenAuthorizationPolicy
impl Sync for BearerTokenAuthorizationPolicy
impl Unpin for BearerTokenAuthorizationPolicy
impl UnsafeUnpin for BearerTokenAuthorizationPolicy
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> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ServiceExt for T
impl<T> ServiceExt for T
Source§fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
Apply a transformation to the response body. Read more
Source§fn decompression(self) -> Decompression<Self>where
Self: Sized,
fn decompression(self) -> Decompression<Self>where
Self: Sized,
Decompress response bodies. Read more
Source§fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using HTTP status codes. Read more
Source§fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using gRPC headers. Read more