Struct aws_config::profile::credentials::Builder
source · pub struct Builder { /* private fields */ }
Expand description
Builder for ProfileFileCredentialsProvider
Implementations§
source§impl Builder
impl Builder
sourcepub fn configure(self, provider_config: &ProviderConfig) -> Self
pub fn configure(self, provider_config: &ProviderConfig) -> Self
Override the configuration for the ProfileFileCredentialsProvider
Examples
use aws_config::profile::ProfileFileCredentialsProvider;
use aws_config::provider_config::ProviderConfig;
let provider = ProfileFileCredentialsProvider::builder()
.configure(&ProviderConfig::with_default_region().await)
.build();
sourcepub fn with_custom_provider(
self,
name: impl Into<Cow<'static, str>>,
provider: impl ProvideCredentials + 'static
) -> Self
pub fn with_custom_provider( self, name: impl Into<Cow<'static, str>>, provider: impl ProvideCredentials + 'static ) -> Self
Adds a custom credential source
Examples
use aws_credential_types::provider::{self, future, ProvideCredentials};
use aws_config::profile::ProfileFileCredentialsProvider;
#[derive(Debug)]
struct MyCustomProvider;
impl MyCustomProvider {
async fn load_credentials(&self) -> provider::Result {
todo!()
}
}
impl ProvideCredentials for MyCustomProvider {
fn provide_credentials<'a>(&'a self) -> future::ProvideCredentials where Self: 'a {
future::ProvideCredentials::new(self.load_credentials())
}
}
let provider = ProfileFileCredentialsProvider::builder()
.with_custom_provider("Custom", MyCustomProvider)
.build();
sourcepub fn profile_name(self, profile_name: impl Into<String>) -> Self
pub fn profile_name(self, profile_name: impl Into<String>) -> Self
Override the profile name used by the ProfileFileCredentialsProvider
sourcepub fn profile_files(self, profile_files: ProfileFiles) -> Self
pub fn profile_files(self, profile_files: ProfileFiles) -> Self
Set the profile file that should be used by the ProfileFileCredentialsProvider
sourcepub fn build(self) -> ProfileFileCredentialsProvider
pub fn build(self) -> ProfileFileCredentialsProvider
Builds a ProfileFileCredentialsProvider
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for Builder
impl Send for Builder
impl Sync for Builder
impl Unpin for Builder
impl !UnwindSafe for Builder
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> 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>
Creates a shared type from an unshared type.