Skip to main content

ProvideCredential

Trait ProvideCredential 

pub trait ProvideCredential:
    Debug
    + Send
    + Sync
    + Unpin
    + 'static {
    type Credential: Send + Sync + Unpin + 'static;

    // Required method
    fn provide_credential(
        &self,
        ctx: &Context,
    ) -> impl Future<Output = Result<Option<Self::Credential>, Error>> + MaybeSend;
}
Available on crate feature reqsign only.
Expand description

ProvideCredential is the trait used by signer to load the credential from the environment. ` Service may require different credential to sign the request, for example, AWS require access key and secret key, while Google Cloud Storage require token.

Required Associated Types§

type Credential: Send + Sync + Unpin + 'static

Credential returned by this loader.

Typically, it will be a credential.

Required Methods§

fn provide_credential( &self, ctx: &Context, ) -> impl Future<Output = Result<Option<Self::Credential>, Error>> + MaybeSend

Load signing credential from current env.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

§

impl ProvideCredential for AssumeRoleCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<AssumeRoleCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for AssumeRoleWithOidcCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<AssumeRoleWithOidcCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for AssumeRoleWithWebIdentityCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<AssumeRoleWithWebIdentityCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for ConfigCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, _ctx: &Context, ) -> Result<Option<<ConfigCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for ConfigCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, _ctx: &Context, ) -> Result<Option<<ConfigCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for ConfigFileCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<ConfigFileCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for CredentialsFileCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<CredentialsFileCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for CredentialsUriCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<CredentialsUriCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for DefaultCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<DefaultCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for DefaultCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<DefaultCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for DefaultCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<DefaultCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for DefaultCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<DefaultCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for EcsRamRoleCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<EcsRamRoleCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for EnvCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<EnvCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for EnvCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<EnvCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for EnvCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<EnvCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for EnvCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<EnvCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for OssProfileCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, ctx: &Context, ) -> Result<Option<<OssProfileCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for StaticCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, _ctx: &Context, ) -> Result<Option<<StaticCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for StaticCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, _ctx: &Context, ) -> Result<Option<<StaticCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for StaticCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, _: &Context, ) -> Result<Option<<StaticCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl ProvideCredential for StaticCredentialProvider

§

type Credential = Credential

§

async fn provide_credential( &self, _ctx: &Context, ) -> Result<Option<<StaticCredentialProvider as ProvideCredential>::Credential>, Error>

§

impl<T> ProvideCredential for Arc<T>

Implementors§

§

impl ProvideCredential for opendal::services::reqsign_aws_v4::AssumeRoleCredentialProvider

§

impl ProvideCredential for opendal::services::reqsign_aws_v4::AssumeRoleWithWebIdentityCredentialProvider

§

impl ProvideCredential for AzureCliCredentialProvider

§

impl ProvideCredential for AzurePipelinesCredentialProvider

§

impl ProvideCredential for ClientCertificateCredentialProvider

§

impl ProvideCredential for ClientSecretCredentialProvider

§

impl ProvideCredential for CognitoIdentityCredentialProvider

§

impl ProvideCredential for opendal::services::reqsign_azure_storage::DefaultCredentialProvider

§

impl ProvideCredential for opendal::services::reqsign_google::DefaultCredentialProvider

§

impl ProvideCredential for opendal::services::reqsign_aws_v4::DefaultCredentialProvider

§

impl ProvideCredential for ECSCredentialProvider

§

impl ProvideCredential for opendal::services::reqsign_azure_storage::EnvCredentialProvider

§

impl ProvideCredential for opendal::services::reqsign_google::EnvCredentialProvider

§

impl ProvideCredential for opendal::services::reqsign_aws_v4::EnvCredentialProvider

§

impl ProvideCredential for FileCredentialProvider

§

impl ProvideCredential for IMDSv2CredentialProvider

§

impl ProvideCredential for ImdsCredentialProvider

§

impl ProvideCredential for ProcessCredentialProvider

§

impl ProvideCredential for ProfileCredentialProvider

§

impl ProvideCredential for S3ExpressSessionProvider

§

impl ProvideCredential for SSOCredentialProvider

§

impl ProvideCredential for opendal::services::reqsign_azure_storage::StaticCredentialProvider

§

impl ProvideCredential for opendal::services::reqsign_google::StaticCredentialProvider

§

impl ProvideCredential for opendal::services::reqsign_aws_v4::StaticCredentialProvider

§

impl ProvideCredential for TokenCredentialProvider

§

impl ProvideCredential for VmMetadataCredentialProvider

§

impl ProvideCredential for WellKnownCredentialProvider

§

impl ProvideCredential for WorkloadIdentityCredentialProvider

§

impl<C> ProvideCredential for ProvideCredentialChain<C>
where C: Send + Sync + Unpin + 'static,

§

type Credential = C