Struct rusoto_credential::ContainerProvider [−][src]
Provides AWS credentials from a task’s IAM role.
The provider has a default timeout of 30 seconds. While it should work well for most setups,
you can change the timeout using the set_timeout
method.
As described in Amazon’s
ECS developers guide,
Containers started as part of Tasks using IAM Roles for Tasks will be provided with a relative
URL stored in the environment variable AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
, which will
be used to obtain the AWS credentials. If that environment variable is not set, rusoto will use
the URL set in environment variable AWS_CONTAINER_CREDENTIALS_FULL_URI
to obtain AWS
credentials and will (optionally) also set the Authorization
header to the value of
environment variable AWS_CONTAINER_AUTHORIZATION_TOKEN
.
Example
use std::time::Duration; use rusoto_credential::ContainerProvider; let mut provider = ContainerProvider::new(); // you can overwrite the default timeout like this: provider.set_timeout(Duration::from_secs(60));
Implementations
impl ContainerProvider
[src]
pub fn new() -> Self
[src]
Create a new provider with the given handle.
pub fn set_timeout(&mut self, timeout: Duration)
[src]
Set the timeout on the provider to the specified duration.
Trait Implementations
impl Clone for ContainerProvider
[src]
fn clone(&self) -> ContainerProvider
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for ContainerProvider
[src]
impl Default for ContainerProvider
[src]
Default: create a new provider with the given handle.
impl ProvideAwsCredentials for ContainerProvider
[src]
fn credentials<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<AwsCredentials, CredentialsError>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<AwsCredentials, CredentialsError>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Auto Trait Implementations
impl !RefUnwindSafe for ContainerProvider
impl Send for ContainerProvider
impl Sync for ContainerProvider
impl Unpin for ContainerProvider
impl !UnwindSafe for ContainerProvider
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,