aws_sdk_iam/client/create_saml_provider.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3 /// Constructs a fluent builder for the [`CreateSAMLProvider`](crate::operation::create_saml_provider::builders::CreateSAMLProviderFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`saml_metadata_document(impl Into<String>)`](crate::operation::create_saml_provider::builders::CreateSAMLProviderFluentBuilder::saml_metadata_document) / [`set_saml_metadata_document(Option<String>)`](crate::operation::create_saml_provider::builders::CreateSAMLProviderFluentBuilder::set_saml_metadata_document):<br>required: **true**<br><p>An XML document generated by an identity provider (IdP) that supports SAML 2.0. The document includes the issuer's name, expiration information, and keys that can be used to validate the SAML authentication response (assertions) that are received from the IdP. You must generate the metadata document using the identity management software that is used as your organization's IdP.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html">About SAML 2.0-based federation</a> in the <i>IAM User Guide</i></p><br>
7 /// - [`name(impl Into<String>)`](crate::operation::create_saml_provider::builders::CreateSAMLProviderFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_saml_provider::builders::CreateSAMLProviderFluentBuilder::set_name):<br>required: **true**<br><p>The name of the provider to create.</p> <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p><br>
8 /// - [`tags(Tag)`](crate::operation::create_saml_provider::builders::CreateSAMLProviderFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_saml_provider::builders::CreateSAMLProviderFluentBuilder::set_tags):<br>required: **false**<br><p>A list of tags that you want to attach to the new IAM SAML provider. Each tag consists of a key name and an associated value. For more information about tagging, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html">Tagging IAM resources</a> in the <i>IAM User Guide</i>.</p><note> <p>If any one of the tags is invalid or if you exceed the allowed maximum number of tags, then the entire request fails and the resource is not created.</p> </note><br>
9 /// - [`assertion_encryption_mode(AssertionEncryptionModeType)`](crate::operation::create_saml_provider::builders::CreateSAMLProviderFluentBuilder::assertion_encryption_mode) / [`set_assertion_encryption_mode(Option<AssertionEncryptionModeType>)`](crate::operation::create_saml_provider::builders::CreateSAMLProviderFluentBuilder::set_assertion_encryption_mode):<br>required: **false**<br><p>Specifies the encryption setting for the SAML provider.</p><br>
10 /// - [`add_private_key(impl Into<String>)`](crate::operation::create_saml_provider::builders::CreateSAMLProviderFluentBuilder::add_private_key) / [`set_add_private_key(Option<String>)`](crate::operation::create_saml_provider::builders::CreateSAMLProviderFluentBuilder::set_add_private_key):<br>required: **false**<br><p>The private key generated from your external identity provider. The private key must be a .pem file that uses AES-GCM or AES-CBC encryption algorithm to decrypt SAML assertions.</p><br>
11 /// - On success, responds with [`CreateSamlProviderOutput`](crate::operation::create_saml_provider::CreateSamlProviderOutput) with field(s):
12 /// - [`saml_provider_arn(Option<String>)`](crate::operation::create_saml_provider::CreateSamlProviderOutput::saml_provider_arn): <p>The Amazon Resource Name (ARN) of the new SAML provider resource in IAM.</p>
13 /// - [`tags(Option<Vec::<Tag>>)`](crate::operation::create_saml_provider::CreateSamlProviderOutput::tags): <p>A list of tags that are attached to the new IAM SAML provider. The returned list of tags is sorted by tag key. For more information about tagging, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html">Tagging IAM resources</a> in the <i>IAM User Guide</i>.</p>
14 /// - On failure, responds with [`SdkError<CreateSAMLProviderError>`](crate::operation::create_saml_provider::CreateSAMLProviderError)
15 pub fn create_saml_provider(&self) -> crate::operation::create_saml_provider::builders::CreateSAMLProviderFluentBuilder {
16 crate::operation::create_saml_provider::builders::CreateSAMLProviderFluentBuilder::new(self.handle.clone())
17 }
18}