aws-sdk-iam 1.115.0 → 1.116.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fba2a138c819bcfdf668c6ea67c01e609325a91b3d25a5343d77cffbe5d21c7c
4
- data.tar.gz: 559fd859da110e00823a4952db6934a86683f2d61ba83c2282e132a839e2bcd9
3
+ metadata.gz: e1bda553c4d7c8c92f0afa82ed604e211f83e8ba33e01a5cdae5ef22654d0e54
4
+ data.tar.gz: ba256563bea3926a818a21734db8054dc2873ac58729ed254b805e8ad8d62498
5
5
  SHA512:
6
- metadata.gz: '023814f1895b52888402ff1dd2b8f182f839cb20310efde8097d80ba013e47973e3b0e74f5091c0cdd0554b0845a645b34d5fce8b6eb9761dec5b50520971e42'
7
- data.tar.gz: 01bf17ce824a16f90902603207ec2f39d8fc32d84a5068c88502f8cf0872c003aeb6880ea17f0ca7dc3c47391f6d103d11f6db6779aa22dd8028c99e624e1b2c
6
+ metadata.gz: 03c82968dd555fce32979c3699e08624d5db77bd4cc75a1bd9b8059cfdf6c453a7c35d4985cd2129e15c80a3522da4a8b7e0bcd7a4f0beff6930fffddb445b99
7
+ data.tar.gz: 9f0a9e74dccf48df8f8c05bab331d40733e7acf0a729ce42bc9012146d38267e8235c431722ce1b16f8b3e781b23e36a23cc20624ff8ebc6f140a61d83b7648b
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.116.0 (2025-02-04)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for accepting encrypted SAML assertions. Customers can now configure their identity provider to encrypt the SAML assertions it sends to IAM.
8
+
4
9
  1.115.0 (2025-01-15)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.115.0
1
+ 1.116.0
@@ -529,17 +529,27 @@ module Aws::IAM
529
529
  #
530
530
  # </note>
531
531
  #
532
- # For more information about roles, see [IAM roles][4] in the *IAM User
532
+ # When using the [iam:AssociatedResourceArn][4] condition in a policy to
533
+ # restrict the [PassRole][5] IAM action, special considerations apply if
534
+ # the policy is intended to define access for the
535
+ # `AddRoleToInstanceProfile` action. In this case, you cannot specify a
536
+ # Region or instance ID in the EC2 instance ARN. The ARN value must be
537
+ # `arn:aws:ec2:*:CallerAccountId:instance/*`. Using any other ARN value
538
+ # may lead to unexpected evaluation results.
539
+ #
540
+ # For more information about roles, see [IAM roles][6] in the *IAM User
533
541
  # Guide*. For more information about instance profiles, see [Using
534
- # instance profiles][5] in the *IAM User Guide*.
542
+ # instance profiles][7] in the *IAM User Guide*.
535
543
  #
536
544
  #
537
545
  #
538
546
  # [1]: https://en.wikipedia.org/wiki/Eventual_consistency
539
547
  # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DisassociateIamInstanceProfile.html
540
548
  # [3]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_AssociateIamInstanceProfile.html
541
- # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html
542
- # [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html
549
+ # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_iam-condition-keys.html#available-keys-for-iam
550
+ # [5]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html
551
+ # [6]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html
552
+ # [7]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html
543
553
  #
544
554
  # @option params [required, String] :instance_profile_name
545
555
  # The name of the instance profile to update.
@@ -2102,6 +2112,14 @@ module Aws::IAM
2102
2112
  #
2103
2113
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
2104
2114
  #
2115
+ # @option params [String] :assertion_encryption_mode
2116
+ # Specifies the encryption setting for the SAML provider.
2117
+ #
2118
+ # @option params [String] :add_private_key
2119
+ # The private key generated from your external identity provider. The
2120
+ # private key must be a .pem file that uses AES-GCM or AES-CBC
2121
+ # encryption algorithm to decrypt SAML assertions.
2122
+ #
2105
2123
  # @return [Types::CreateSAMLProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2106
2124
  #
2107
2125
  # * {Types::CreateSAMLProviderResponse#saml_provider_arn #saml_provider_arn} => String
@@ -2118,6 +2136,8 @@ module Aws::IAM
2118
2136
  # value: "tagValueType", # required
2119
2137
  # },
2120
2138
  # ],
2139
+ # assertion_encryption_mode: "Required", # accepts Required, Allowed
2140
+ # add_private_key: "privateKeyType",
2121
2141
  # })
2122
2142
  #
2123
2143
  # @example Response structure
@@ -3907,7 +3927,7 @@ module Aws::IAM
3907
3927
 
3908
3928
  # Disables the management of privileged root user credentials across
3909
3929
  # member accounts in your organization. When you disable this feature,
3910
- # the management account and the delegated admininstrator for IAM can no
3930
+ # the management account and the delegated administrator for IAM can no
3911
3931
  # longer manage root user credentials for member accounts in your
3912
3932
  # organization.
3913
3933
  #
@@ -3950,7 +3970,7 @@ module Aws::IAM
3950
3970
 
3951
3971
  # Disables root user sessions for privileged tasks across member
3952
3972
  # accounts in your organization. When you disable this feature, the
3953
- # management account and the delegated admininstrator for IAM can no
3973
+ # management account and the delegated administrator for IAM can no
3954
3974
  # longer perform privileged tasks on member accounts in your
3955
3975
  # organization.
3956
3976
  #
@@ -4074,7 +4094,7 @@ module Aws::IAM
4074
4094
  # Enables the management of privileged root user credentials across
4075
4095
  # member accounts in your organization. When you enable root credentials
4076
4096
  # management for [centralized root access][1], the management account
4077
- # and the delegated admininstrator for IAM can manage root user
4097
+ # and the delegated administrator for IAM can manage root user
4078
4098
  # credentials for member accounts in your organization.
4079
4099
  #
4080
4100
  # Before you enable centralized root access, you must have an account
@@ -4091,7 +4111,7 @@ module Aws::IAM
4091
4111
  #
4092
4112
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#id_root-user-access-management
4093
4113
  # [2]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html
4094
- # [3]: https://docs.aws.amazon.com/organizations/latest/userguide/services-that-can-integrate-ra.html
4114
+ # [3]: https://docs.aws.amazon.com/organizations/latest/userguide/services-that-can-integrate-iam.html
4095
4115
  #
4096
4116
  # @return [Types::EnableOrganizationsRootCredentialsManagementResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4097
4117
  #
@@ -5967,10 +5987,13 @@ module Aws::IAM
5967
5987
  #
5968
5988
  # @return [Types::GetSAMLProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5969
5989
  #
5990
+ # * {Types::GetSAMLProviderResponse#saml_provider_uuid #saml_provider_uuid} => String
5970
5991
  # * {Types::GetSAMLProviderResponse#saml_metadata_document #saml_metadata_document} => String
5971
5992
  # * {Types::GetSAMLProviderResponse#create_date #create_date} => Time
5972
5993
  # * {Types::GetSAMLProviderResponse#valid_until #valid_until} => Time
5973
5994
  # * {Types::GetSAMLProviderResponse#tags #tags} => Array&lt;Types::Tag&gt;
5995
+ # * {Types::GetSAMLProviderResponse#assertion_encryption_mode #assertion_encryption_mode} => String
5996
+ # * {Types::GetSAMLProviderResponse#private_key_list #private_key_list} => Array&lt;Types::SAMLPrivateKey&gt;
5974
5997
  #
5975
5998
  # @example Request syntax with placeholder values
5976
5999
  #
@@ -5980,12 +6003,17 @@ module Aws::IAM
5980
6003
  #
5981
6004
  # @example Response structure
5982
6005
  #
6006
+ # resp.saml_provider_uuid #=> String
5983
6007
  # resp.saml_metadata_document #=> String
5984
6008
  # resp.create_date #=> Time
5985
6009
  # resp.valid_until #=> Time
5986
6010
  # resp.tags #=> Array
5987
6011
  # resp.tags[0].key #=> String
5988
6012
  # resp.tags[0].value #=> String
6013
+ # resp.assertion_encryption_mode #=> String, one of "Required", "Allowed"
6014
+ # resp.private_key_list #=> Array
6015
+ # resp.private_key_list[0].key_id #=> String
6016
+ # resp.private_key_list[0].timestamp #=> Time
5989
6017
  #
5990
6018
  # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetSAMLProvider AWS API Documentation
5991
6019
  #
@@ -6748,12 +6776,12 @@ module Aws::IAM
6748
6776
  # Lists the account alias associated with the Amazon Web Services
6749
6777
  # account (Note: you can have only one). For information about using an
6750
6778
  # Amazon Web Services account alias, see [Creating, deleting, and
6751
- # listing an Amazon Web Services account alias][1] in the *Amazon Web
6752
- # Services Sign-In User Guide*.
6779
+ # listing an Amazon Web Services account alias][1] in the *IAM User
6780
+ # Guide*.
6753
6781
  #
6754
6782
  #
6755
6783
  #
6756
- # [1]: https://docs.aws.amazon.com/signin/latest/userguide/CreateAccountAlias.html
6784
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/console_account-alias.html#CreateAccountAlias
6757
6785
  #
6758
6786
  # @option params [String] :marker
6759
6787
  # Use this parameter only when paginating results and only after you
@@ -13000,24 +13028,17 @@ module Aws::IAM
13000
13028
  req.send_request(options)
13001
13029
  end
13002
13030
 
13003
- # Updates the metadata document for an existing SAML provider resource
13004
- # object.
13005
- #
13006
- # <note markdown="1"> This operation requires [Signature Version 4][1].
13007
- #
13008
- # </note>
13009
- #
13031
+ # Updates the metadata document, SAML encryption settings, and private
13032
+ # keys for an existing SAML provider. To rotate private keys, add your
13033
+ # new private key and then remove the old key in a separate request.
13010
13034
  #
13011
- #
13012
- # [1]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
13013
- #
13014
- # @option params [required, String] :saml_metadata_document
13035
+ # @option params [String] :saml_metadata_document
13015
13036
  # An XML document generated by an identity provider (IdP) that supports
13016
13037
  # SAML 2.0. The document includes the issuer's name, expiration
13017
13038
  # information, and keys that can be used to validate the SAML
13018
13039
  # authentication response (assertions) that are received from the IdP.
13019
13040
  # You must generate the metadata document using the identity management
13020
- # software that is used as your organization's IdP.
13041
+ # software that is used as your IdP.
13021
13042
  #
13022
13043
  # @option params [required, String] :saml_provider_arn
13023
13044
  # The Amazon Resource Name (ARN) of the SAML provider to update.
@@ -13029,6 +13050,17 @@ module Aws::IAM
13029
13050
  #
13030
13051
  # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
13031
13052
  #
13053
+ # @option params [String] :assertion_encryption_mode
13054
+ # Specifies the encryption setting for the SAML provider.
13055
+ #
13056
+ # @option params [String] :add_private_key
13057
+ # Specifies the new private key from your external identity provider.
13058
+ # The private key must be a .pem file that uses AES-GCM or AES-CBC
13059
+ # encryption algorithm to decrypt SAML assertions.
13060
+ #
13061
+ # @option params [String] :remove_private_key
13062
+ # The Key ID of the private key to remove.
13063
+ #
13032
13064
  # @return [Types::UpdateSAMLProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
13033
13065
  #
13034
13066
  # * {Types::UpdateSAMLProviderResponse#saml_provider_arn #saml_provider_arn} => String
@@ -13036,8 +13068,11 @@ module Aws::IAM
13036
13068
  # @example Request syntax with placeholder values
13037
13069
  #
13038
13070
  # resp = client.update_saml_provider({
13039
- # saml_metadata_document: "SAMLMetadataDocumentType", # required
13071
+ # saml_metadata_document: "SAMLMetadataDocumentType",
13040
13072
  # saml_provider_arn: "arnType", # required
13073
+ # assertion_encryption_mode: "Required", # accepts Required, Allowed
13074
+ # add_private_key: "privateKeyType",
13075
+ # remove_private_key: "privateKeyIdType",
13041
13076
  # })
13042
13077
  #
13043
13078
  # @example Response structure
@@ -13835,7 +13870,7 @@ module Aws::IAM
13835
13870
  tracer: tracer
13836
13871
  )
13837
13872
  context[:gem_name] = 'aws-sdk-iam'
13838
- context[:gem_version] = '1.115.0'
13873
+ context[:gem_version] = '1.116.0'
13839
13874
  Seahorse::Client::Request.new(handlers, context)
13840
13875
  end
13841
13876
 
@@ -332,6 +332,7 @@ module Aws::IAM
332
332
  RoleUsageListType = Shapes::ListShape.new(name: 'RoleUsageListType')
333
333
  RoleUsageType = Shapes::StructureShape.new(name: 'RoleUsageType')
334
334
  SAMLMetadataDocumentType = Shapes::StringShape.new(name: 'SAMLMetadataDocumentType')
335
+ SAMLPrivateKey = Shapes::StructureShape.new(name: 'SAMLPrivateKey')
335
336
  SAMLProviderListEntry = Shapes::StructureShape.new(name: 'SAMLProviderListEntry')
336
337
  SAMLProviderListType = Shapes::ListShape.new(name: 'SAMLProviderListType')
337
338
  SAMLProviderNameType = Shapes::StringShape.new(name: 'SAMLProviderNameType')
@@ -410,6 +411,7 @@ module Aws::IAM
410
411
  accountAliasListType = Shapes::ListShape.new(name: 'accountAliasListType')
411
412
  accountAliasType = Shapes::StringShape.new(name: 'accountAliasType')
412
413
  arnType = Shapes::StringShape.new(name: 'arnType')
414
+ assertionEncryptionModeType = Shapes::StringShape.new(name: 'assertionEncryptionModeType')
413
415
  assignmentStatusType = Shapes::StringShape.new(name: 'assignmentStatusType')
414
416
  attachedPoliciesListType = Shapes::ListShape.new(name: 'attachedPoliciesListType')
415
417
  attachmentCountType = Shapes::IntegerShape.new(name: 'attachmentCountType')
@@ -487,6 +489,8 @@ module Aws::IAM
487
489
  policyScopeType = Shapes::StringShape.new(name: 'policyScopeType')
488
490
  policyType = Shapes::StringShape.new(name: 'policyType')
489
491
  policyVersionIdType = Shapes::StringShape.new(name: 'policyVersionIdType')
492
+ privateKeyIdType = Shapes::StringShape.new(name: 'privateKeyIdType')
493
+ privateKeyList = Shapes::ListShape.new(name: 'privateKeyList')
490
494
  privateKeyType = Shapes::StringShape.new(name: 'privateKeyType')
491
495
  publicKeyFingerprintType = Shapes::StringShape.new(name: 'publicKeyFingerprintType')
492
496
  publicKeyIdType = Shapes::StringShape.new(name: 'publicKeyIdType')
@@ -694,6 +698,8 @@ module Aws::IAM
694
698
  CreateSAMLProviderRequest.add_member(:saml_metadata_document, Shapes::ShapeRef.new(shape: SAMLMetadataDocumentType, required: true, location_name: "SAMLMetadataDocument"))
695
699
  CreateSAMLProviderRequest.add_member(:name, Shapes::ShapeRef.new(shape: SAMLProviderNameType, required: true, location_name: "Name"))
696
700
  CreateSAMLProviderRequest.add_member(:tags, Shapes::ShapeRef.new(shape: tagListType, location_name: "Tags"))
701
+ CreateSAMLProviderRequest.add_member(:assertion_encryption_mode, Shapes::ShapeRef.new(shape: assertionEncryptionModeType, location_name: "AssertionEncryptionMode"))
702
+ CreateSAMLProviderRequest.add_member(:add_private_key, Shapes::ShapeRef.new(shape: privateKeyType, location_name: "AddPrivateKey"))
697
703
  CreateSAMLProviderRequest.struct_class = Types::CreateSAMLProviderRequest
698
704
 
699
705
  CreateSAMLProviderResponse.add_member(:saml_provider_arn, Shapes::ShapeRef.new(shape: arnType, location_name: "SAMLProviderArn"))
@@ -1075,10 +1081,13 @@ module Aws::IAM
1075
1081
  GetSAMLProviderRequest.add_member(:saml_provider_arn, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "SAMLProviderArn"))
1076
1082
  GetSAMLProviderRequest.struct_class = Types::GetSAMLProviderRequest
1077
1083
 
1084
+ GetSAMLProviderResponse.add_member(:saml_provider_uuid, Shapes::ShapeRef.new(shape: privateKeyIdType, location_name: "SAMLProviderUUID"))
1078
1085
  GetSAMLProviderResponse.add_member(:saml_metadata_document, Shapes::ShapeRef.new(shape: SAMLMetadataDocumentType, location_name: "SAMLMetadataDocument"))
1079
1086
  GetSAMLProviderResponse.add_member(:create_date, Shapes::ShapeRef.new(shape: dateType, location_name: "CreateDate"))
1080
1087
  GetSAMLProviderResponse.add_member(:valid_until, Shapes::ShapeRef.new(shape: dateType, location_name: "ValidUntil"))
1081
1088
  GetSAMLProviderResponse.add_member(:tags, Shapes::ShapeRef.new(shape: tagListType, location_name: "Tags"))
1089
+ GetSAMLProviderResponse.add_member(:assertion_encryption_mode, Shapes::ShapeRef.new(shape: assertionEncryptionModeType, location_name: "AssertionEncryptionMode"))
1090
+ GetSAMLProviderResponse.add_member(:private_key_list, Shapes::ShapeRef.new(shape: privateKeyList, location_name: "PrivateKeyList"))
1082
1091
  GetSAMLProviderResponse.struct_class = Types::GetSAMLProviderResponse
1083
1092
 
1084
1093
  GetSSHPublicKeyRequest.add_member(:user_name, Shapes::ShapeRef.new(shape: userNameType, required: true, location_name: "UserName"))
@@ -1767,6 +1776,10 @@ module Aws::IAM
1767
1776
  RoleUsageType.add_member(:resources, Shapes::ShapeRef.new(shape: ArnListType, location_name: "Resources"))
1768
1777
  RoleUsageType.struct_class = Types::RoleUsageType
1769
1778
 
1779
+ SAMLPrivateKey.add_member(:key_id, Shapes::ShapeRef.new(shape: privateKeyIdType, location_name: "KeyId"))
1780
+ SAMLPrivateKey.add_member(:timestamp, Shapes::ShapeRef.new(shape: dateType, location_name: "Timestamp"))
1781
+ SAMLPrivateKey.struct_class = Types::SAMLPrivateKey
1782
+
1770
1783
  SAMLProviderListEntry.add_member(:arn, Shapes::ShapeRef.new(shape: arnType, location_name: "Arn"))
1771
1784
  SAMLProviderListEntry.add_member(:valid_until, Shapes::ShapeRef.new(shape: dateType, location_name: "ValidUntil"))
1772
1785
  SAMLProviderListEntry.add_member(:create_date, Shapes::ShapeRef.new(shape: dateType, location_name: "CreateDate"))
@@ -2028,8 +2041,11 @@ module Aws::IAM
2028
2041
 
2029
2042
  UpdateRoleResponse.struct_class = Types::UpdateRoleResponse
2030
2043
 
2031
- UpdateSAMLProviderRequest.add_member(:saml_metadata_document, Shapes::ShapeRef.new(shape: SAMLMetadataDocumentType, required: true, location_name: "SAMLMetadataDocument"))
2044
+ UpdateSAMLProviderRequest.add_member(:saml_metadata_document, Shapes::ShapeRef.new(shape: SAMLMetadataDocumentType, location_name: "SAMLMetadataDocument"))
2032
2045
  UpdateSAMLProviderRequest.add_member(:saml_provider_arn, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "SAMLProviderArn"))
2046
+ UpdateSAMLProviderRequest.add_member(:assertion_encryption_mode, Shapes::ShapeRef.new(shape: assertionEncryptionModeType, location_name: "AssertionEncryptionMode"))
2047
+ UpdateSAMLProviderRequest.add_member(:add_private_key, Shapes::ShapeRef.new(shape: privateKeyType, location_name: "AddPrivateKey"))
2048
+ UpdateSAMLProviderRequest.add_member(:remove_private_key, Shapes::ShapeRef.new(shape: privateKeyIdType, location_name: "RemovePrivateKey"))
2033
2049
  UpdateSAMLProviderRequest.struct_class = Types::UpdateSAMLProviderRequest
2034
2050
 
2035
2051
  UpdateSAMLProviderResponse.add_member(:saml_provider_arn, Shapes::ShapeRef.new(shape: arnType, location_name: "SAMLProviderArn"))
@@ -2152,6 +2168,8 @@ module Aws::IAM
2152
2168
 
2153
2169
  policyNameListType.member = Shapes::ShapeRef.new(shape: policyNameType)
2154
2170
 
2171
+ privateKeyList.member = Shapes::ShapeRef.new(shape: SAMLPrivateKey)
2172
+
2155
2173
  roleDetailListType.member = Shapes::ShapeRef.new(shape: RoleDetail)
2156
2174
 
2157
2175
  roleListType.member = Shapes::ShapeRef.new(shape: Role)
@@ -580,6 +580,8 @@ module Aws::IAM
580
580
  # value: "tagValueType", # required
581
581
  # },
582
582
  # ],
583
+ # assertion_encryption_mode: "Required", # accepts Required, Allowed
584
+ # add_private_key: "privateKeyType",
583
585
  # })
584
586
  # @param [Hash] options ({})
585
587
  # @option options [required, String] :saml_metadata_document
@@ -622,6 +624,12 @@ module Aws::IAM
622
624
  #
623
625
  #
624
626
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
627
+ # @option options [String] :assertion_encryption_mode
628
+ # Specifies the encryption setting for the SAML provider.
629
+ # @option options [String] :add_private_key
630
+ # The private key generated from your external identity provider. The
631
+ # private key must be a .pem file that uses AES-GCM or AES-CBC
632
+ # encryption algorithm to decrypt SAML assertions.
625
633
  # @return [SamlProvider]
626
634
  def create_saml_provider(options = {})
627
635
  resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
@@ -34,6 +34,12 @@ module Aws::IAM
34
34
  @arn
35
35
  end
36
36
 
37
+ # The unique identifier assigned to the SAML provider.
38
+ # @return [String]
39
+ def saml_provider_uuid
40
+ data[:saml_provider_uuid]
41
+ end
42
+
37
43
  # The XML metadata document that includes information about an identity
38
44
  # provider.
39
45
  # @return [String]
@@ -65,6 +71,18 @@ module Aws::IAM
65
71
  data[:tags]
66
72
  end
67
73
 
74
+ # Specifies the encryption setting for the SAML provider.
75
+ # @return [String]
76
+ def assertion_encryption_mode
77
+ data[:assertion_encryption_mode]
78
+ end
79
+
80
+ # The private key metadata for the SAML provider.
81
+ # @return [Array<Types::SAMLPrivateKey>]
82
+ def private_key_list
83
+ data[:private_key_list]
84
+ end
85
+
68
86
  # @!endgroup
69
87
 
70
88
  # @return [Client]
@@ -219,16 +237,27 @@ module Aws::IAM
219
237
  # @example Request syntax with placeholder values
220
238
  #
221
239
  # saml_provider.update({
222
- # saml_metadata_document: "SAMLMetadataDocumentType", # required
240
+ # saml_metadata_document: "SAMLMetadataDocumentType",
241
+ # assertion_encryption_mode: "Required", # accepts Required, Allowed
242
+ # add_private_key: "privateKeyType",
243
+ # remove_private_key: "privateKeyIdType",
223
244
  # })
224
245
  # @param [Hash] options ({})
225
- # @option options [required, String] :saml_metadata_document
246
+ # @option options [String] :saml_metadata_document
226
247
  # An XML document generated by an identity provider (IdP) that supports
227
248
  # SAML 2.0. The document includes the issuer's name, expiration
228
249
  # information, and keys that can be used to validate the SAML
229
250
  # authentication response (assertions) that are received from the IdP.
230
251
  # You must generate the metadata document using the identity management
231
- # software that is used as your organization's IdP.
252
+ # software that is used as your IdP.
253
+ # @option options [String] :assertion_encryption_mode
254
+ # Specifies the encryption setting for the SAML provider.
255
+ # @option options [String] :add_private_key
256
+ # Specifies the new private key from your external identity provider.
257
+ # The private key must be a .pem file that uses AES-GCM or AES-CBC
258
+ # encryption algorithm to decrypt SAML assertions.
259
+ # @option options [String] :remove_private_key
260
+ # The Key ID of the private key to remove.
232
261
  # @return [Types::UpdateSAMLProviderResponse]
233
262
  def update(options = {})
234
263
  options = options.merge(saml_provider_arn: @arn)
@@ -1401,13 +1401,25 @@ module Aws::IAM
1401
1401
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
1402
1402
  # @return [Array<Types::Tag>]
1403
1403
  #
1404
+ # @!attribute [rw] assertion_encryption_mode
1405
+ # Specifies the encryption setting for the SAML provider.
1406
+ # @return [String]
1407
+ #
1408
+ # @!attribute [rw] add_private_key
1409
+ # The private key generated from your external identity provider. The
1410
+ # private key must be a .pem file that uses AES-GCM or AES-CBC
1411
+ # encryption algorithm to decrypt SAML assertions.
1412
+ # @return [String]
1413
+ #
1404
1414
  # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateSAMLProviderRequest AWS API Documentation
1405
1415
  #
1406
1416
  class CreateSAMLProviderRequest < Struct.new(
1407
1417
  :saml_metadata_document,
1408
1418
  :name,
1409
- :tags)
1410
- SENSITIVE = []
1419
+ :tags,
1420
+ :assertion_encryption_mode,
1421
+ :add_private_key)
1422
+ SENSITIVE = [:add_private_key]
1411
1423
  include Aws::Structure
1412
1424
  end
1413
1425
 
@@ -3995,6 +4007,10 @@ module Aws::IAM
3995
4007
 
3996
4008
  # Contains the response to a successful GetSAMLProvider request.
3997
4009
  #
4010
+ # @!attribute [rw] saml_provider_uuid
4011
+ # The unique identifier assigned to the SAML provider.
4012
+ # @return [String]
4013
+ #
3998
4014
  # @!attribute [rw] saml_metadata_document
3999
4015
  # The XML metadata document that includes information about an
4000
4016
  # identity provider.
@@ -4019,13 +4035,24 @@ module Aws::IAM
4019
4035
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
4020
4036
  # @return [Array<Types::Tag>]
4021
4037
  #
4038
+ # @!attribute [rw] assertion_encryption_mode
4039
+ # Specifies the encryption setting for the SAML provider.
4040
+ # @return [String]
4041
+ #
4042
+ # @!attribute [rw] private_key_list
4043
+ # The private key metadata for the SAML provider.
4044
+ # @return [Array<Types::SAMLPrivateKey>]
4045
+ #
4022
4046
  # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetSAMLProviderResponse AWS API Documentation
4023
4047
  #
4024
4048
  class GetSAMLProviderResponse < Struct.new(
4049
+ :saml_provider_uuid,
4025
4050
  :saml_metadata_document,
4026
4051
  :create_date,
4027
4052
  :valid_until,
4028
- :tags)
4053
+ :tags,
4054
+ :assertion_encryption_mode,
4055
+ :private_key_list)
4029
4056
  SENSITIVE = []
4030
4057
  include Aws::Structure
4031
4058
  end
@@ -9192,6 +9219,33 @@ module Aws::IAM
9192
9219
  include Aws::Structure
9193
9220
  end
9194
9221
 
9222
+ # Contains the private keys for the SAML provider.
9223
+ #
9224
+ # This data type is used as a response element in the GetSAMLProvider
9225
+ # operation.
9226
+ #
9227
+ # @!attribute [rw] key_id
9228
+ # The unique identifier for the SAML private key.
9229
+ # @return [String]
9230
+ #
9231
+ # @!attribute [rw] timestamp
9232
+ # The date and time, in [ISO 8601 date-time ][1] format, when the
9233
+ # private key was uploaded.
9234
+ #
9235
+ #
9236
+ #
9237
+ # [1]: http://www.iso.org/iso/iso8601
9238
+ # @return [Time]
9239
+ #
9240
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/SAMLPrivateKey AWS API Documentation
9241
+ #
9242
+ class SAMLPrivateKey < Struct.new(
9243
+ :key_id,
9244
+ :timestamp)
9245
+ SENSITIVE = []
9246
+ include Aws::Structure
9247
+ end
9248
+
9195
9249
  # Contains the list of SAML providers for this account.
9196
9250
  #
9197
9251
  # @!attribute [rw] arn
@@ -11345,7 +11399,7 @@ module Aws::IAM
11345
11399
  # expiration information, and keys that can be used to validate the
11346
11400
  # SAML authentication response (assertions) that are received from the
11347
11401
  # IdP. You must generate the metadata document using the identity
11348
- # management software that is used as your organization's IdP.
11402
+ # management software that is used as your IdP.
11349
11403
  # @return [String]
11350
11404
  #
11351
11405
  # @!attribute [rw] saml_provider_arn
@@ -11359,12 +11413,29 @@ module Aws::IAM
11359
11413
  # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
11360
11414
  # @return [String]
11361
11415
  #
11416
+ # @!attribute [rw] assertion_encryption_mode
11417
+ # Specifies the encryption setting for the SAML provider.
11418
+ # @return [String]
11419
+ #
11420
+ # @!attribute [rw] add_private_key
11421
+ # Specifies the new private key from your external identity provider.
11422
+ # The private key must be a .pem file that uses AES-GCM or AES-CBC
11423
+ # encryption algorithm to decrypt SAML assertions.
11424
+ # @return [String]
11425
+ #
11426
+ # @!attribute [rw] remove_private_key
11427
+ # The Key ID of the private key to remove.
11428
+ # @return [String]
11429
+ #
11362
11430
  # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UpdateSAMLProviderRequest AWS API Documentation
11363
11431
  #
11364
11432
  class UpdateSAMLProviderRequest < Struct.new(
11365
11433
  :saml_metadata_document,
11366
- :saml_provider_arn)
11367
- SENSITIVE = []
11434
+ :saml_provider_arn,
11435
+ :assertion_encryption_mode,
11436
+ :add_private_key,
11437
+ :remove_private_key)
11438
+ SENSITIVE = [:add_private_key]
11368
11439
  include Aws::Structure
11369
11440
  end
11370
11441
 
data/lib/aws-sdk-iam.rb CHANGED
@@ -76,7 +76,7 @@ module Aws::IAM
76
76
  autoload :UserPolicy, 'aws-sdk-iam/user_policy'
77
77
  autoload :VirtualMfaDevice, 'aws-sdk-iam/virtual_mfa_device'
78
78
 
79
- GEM_VERSION = '1.115.0'
79
+ GEM_VERSION = '1.116.0'
80
80
 
81
81
  end
82
82
 
data/sig/client.rbs CHANGED
@@ -267,7 +267,9 @@ module Aws
267
267
  key: ::String,
268
268
  value: ::String
269
269
  },
270
- ]
270
+ ],
271
+ ?assertion_encryption_mode: ("Required" | "Allowed"),
272
+ ?add_private_key: ::String
271
273
  ) -> _CreateSAMLProviderResponseSuccess
272
274
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateSAMLProviderResponseSuccess
273
275
 
@@ -803,10 +805,13 @@ module Aws
803
805
 
804
806
  interface _GetSAMLProviderResponseSuccess
805
807
  include ::Seahorse::Client::_ResponseSuccess[Types::GetSAMLProviderResponse]
808
+ def saml_provider_uuid: () -> ::String
806
809
  def saml_metadata_document: () -> ::String
807
810
  def create_date: () -> ::Time
808
811
  def valid_until: () -> ::Time
809
812
  def tags: () -> ::Array[Types::Tag]
813
+ def assertion_encryption_mode: () -> ("Required" | "Allowed")
814
+ def private_key_list: () -> ::Array[Types::SAMLPrivateKey]
810
815
  end
811
816
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IAM/Client.html#get_saml_provider-instance_method
812
817
  def get_saml_provider: (
@@ -1770,8 +1775,11 @@ module Aws
1770
1775
  end
1771
1776
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IAM/Client.html#update_saml_provider-instance_method
1772
1777
  def update_saml_provider: (
1773
- saml_metadata_document: ::String,
1774
- saml_provider_arn: ::String
1778
+ ?saml_metadata_document: ::String,
1779
+ saml_provider_arn: ::String,
1780
+ ?assertion_encryption_mode: ("Required" | "Allowed"),
1781
+ ?add_private_key: ::String,
1782
+ ?remove_private_key: ::String
1775
1783
  ) -> _UpdateSAMLProviderResponseSuccess
1776
1784
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateSAMLProviderResponseSuccess
1777
1785
 
data/sig/resource.rbs CHANGED
@@ -167,7 +167,9 @@ module Aws
167
167
  key: ::String,
168
168
  value: ::String
169
169
  },
170
- ]
170
+ ],
171
+ ?assertion_encryption_mode: ("Required" | "Allowed"),
172
+ ?add_private_key: ::String
171
173
  ) -> SamlProvider
172
174
  | (?Hash[Symbol, untyped]) -> SamlProvider
173
175
 
@@ -17,6 +17,9 @@ module Aws
17
17
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IAM/SamlProvider.html#arn-instance_method
18
18
  def arn: () -> String
19
19
 
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IAM/SamlProvider.html#saml_provider_uuid-instance_method
21
+ def saml_provider_uuid: () -> ::String
22
+
20
23
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IAM/SamlProvider.html#saml_metadata_document-instance_method
21
24
  def saml_metadata_document: () -> ::String
22
25
 
@@ -29,6 +32,12 @@ module Aws
29
32
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IAM/SamlProvider.html#tags-instance_method
30
33
  def tags: () -> ::Array[Types::Tag]
31
34
 
35
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IAM/SamlProvider.html#assertion_encryption_mode-instance_method
36
+ def assertion_encryption_mode: () -> ("Required" | "Allowed")
37
+
38
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IAM/SamlProvider.html#private_key_list-instance_method
39
+ def private_key_list: () -> ::Array[Types::SAMLPrivateKey]
40
+
32
41
  def client: () -> Client
33
42
 
34
43
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IAM/SamlProvider.html#load-instance_method
@@ -49,7 +58,10 @@ module Aws
49
58
 
50
59
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IAM/SamlProvider.html#update-instance_method
51
60
  def update: (
52
- saml_metadata_document: ::String
61
+ ?saml_metadata_document: ::String,
62
+ ?assertion_encryption_mode: ("Required" | "Allowed"),
63
+ ?add_private_key: ::String,
64
+ ?remove_private_key: ::String
53
65
  ) -> Types::UpdateSAMLProviderResponse
54
66
  | (?Hash[Symbol, untyped]) -> Types::UpdateSAMLProviderResponse
55
67
 
data/sig/types.rbs CHANGED
@@ -224,7 +224,9 @@ module Aws::IAM
224
224
  attr_accessor saml_metadata_document: ::String
225
225
  attr_accessor name: ::String
226
226
  attr_accessor tags: ::Array[Types::Tag]
227
- SENSITIVE: []
227
+ attr_accessor assertion_encryption_mode: ("Required" | "Allowed")
228
+ attr_accessor add_private_key: ::String
229
+ SENSITIVE: [:add_private_key]
228
230
  end
229
231
 
230
232
  class CreateSAMLProviderResponse
@@ -788,10 +790,13 @@ module Aws::IAM
788
790
  end
789
791
 
790
792
  class GetSAMLProviderResponse
793
+ attr_accessor saml_provider_uuid: ::String
791
794
  attr_accessor saml_metadata_document: ::String
792
795
  attr_accessor create_date: ::Time
793
796
  attr_accessor valid_until: ::Time
794
797
  attr_accessor tags: ::Array[Types::Tag]
798
+ attr_accessor assertion_encryption_mode: ("Required" | "Allowed")
799
+ attr_accessor private_key_list: ::Array[Types::SAMLPrivateKey]
795
800
  SENSITIVE: []
796
801
  end
797
802
 
@@ -1732,6 +1737,12 @@ module Aws::IAM
1732
1737
  SENSITIVE: []
1733
1738
  end
1734
1739
 
1740
+ class SAMLPrivateKey
1741
+ attr_accessor key_id: ::String
1742
+ attr_accessor timestamp: ::Time
1743
+ SENSITIVE: []
1744
+ end
1745
+
1735
1746
  class SAMLProviderListEntry
1736
1747
  attr_accessor arn: ::String
1737
1748
  attr_accessor valid_until: ::Time
@@ -2076,7 +2087,10 @@ module Aws::IAM
2076
2087
  class UpdateSAMLProviderRequest
2077
2088
  attr_accessor saml_metadata_document: ::String
2078
2089
  attr_accessor saml_provider_arn: ::String
2079
- SENSITIVE: []
2090
+ attr_accessor assertion_encryption_mode: ("Required" | "Allowed")
2091
+ attr_accessor add_private_key: ::String
2092
+ attr_accessor remove_private_key: ::String
2093
+ SENSITIVE: [:add_private_key]
2080
2094
  end
2081
2095
 
2082
2096
  class UpdateSAMLProviderResponse
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-iam
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.115.0
4
+ version: 1.116.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-01-15 00:00:00.000000000 Z
11
+ date: 2025-02-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core