1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`AssumeDecoratedRoleWithSAML`](crate::operation::assume_decorated_role_with_saml::builders::AssumeDecoratedRoleWithSAMLFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`saml_assertion(impl Into<String>)`](crate::operation::assume_decorated_role_with_saml::builders::AssumeDecoratedRoleWithSAMLFluentBuilder::saml_assertion) / [`set_saml_assertion(Option<String>)`](crate::operation::assume_decorated_role_with_saml::builders::AssumeDecoratedRoleWithSAMLFluentBuilder::set_saml_assertion):<br>required: **true**<br><p>A SAML assertion consisting of an assertion statement for the user who needs temporary credentials. This must match the SAML assertion that was issued to IAM. This must be Base64 encoded.</p><br>
    ///   - [`role_arn(impl Into<String>)`](crate::operation::assume_decorated_role_with_saml::builders::AssumeDecoratedRoleWithSAMLFluentBuilder::role_arn) / [`set_role_arn(Option<String>)`](crate::operation::assume_decorated_role_with_saml::builders::AssumeDecoratedRoleWithSAMLFluentBuilder::set_role_arn):<br>required: **true**<br><p>The role that represents an IAM principal whose scope down policy allows it to call credential vending APIs such as <code>GetTemporaryTableCredentials</code>. The caller must also have iam:PassRole permission on this role.</p><br>
    ///   - [`principal_arn(impl Into<String>)`](crate::operation::assume_decorated_role_with_saml::builders::AssumeDecoratedRoleWithSAMLFluentBuilder::principal_arn) / [`set_principal_arn(Option<String>)`](crate::operation::assume_decorated_role_with_saml::builders::AssumeDecoratedRoleWithSAMLFluentBuilder::set_principal_arn):<br>required: **true**<br><p>The Amazon Resource Name (ARN) of the SAML provider in IAM that describes the IdP.</p><br>
    ///   - [`duration_seconds(i32)`](crate::operation::assume_decorated_role_with_saml::builders::AssumeDecoratedRoleWithSAMLFluentBuilder::duration_seconds) / [`set_duration_seconds(Option<i32>)`](crate::operation::assume_decorated_role_with_saml::builders::AssumeDecoratedRoleWithSAMLFluentBuilder::set_duration_seconds):<br>required: **false**<br><p>The time period, between 900 and 43,200 seconds, for the timeout of the temporary credentials.</p><br>
    /// - On success, responds with [`AssumeDecoratedRoleWithSamlOutput`](crate::operation::assume_decorated_role_with_saml::AssumeDecoratedRoleWithSamlOutput) with field(s):
    ///   - [`access_key_id(Option<String>)`](crate::operation::assume_decorated_role_with_saml::AssumeDecoratedRoleWithSamlOutput::access_key_id): <p>The access key ID for the temporary credentials. (The access key consists of an access key ID and a secret key).</p>
    ///   - [`secret_access_key(Option<String>)`](crate::operation::assume_decorated_role_with_saml::AssumeDecoratedRoleWithSamlOutput::secret_access_key): <p>The secret key for the temporary credentials. (The access key consists of an access key ID and a secret key).</p>
    ///   - [`session_token(Option<String>)`](crate::operation::assume_decorated_role_with_saml::AssumeDecoratedRoleWithSamlOutput::session_token): <p>The session token for the temporary credentials.</p>
    ///   - [`expiration(Option<DateTime>)`](crate::operation::assume_decorated_role_with_saml::AssumeDecoratedRoleWithSamlOutput::expiration): <p>The date and time when the temporary credentials expire.</p>
    /// - On failure, responds with [`SdkError<AssumeDecoratedRoleWithSAMLError>`](crate::operation::assume_decorated_role_with_saml::AssumeDecoratedRoleWithSAMLError)
    pub fn assume_decorated_role_with_saml(
        &self,
    ) -> crate::operation::assume_decorated_role_with_saml::builders::AssumeDecoratedRoleWithSAMLFluentBuilder {
        crate::operation::assume_decorated_role_with_saml::builders::AssumeDecoratedRoleWithSAMLFluentBuilder::new(self.handle.clone())
    }
}