pub struct StaticProvider { /* private fields */ }Expand description
Returns a fixed Credential forever. Useful for pre-minted tokens whose
lifetime exceeds the run, or for sharing one static bearer token across many
connectors.
Implementations§
Source§impl StaticProvider
impl StaticProvider
Sourcepub fn new(credential: Credential) -> Self
pub fn new(credential: Credential) -> Self
A static credential of any Credential shape.
Sourcepub fn from_config(config: &Value) -> Result<Self, FaucetError>
pub fn from_config(config: &Value) -> Result<Self, FaucetError>
Build from a { token } / { header, value } / { username, password }
config object.
Trait Implementations§
Source§impl AuthProvider for StaticProvider
impl AuthProvider for StaticProvider
Source§fn credential<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Credential, FaucetError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn credential<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Credential, FaucetError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Return a currently-valid credential, refreshing if needed.
Source§fn provider_name(&self) -> &'static str
fn provider_name(&self) -> &'static str
Stable, non-empty name for diagnostics and metrics.
Source§fn invalidate<'life0, 'life1, 'async_trait>(
&'life0 self,
_stale: &'life1 Credential,
) -> Pin<Box<dyn Future<Output = Result<Credential, FaucetError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn invalidate<'life0, 'life1, 'async_trait>(
&'life0 self,
_stale: &'life1 Credential,
) -> Pin<Box<dyn Future<Output = Result<Credential, FaucetError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Force a refresh iff the cached credential still equals
stale
(compare-and-swap). Multiple connectors that hit a 401 with the same
token collapse into a single refresh; callers holding an already-rotated
token get the new one without triggering another fetch. Read moreSource§fn sign_request<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_method: &'life1 str,
_url: &'life2 str,
_query: &'life3 BTreeMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<Option<Credential>, FaucetError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Self: 'async_trait,
fn sign_request<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_method: &'life1 str,
_url: &'life2 str,
_query: &'life3 BTreeMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<Option<Credential>, FaucetError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Self: 'async_trait,
Per-request signing hook (OAuth1 and similar, #496). Read more
Source§fn request_auth<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_method: &'life1 str,
_url: &'life2 str,
_query: &'life3 BTreeMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<RequestAuth, FaucetError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Self: 'async_trait,
fn request_auth<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_method: &'life1 str,
_url: &'life2 str,
_query: &'life3 BTreeMap<String, String>,
) -> Pin<Box<dyn Future<Output = Result<RequestAuth, FaucetError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Self: 'async_trait,
Richer per-request auth for multi-step flows (#511): credential
placements across header / query / cookie / body plus an optional
dynamic base-URL override. Read more
Source§fn reauth_statuses(&self) -> &[u16]
fn reauth_statuses(&self) -> &[u16]
HTTP status codes on which the connector should force a re-auth
(via
invalidate) and retry the request once. Read moreSource§impl Clone for StaticProvider
impl Clone for StaticProvider
Source§fn clone(&self) -> StaticProvider
fn clone(&self) -> StaticProvider
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 moreAuto Trait Implementations§
impl Freeze for StaticProvider
impl RefUnwindSafe for StaticProvider
impl Send for StaticProvider
impl Sync for StaticProvider
impl Unpin for StaticProvider
impl UnsafeUnpin for StaticProvider
impl UnwindSafe for StaticProvider
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