aws-sdk-iam 1.114.0 → 1.116.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 573b04d3c6bf7dc554501c1e0587eaaf384fdf0921be600df5e7dce7cc789296
4
- data.tar.gz: 4c473c9e190a29abbbb9d34c0d5ab6a821895afaa2d087cbac5b209e926d9d06
3
+ metadata.gz: e1bda553c4d7c8c92f0afa82ed604e211f83e8ba33e01a5cdae5ef22654d0e54
4
+ data.tar.gz: ba256563bea3926a818a21734db8054dc2873ac58729ed254b805e8ad8d62498
5
5
  SHA512:
6
- metadata.gz: c72c44612e87a3490f57ed09e265986ebeb50bd6fea80847cf267b90bc05e86afc3c65d4fd6f4c758677b9d495525cc654a9513b03af8d815e71f79c22a7b6b7
7
- data.tar.gz: 3fc76230b83f934c9fd9f87401cef698bfcd53a545dba4b771d21fa3fc5736d1f126749eaf6bd1bcb7e6474586a389782689890d4d80248cf28fbc0c77e00c97
6
+ metadata.gz: 03c82968dd555fce32979c3699e08624d5db77bd4cc75a1bd9b8059cfdf6c453a7c35d4985cd2129e15c80a3522da4a8b7e0bcd7a4f0beff6930fffddb445b99
7
+ data.tar.gz: 9f0a9e74dccf48df8f8c05bab331d40733e7acf0a729ce42bc9012146d38267e8235c431722ce1b16f8b3e781b23e36a23cc20624ff8ebc6f140a61d83b7648b
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
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
+
9
+ 1.115.0 (2025-01-15)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.114.0 (2024-11-14)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.114.0
1
+ 1.116.0
@@ -257,11 +257,34 @@ module Aws::IAM
257
257
  # Used when loading credentials from the shared credentials file
258
258
  # at HOME/.aws/credentials. When not specified, 'default' is used.
259
259
  #
260
+ # @option options [String] :request_checksum_calculation ("when_supported")
261
+ # Determines when a checksum will be calculated for request payloads. Values are:
262
+ #
263
+ # * `when_supported` - (default) When set, a checksum will be
264
+ # calculated for all request payloads of operations modeled with the
265
+ # `httpChecksum` trait where `requestChecksumRequired` is `true` and/or a
266
+ # `requestAlgorithmMember` is modeled.
267
+ # * `when_required` - When set, a checksum will only be calculated for
268
+ # request payloads of operations modeled with the `httpChecksum` trait where
269
+ # `requestChecksumRequired` is `true` or where a `requestAlgorithmMember`
270
+ # is modeled and supplied.
271
+ #
260
272
  # @option options [Integer] :request_min_compression_size_bytes (10240)
261
273
  # The minimum size in bytes that triggers compression for request
262
274
  # bodies. The value must be non-negative integer value between 0
263
275
  # and 10485780 bytes inclusive.
264
276
  #
277
+ # @option options [String] :response_checksum_validation ("when_supported")
278
+ # Determines when checksum validation will be performed on response payloads. Values are:
279
+ #
280
+ # * `when_supported` - (default) When set, checksum validation is performed on all
281
+ # response payloads of operations modeled with the `httpChecksum` trait where
282
+ # `responseAlgorithms` is modeled, except when no modeled checksum algorithms
283
+ # are supported.
284
+ # * `when_required` - When set, checksum validation is not performed on
285
+ # response payloads of operations unless the checksum algorithm is supported and
286
+ # the `requestValidationModeMember` member is set to `ENABLED`.
287
+ #
265
288
  # @option options [Proc] :retry_backoff
266
289
  # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
267
290
  # This option is only used in the `legacy` retry mode.
@@ -506,17 +529,27 @@ module Aws::IAM
506
529
  #
507
530
  # </note>
508
531
  #
509
- # 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
510
541
  # Guide*. For more information about instance profiles, see [Using
511
- # instance profiles][5] in the *IAM User Guide*.
542
+ # instance profiles][7] in the *IAM User Guide*.
512
543
  #
513
544
  #
514
545
  #
515
546
  # [1]: https://en.wikipedia.org/wiki/Eventual_consistency
516
547
  # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DisassociateIamInstanceProfile.html
517
548
  # [3]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_AssociateIamInstanceProfile.html
518
- # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html
519
- # [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
520
553
  #
521
554
  # @option params [required, String] :instance_profile_name
522
555
  # The name of the instance profile to update.
@@ -2079,6 +2112,14 @@ module Aws::IAM
2079
2112
  #
2080
2113
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html
2081
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
+ #
2082
2123
  # @return [Types::CreateSAMLProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2083
2124
  #
2084
2125
  # * {Types::CreateSAMLProviderResponse#saml_provider_arn #saml_provider_arn} => String
@@ -2095,6 +2136,8 @@ module Aws::IAM
2095
2136
  # value: "tagValueType", # required
2096
2137
  # },
2097
2138
  # ],
2139
+ # assertion_encryption_mode: "Required", # accepts Required, Allowed
2140
+ # add_private_key: "privateKeyType",
2098
2141
  # })
2099
2142
  #
2100
2143
  # @example Response structure
@@ -3884,7 +3927,7 @@ module Aws::IAM
3884
3927
 
3885
3928
  # Disables the management of privileged root user credentials across
3886
3929
  # member accounts in your organization. When you disable this feature,
3887
- # the management account and the delegated admininstrator for IAM can no
3930
+ # the management account and the delegated administrator for IAM can no
3888
3931
  # longer manage root user credentials for member accounts in your
3889
3932
  # organization.
3890
3933
  #
@@ -3927,7 +3970,7 @@ module Aws::IAM
3927
3970
 
3928
3971
  # Disables root user sessions for privileged tasks across member
3929
3972
  # accounts in your organization. When you disable this feature, the
3930
- # management account and the delegated admininstrator for IAM can no
3973
+ # management account and the delegated administrator for IAM can no
3931
3974
  # longer perform privileged tasks on member accounts in your
3932
3975
  # organization.
3933
3976
  #
@@ -4051,7 +4094,7 @@ module Aws::IAM
4051
4094
  # Enables the management of privileged root user credentials across
4052
4095
  # member accounts in your organization. When you enable root credentials
4053
4096
  # management for [centralized root access][1], the management account
4054
- # and the delegated admininstrator for IAM can manage root user
4097
+ # and the delegated administrator for IAM can manage root user
4055
4098
  # credentials for member accounts in your organization.
4056
4099
  #
4057
4100
  # Before you enable centralized root access, you must have an account
@@ -4068,7 +4111,7 @@ module Aws::IAM
4068
4111
  #
4069
4112
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#id_root-user-access-management
4070
4113
  # [2]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html
4071
- # [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
4072
4115
  #
4073
4116
  # @return [Types::EnableOrganizationsRootCredentialsManagementResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4074
4117
  #
@@ -5944,10 +5987,13 @@ module Aws::IAM
5944
5987
  #
5945
5988
  # @return [Types::GetSAMLProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5946
5989
  #
5990
+ # * {Types::GetSAMLProviderResponse#saml_provider_uuid #saml_provider_uuid} => String
5947
5991
  # * {Types::GetSAMLProviderResponse#saml_metadata_document #saml_metadata_document} => String
5948
5992
  # * {Types::GetSAMLProviderResponse#create_date #create_date} => Time
5949
5993
  # * {Types::GetSAMLProviderResponse#valid_until #valid_until} => Time
5950
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;
5951
5997
  #
5952
5998
  # @example Request syntax with placeholder values
5953
5999
  #
@@ -5957,12 +6003,17 @@ module Aws::IAM
5957
6003
  #
5958
6004
  # @example Response structure
5959
6005
  #
6006
+ # resp.saml_provider_uuid #=> String
5960
6007
  # resp.saml_metadata_document #=> String
5961
6008
  # resp.create_date #=> Time
5962
6009
  # resp.valid_until #=> Time
5963
6010
  # resp.tags #=> Array
5964
6011
  # resp.tags[0].key #=> String
5965
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
5966
6017
  #
5967
6018
  # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetSAMLProvider AWS API Documentation
5968
6019
  #
@@ -6725,12 +6776,12 @@ module Aws::IAM
6725
6776
  # Lists the account alias associated with the Amazon Web Services
6726
6777
  # account (Note: you can have only one). For information about using an
6727
6778
  # Amazon Web Services account alias, see [Creating, deleting, and
6728
- # listing an Amazon Web Services account alias][1] in the *Amazon Web
6729
- # Services Sign-In User Guide*.
6779
+ # listing an Amazon Web Services account alias][1] in the *IAM User
6780
+ # Guide*.
6730
6781
  #
6731
6782
  #
6732
6783
  #
6733
- # [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
6734
6785
  #
6735
6786
  # @option params [String] :marker
6736
6787
  # Use this parameter only when paginating results and only after you
@@ -12977,24 +13028,17 @@ module Aws::IAM
12977
13028
  req.send_request(options)
12978
13029
  end
12979
13030
 
12980
- # Updates the metadata document for an existing SAML provider resource
12981
- # object.
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.
12982
13034
  #
12983
- # <note markdown="1"> This operation requires [Signature Version 4][1].
12984
- #
12985
- # </note>
12986
- #
12987
- #
12988
- #
12989
- # [1]: https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
12990
- #
12991
- # @option params [required, String] :saml_metadata_document
13035
+ # @option params [String] :saml_metadata_document
12992
13036
  # An XML document generated by an identity provider (IdP) that supports
12993
13037
  # SAML 2.0. The document includes the issuer's name, expiration
12994
13038
  # information, and keys that can be used to validate the SAML
12995
13039
  # authentication response (assertions) that are received from the IdP.
12996
13040
  # You must generate the metadata document using the identity management
12997
- # software that is used as your organization's IdP.
13041
+ # software that is used as your IdP.
12998
13042
  #
12999
13043
  # @option params [required, String] :saml_provider_arn
13000
13044
  # The Amazon Resource Name (ARN) of the SAML provider to update.
@@ -13006,6 +13050,17 @@ module Aws::IAM
13006
13050
  #
13007
13051
  # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
13008
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
+ #
13009
13064
  # @return [Types::UpdateSAMLProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
13010
13065
  #
13011
13066
  # * {Types::UpdateSAMLProviderResponse#saml_provider_arn #saml_provider_arn} => String
@@ -13013,8 +13068,11 @@ module Aws::IAM
13013
13068
  # @example Request syntax with placeholder values
13014
13069
  #
13015
13070
  # resp = client.update_saml_provider({
13016
- # saml_metadata_document: "SAMLMetadataDocumentType", # required
13071
+ # saml_metadata_document: "SAMLMetadataDocumentType",
13017
13072
  # saml_provider_arn: "arnType", # required
13073
+ # assertion_encryption_mode: "Required", # accepts Required, Allowed
13074
+ # add_private_key: "privateKeyType",
13075
+ # remove_private_key: "privateKeyIdType",
13018
13076
  # })
13019
13077
  #
13020
13078
  # @example Response structure
@@ -13812,7 +13870,7 @@ module Aws::IAM
13812
13870
  tracer: tracer
13813
13871
  )
13814
13872
  context[:gem_name] = 'aws-sdk-iam'
13815
- context[:gem_version] = '1.114.0'
13873
+ context[:gem_version] = '1.116.0'
13816
13874
  Seahorse::Client::Request.new(handlers, context)
13817
13875
  end
13818
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.114.0'
79
+ GEM_VERSION = '1.116.0'
80
80
 
81
81
  end
82
82
 
data/sig/client.rbs CHANGED
@@ -39,7 +39,9 @@ module Aws
39
39
  ?logger: untyped,
40
40
  ?max_attempts: Integer,
41
41
  ?profile: String,
42
+ ?request_checksum_calculation: String,
42
43
  ?request_min_compression_size_bytes: Integer,
44
+ ?response_checksum_validation: String,
43
45
  ?retry_backoff: Proc,
44
46
  ?retry_base_delay: Float,
45
47
  ?retry_jitter: (:none | :equal | :full | ^(Integer) -> Integer),
@@ -265,7 +267,9 @@ module Aws
265
267
  key: ::String,
266
268
  value: ::String
267
269
  },
268
- ]
270
+ ],
271
+ ?assertion_encryption_mode: ("Required" | "Allowed"),
272
+ ?add_private_key: ::String
269
273
  ) -> _CreateSAMLProviderResponseSuccess
270
274
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateSAMLProviderResponseSuccess
271
275
 
@@ -801,10 +805,13 @@ module Aws
801
805
 
802
806
  interface _GetSAMLProviderResponseSuccess
803
807
  include ::Seahorse::Client::_ResponseSuccess[Types::GetSAMLProviderResponse]
808
+ def saml_provider_uuid: () -> ::String
804
809
  def saml_metadata_document: () -> ::String
805
810
  def create_date: () -> ::Time
806
811
  def valid_until: () -> ::Time
807
812
  def tags: () -> ::Array[Types::Tag]
813
+ def assertion_encryption_mode: () -> ("Required" | "Allowed")
814
+ def private_key_list: () -> ::Array[Types::SAMLPrivateKey]
808
815
  end
809
816
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IAM/Client.html#get_saml_provider-instance_method
810
817
  def get_saml_provider: (
@@ -1768,8 +1775,11 @@ module Aws
1768
1775
  end
1769
1776
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IAM/Client.html#update_saml_provider-instance_method
1770
1777
  def update_saml_provider: (
1771
- saml_metadata_document: ::String,
1772
- 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
1773
1783
  ) -> _UpdateSAMLProviderResponseSuccess
1774
1784
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateSAMLProviderResponseSuccess
1775
1785
 
data/sig/resource.rbs CHANGED
@@ -39,7 +39,9 @@ module Aws
39
39
  ?logger: untyped,
40
40
  ?max_attempts: Integer,
41
41
  ?profile: String,
42
+ ?request_checksum_calculation: String,
42
43
  ?request_min_compression_size_bytes: Integer,
44
+ ?response_checksum_validation: String,
43
45
  ?retry_backoff: Proc,
44
46
  ?retry_base_delay: Float,
45
47
  ?retry_jitter: (:none | :equal | :full | ^(Integer) -> Integer),
@@ -165,7 +167,9 @@ module Aws
165
167
  key: ::String,
166
168
  value: ::String
167
169
  },
168
- ]
170
+ ],
171
+ ?assertion_encryption_mode: ("Required" | "Allowed"),
172
+ ?add_private_key: ::String
169
173
  ) -> SamlProvider
170
174
  | (?Hash[Symbol, untyped]) -> SamlProvider
171
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.114.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: 2024-11-14 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
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.210.0
22
+ version: 3.216.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.210.0
32
+ version: 3.216.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement