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 Freeze for Builder
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.