pub trait AuthorizationProvider: DynClone + Debug + Sync + Send {
fn sign(
&self,
request: &mut Request<'_, RequestBody<'_>>
) -> Result<(), AuthorizationError>;
fn async_sign(
&'a self,
request: &'a mut Request<'_, AsyncRequestBody<'_>>
) -> Pin<Box<dyn Future<Output = Result<(), AuthorizationError>> + Send + 'a, Global>>;
}
Expand description
七牛鉴权签名接口
对 HTTP 请求进行签名
Required methods
使用指定的鉴权方式对 HTTP 请求进行签名
该方法的异步版本为 Self::async_sign
。
Implementations on Foreign Types
impl<'_> AuthorizationProvider for Authorization<'_>
impl<'_> AuthorizationProvider for Authorization<'_>
impl<P> AuthorizationProvider for UploadTokenAuthorization<P> where
P: UploadTokenProvider + Clone,
impl<P> AuthorizationProvider for UploadTokenAuthorization<P> where
P: UploadTokenProvider + Clone,
impl<T> AuthorizationProvider for Rc<T> where
T: AuthorizationProvider + ?Sized,
Rc<T>: DynClone,
Rc<T>: Debug,
Rc<T>: Sync,
Rc<T>: Send,
impl<T> AuthorizationProvider for Rc<T> where
T: AuthorizationProvider + ?Sized,
Rc<T>: DynClone,
Rc<T>: Debug,
Rc<T>: Sync,
Rc<T>: Send,
fn sign(
&self,
request: &mut Request<'_, RequestBody<'_>>
) -> Result<(), AuthorizationError>
fn sign(
&self,
request: &mut Request<'_, RequestBody<'_>>
) -> Result<(), AuthorizationError>
使用指定的鉴权方式对 HTTP 请求进行签名
该方法的异步版本为 Self::async_sign
。
impl<P> AuthorizationProvider for CredentialAuthorizationV2<P> where
P: CredentialProvider + Clone,
impl<P> AuthorizationProvider for CredentialAuthorizationV2<P> where
P: CredentialProvider + Clone,
impl<P> AuthorizationProvider for CredentialAuthorizationV1<P> where
P: CredentialProvider + Clone,
impl<P> AuthorizationProvider for CredentialAuthorizationV1<P> where
P: CredentialProvider + Clone,
impl<'b, T> AuthorizationProvider for &'b mut T where
T: 'b + AuthorizationProvider + ?Sized,
&'b mut T: DynClone,
&'b mut T: Debug,
&'b mut T: Sync,
&'b mut T: Send,
impl<'b, T> AuthorizationProvider for &'b mut T where
T: 'b + AuthorizationProvider + ?Sized,
&'b mut T: DynClone,
&'b mut T: Debug,
&'b mut T: Sync,
&'b mut T: Send,
impl<'b, T> AuthorizationProvider for &'b T where
T: 'b + AuthorizationProvider + ?Sized,
&'b T: DynClone,
&'b T: Debug,
&'b T: Sync,
&'b T: Send,
impl<'b, T> AuthorizationProvider for &'b T where
T: 'b + AuthorizationProvider + ?Sized,
&'b T: DynClone,
&'b T: Debug,
&'b T: Sync,
&'b T: Send,
impl<T> AuthorizationProvider for Arc<T> where
T: AuthorizationProvider + ?Sized,
Arc<T>: DynClone,
Arc<T>: Debug,
Arc<T>: Sync,
Arc<T>: Send,
impl<T> AuthorizationProvider for Arc<T> where
T: AuthorizationProvider + ?Sized,
Arc<T>: DynClone,
Arc<T>: Debug,
Arc<T>: Sync,
Arc<T>: Send,
fn sign(
&self,
request: &mut Request<'_, RequestBody<'_>>
) -> Result<(), AuthorizationError>
fn sign(
&self,
request: &mut Request<'_, RequestBody<'_>>
) -> Result<(), AuthorizationError>
使用指定的鉴权方式对 HTTP 请求进行签名
该方法的异步版本为 Self::async_sign
。
impl<T> AuthorizationProvider for Box<T, Global> where
T: AuthorizationProvider + ?Sized,
Box<T, Global>: DynClone,
Box<T, Global>: Debug,
Box<T, Global>: Sync,
Box<T, Global>: Send,
impl<T> AuthorizationProvider for Box<T, Global> where
T: AuthorizationProvider + ?Sized,
Box<T, Global>: DynClone,
Box<T, Global>: Debug,
Box<T, Global>: Sync,
Box<T, Global>: Send,
fn sign(
&self,
request: &mut Request<'_, RequestBody<'_>>
) -> Result<(), AuthorizationError>
fn sign(
&self,
request: &mut Request<'_, RequestBody<'_>>
) -> Result<(), AuthorizationError>
使用指定的鉴权方式对 HTTP 请求进行签名
该方法的异步版本为 Self::async_sign
。