Struct rusoto_sts::StsAssumeRoleSessionCredentialsProvider [−][src]
AwsCredentials provider that calls
AssumeRole
using the provided StsClient.
To use with MFA, pass in the MFA serial number then set the MFA code.
You will need to ensure the provider has a valid code each time you
acquire a new STS token.
Implementations
impl StsAssumeRoleSessionCredentialsProvider
[src][−]
pub fn new(
sts_client: StsClient,
role_arn: String,
session_name: String,
external_id: Option<String>,
session_duration: Option<Duration>,
scope_down_policy: Option<String>,
mfa_serial: Option<String>
) -> StsAssumeRoleSessionCredentialsProvider
[src][−]
sts_client: StsClient,
role_arn: String,
session_name: String,
external_id: Option<String>,
session_duration: Option<Duration>,
scope_down_policy: Option<String>,
mfa_serial: Option<String>
) -> StsAssumeRoleSessionCredentialsProvider
Creates a new StsAssumeRoleSessionCredentialsProvider
with the given
StsClient and session parameters.
sts_client
- StsClient to use to acquire session tokens.role_arn
- The ARN of the role to assume.session_name
- An identifier for the assumed role session. Minimum length of 2. Maximum length of 64. Pattern:[\w+=,.@-]*
external_id
-session_duration
- Duration of session tokens. Default 1 hour.scope_down_policy
- Optional inline IAM policy in JSON format to further restrict the access granted to the negotiated session.mfa_serial
- Optional MFA hardware device serial number or virtual device ARN. Useset_mfa_code
to set the MFA code.
pub fn set_mfa_code<S>(&mut self, code: S) where
S: Into<String>,
[src][−]
S: Into<String>,
Set the MFA code for use when acquiring session tokens.
pub fn clear_mfa_code(&mut self)
[src][−]
Clear the MFA code.
pub async fn assume_role(
&self
) -> Result<AwsCredentials, RusotoError<AssumeRoleError>>
[src][−]
&self
) -> Result<AwsCredentials, RusotoError<AssumeRoleError>>
Calls AssumeRole
to get a session token from the STS Api.
Optionally uses MFA if the MFA serial number and code are set.
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for StsAssumeRoleSessionCredentialsProvider
impl Send for StsAssumeRoleSessionCredentialsProvider
impl Sync for StsAssumeRoleSessionCredentialsProvider
impl Unpin for StsAssumeRoleSessionCredentialsProvider
impl !UnwindSafe for StsAssumeRoleSessionCredentialsProvider
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,
impl<T> From<T> for T
[src][+]
impl<T> Instrument for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> Same<T> for T
[src]
type Output = T
Should always be Self
impl<T> Sealed<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,