aws-sdk-iam 1.151.0 → 1.153.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.
@@ -22,6 +22,8 @@ module Aws::IAM
22
22
  AccessKeyLastUsed = Shapes::StructureShape.new(name: 'AccessKeyLastUsed')
23
23
  AccessKeyMetadata = Shapes::StructureShape.new(name: 'AccessKeyMetadata')
24
24
  AccountNotManagementOrDelegatedAdministratorException = Shapes::StructureShape.new(name: 'AccountNotManagementOrDelegatedAdministratorException')
25
+ AcquireRoleRequest = Shapes::StructureShape.new(name: 'AcquireRoleRequest')
26
+ AcquireRoleResponse = Shapes::StructureShape.new(name: 'AcquireRoleResponse')
25
27
  ActionNameListType = Shapes::ListShape.new(name: 'ActionNameListType')
26
28
  ActionNameType = Shapes::StringShape.new(name: 'ActionNameType')
27
29
  AddClientIDToOpenIDConnectProviderRequest = Shapes::StructureShape.new(name: 'AddClientIDToOpenIDConnectProviderRequest')
@@ -155,6 +157,8 @@ module Aws::IAM
155
157
  GetAccountAuthorizationDetailsRequest = Shapes::StructureShape.new(name: 'GetAccountAuthorizationDetailsRequest')
156
158
  GetAccountAuthorizationDetailsResponse = Shapes::StructureShape.new(name: 'GetAccountAuthorizationDetailsResponse')
157
159
  GetAccountPasswordPolicyResponse = Shapes::StructureShape.new(name: 'GetAccountPasswordPolicyResponse')
160
+ GetAccountPropertiesRequest = Shapes::StructureShape.new(name: 'GetAccountPropertiesRequest')
161
+ GetAccountPropertiesResponse = Shapes::StructureShape.new(name: 'GetAccountPropertiesResponse')
158
162
  GetAccountSummaryResponse = Shapes::StructureShape.new(name: 'GetAccountSummaryResponse')
159
163
  GetContextKeysForCustomPolicyRequest = Shapes::StructureShape.new(name: 'GetContextKeysForCustomPolicyRequest')
160
164
  GetContextKeysForPolicyResponse = Shapes::StructureShape.new(name: 'GetContextKeysForPolicyResponse')
@@ -187,6 +191,8 @@ module Aws::IAM
187
191
  GetRolePolicyResponse = Shapes::StructureShape.new(name: 'GetRolePolicyResponse')
188
192
  GetRoleRequest = Shapes::StructureShape.new(name: 'GetRoleRequest')
189
193
  GetRoleResponse = Shapes::StructureShape.new(name: 'GetRoleResponse')
194
+ GetRoleTemplateVersionRequest = Shapes::StructureShape.new(name: 'GetRoleTemplateVersionRequest')
195
+ GetRoleTemplateVersionResponse = Shapes::StructureShape.new(name: 'GetRoleTemplateVersionResponse')
190
196
  GetSAMLProviderRequest = Shapes::StructureShape.new(name: 'GetSAMLProviderRequest')
191
197
  GetSAMLProviderResponse = Shapes::StructureShape.new(name: 'GetSAMLProviderResponse')
192
198
  GetSSHPublicKeyRequest = Shapes::StructureShape.new(name: 'GetSSHPublicKeyRequest')
@@ -205,6 +211,7 @@ module Aws::IAM
205
211
  GetUserResponse = Shapes::StructureShape.new(name: 'GetUserResponse')
206
212
  Group = Shapes::StructureShape.new(name: 'Group')
207
213
  GroupDetail = Shapes::StructureShape.new(name: 'GroupDetail')
214
+ InlinePolicy = Shapes::StructureShape.new(name: 'InlinePolicy')
208
215
  InlinePolicyIdentifierType = Shapes::StructureShape.new(name: 'InlinePolicyIdentifierType')
209
216
  InstanceProfile = Shapes::StructureShape.new(name: 'InstanceProfile')
210
217
  InvalidAuthenticationCodeException = Shapes::StructureShape.new(name: 'InvalidAuthenticationCodeException', error: {"code" => "InvalidAuthenticationCode", "httpStatusCode" => 403, "senderFault" => true})
@@ -294,6 +301,7 @@ module Aws::IAM
294
301
  MalformedPolicyDocumentException = Shapes::StructureShape.new(name: 'MalformedPolicyDocumentException', error: {"code" => "MalformedPolicyDocument", "httpStatusCode" => 400, "senderFault" => true})
295
302
  ManagedPolicyDetail = Shapes::StructureShape.new(name: 'ManagedPolicyDetail')
296
303
  ManagedPolicyDetailListType = Shapes::ListShape.new(name: 'ManagedPolicyDetailListType')
304
+ NameConflictException = Shapes::StructureShape.new(name: 'NameConflictException', error: {"code" => "NameConflict", "httpStatusCode" => 409, "senderFault" => true})
297
305
  NoSuchEntityException = Shapes::StructureShape.new(name: 'NoSuchEntityException', error: {"code" => "NoSuchEntity", "httpStatusCode" => 404, "senderFault" => true})
298
306
  OpenIDConnectProviderListEntry = Shapes::StructureShape.new(name: 'OpenIDConnectProviderListEntry')
299
307
  OpenIDConnectProviderListType = Shapes::ListShape.new(name: 'OpenIDConnectProviderListType')
@@ -305,6 +313,7 @@ module Aws::IAM
305
313
  OrganizationNotInAllFeaturesModeException = Shapes::StructureShape.new(name: 'OrganizationNotInAllFeaturesModeException')
306
314
  OrganizationPolicyListType = Shapes::ListShape.new(name: 'OrganizationPolicyListType')
307
315
  OrganizationsDecisionDetail = Shapes::StructureShape.new(name: 'OrganizationsDecisionDetail')
316
+ ParameterDefinition = Shapes::StructureShape.new(name: 'ParameterDefinition')
308
317
  PasswordPolicy = Shapes::StructureShape.new(name: 'PasswordPolicy')
309
318
  PasswordPolicyViolationException = Shapes::StructureShape.new(name: 'PasswordPolicyViolationException', error: {"code" => "PasswordPolicyViolation", "httpStatusCode" => 400, "senderFault" => true})
310
319
  PermissionsBoundaryAttachmentType = Shapes::StringShape.new(name: 'PermissionsBoundaryAttachmentType')
@@ -331,6 +340,8 @@ module Aws::IAM
331
340
  PolicyUserListType = Shapes::ListShape.new(name: 'PolicyUserListType')
332
341
  PolicyVersion = Shapes::StructureShape.new(name: 'PolicyVersion')
333
342
  Position = Shapes::StructureShape.new(name: 'Position')
343
+ PutAccountPropertiesRequest = Shapes::StructureShape.new(name: 'PutAccountPropertiesRequest')
344
+ PutAccountPropertiesResponse = Shapes::StructureShape.new(name: 'PutAccountPropertiesResponse')
334
345
  PutGroupPolicyRequest = Shapes::StructureShape.new(name: 'PutGroupPolicyRequest')
335
346
  PutRolePermissionsBoundaryRequest = Shapes::StructureShape.new(name: 'PutRolePermissionsBoundaryRequest')
336
347
  PutRolePolicyRequest = Shapes::StructureShape.new(name: 'PutRolePolicyRequest')
@@ -342,6 +353,7 @@ module Aws::IAM
342
353
  RemoveClientIDFromOpenIDConnectProviderRequest = Shapes::StructureShape.new(name: 'RemoveClientIDFromOpenIDConnectProviderRequest')
343
354
  RemoveRoleFromInstanceProfileRequest = Shapes::StructureShape.new(name: 'RemoveRoleFromInstanceProfileRequest')
344
355
  RemoveUserFromGroupRequest = Shapes::StructureShape.new(name: 'RemoveUserFromGroupRequest')
356
+ ReplacementValueEntry = Shapes::StructureShape.new(name: 'ReplacementValueEntry')
345
357
  ReportContentType = Shapes::BlobShape.new(name: 'ReportContentType')
346
358
  ReportFormatType = Shapes::StringShape.new(name: 'ReportFormatType')
347
359
  ReportGenerationLimitExceededException = Shapes::StructureShape.new(name: 'ReportGenerationLimitExceededException', error: {"code" => "ReportGenerationLimitExceeded", "httpStatusCode" => 409, "senderFault" => true})
@@ -358,6 +370,9 @@ module Aws::IAM
358
370
  Role = Shapes::StructureShape.new(name: 'Role')
359
371
  RoleDetail = Shapes::StructureShape.new(name: 'RoleDetail')
360
372
  RoleLastUsed = Shapes::StructureShape.new(name: 'RoleLastUsed')
373
+ RoleModifiedException = Shapes::StructureShape.new(name: 'RoleModifiedException', error: {"code" => "RoleModified", "httpStatusCode" => 409, "senderFault" => true})
374
+ RoleTemplateDisabledException = Shapes::StructureShape.new(name: 'RoleTemplateDisabledException', error: {"code" => "RoleTemplateDisabled", "httpStatusCode" => 400, "senderFault" => true})
375
+ RoleTemplateVersion = Shapes::StructureShape.new(name: 'RoleTemplateVersion')
361
376
  RoleUsageListType = Shapes::ListShape.new(name: 'RoleUsageListType')
362
377
  RoleUsageType = Shapes::StructureShape.new(name: 'RoleUsageType')
363
378
  SAMLMetadataDocumentType = Shapes::StringShape.new(name: 'SAMLMetadataDocumentType')
@@ -386,6 +401,7 @@ module Aws::IAM
386
401
  SimulatePolicyResponse = Shapes::StructureShape.new(name: 'SimulatePolicyResponse')
387
402
  SimulatePrincipalPolicyRequest = Shapes::StructureShape.new(name: 'SimulatePrincipalPolicyRequest')
388
403
  SimulationPolicyListType = Shapes::ListShape.new(name: 'SimulationPolicyListType')
404
+ SourceRoleTemplate = Shapes::StructureShape.new(name: 'SourceRoleTemplate')
389
405
  Statement = Shapes::StructureShape.new(name: 'Statement')
390
406
  StatementListType = Shapes::ListShape.new(name: 'StatementListType')
391
407
  Tag = Shapes::StructureShape.new(name: 'Tag')
@@ -396,6 +412,7 @@ module Aws::IAM
396
412
  TagRoleRequest = Shapes::StructureShape.new(name: 'TagRoleRequest')
397
413
  TagSAMLProviderRequest = Shapes::StructureShape.new(name: 'TagSAMLProviderRequest')
398
414
  TagServerCertificateRequest = Shapes::StructureShape.new(name: 'TagServerCertificateRequest')
415
+ TagTemplate = Shapes::StructureShape.new(name: 'TagTemplate')
399
416
  TagUserRequest = Shapes::StructureShape.new(name: 'TagUserRequest')
400
417
  TrackedActionLastAccessed = Shapes::StructureShape.new(name: 'TrackedActionLastAccessed')
401
418
  TrackedActionsLastAccessed = Shapes::ListShape.new(name: 'TrackedActionsLastAccessed')
@@ -442,6 +459,9 @@ module Aws::IAM
442
459
  accountAliasListType = Shapes::ListShape.new(name: 'accountAliasListType')
443
460
  accountAliasType = Shapes::StringShape.new(name: 'accountAliasType')
444
461
  accountIdType = Shapes::StringShape.new(name: 'accountIdType')
462
+ accountPropertiesMapType = Shapes::MapShape.new(name: 'accountPropertiesMapType')
463
+ accountPropertyKeyType = Shapes::StringShape.new(name: 'accountPropertyKeyType')
464
+ accountPropertyValueType = Shapes::StringShape.new(name: 'accountPropertyValueType')
445
465
  allUsers = Shapes::BooleanShape.new(name: 'allUsers')
446
466
  arnType = Shapes::StringShape.new(name: 'arnType')
447
467
  assertionEncryptionModeType = Shapes::StringShape.new(name: 'assertionEncryptionModeType')
@@ -483,6 +503,7 @@ module Aws::IAM
483
503
  groupNameListType = Shapes::ListShape.new(name: 'groupNameListType')
484
504
  groupNameType = Shapes::StringShape.new(name: 'groupNameType')
485
505
  idType = Shapes::StringShape.new(name: 'idType')
506
+ inlinePolicyTemplateListType = Shapes::ListShape.new(name: 'inlinePolicyTemplateListType')
486
507
  instanceProfileListType = Shapes::ListShape.new(name: 'instanceProfileListType')
487
508
  instanceProfileNameType = Shapes::StringShape.new(name: 'instanceProfileNameType')
488
509
  integerType = Shapes::IntegerShape.new(name: 'integerType')
@@ -499,11 +520,17 @@ module Aws::IAM
499
520
  localeType = Shapes::StringShape.new(name: 'localeType')
500
521
  malformedCertificateMessage = Shapes::StringShape.new(name: 'malformedCertificateMessage')
501
522
  malformedPolicyDocumentMessage = Shapes::StringShape.new(name: 'malformedPolicyDocumentMessage')
523
+ managedByTypeType = Shapes::StringShape.new(name: 'managedByTypeType')
524
+ managedByValueType = Shapes::StringShape.new(name: 'managedByValueType')
525
+ managedPolicyArnListType = Shapes::ListShape.new(name: 'managedPolicyArnListType')
526
+ mapStringReplacementValueEntry = Shapes::MapShape.new(name: 'mapStringReplacementValueEntry')
502
527
  markerType = Shapes::StringShape.new(name: 'markerType')
503
528
  maxItemsType = Shapes::IntegerShape.new(name: 'maxItemsType')
504
529
  maxPasswordAgeType = Shapes::IntegerShape.new(name: 'maxPasswordAgeType')
505
530
  mfaDeviceListType = Shapes::ListShape.new(name: 'mfaDeviceListType')
506
531
  minimumPasswordLengthType = Shapes::IntegerShape.new(name: 'minimumPasswordLengthType')
532
+ minorVersionType = Shapes::IntegerShape.new(name: 'minorVersionType')
533
+ nameConflictMessage = Shapes::StringShape.new(name: 'nameConflictMessage')
507
534
  noSuchEntityMessage = Shapes::StringShape.new(name: 'noSuchEntityMessage')
508
535
  notesType = Shapes::StringShape.new(name: 'notesType')
509
536
  notificationChannelType = Shapes::StringShape.new(name: 'notificationChannelType')
@@ -511,6 +538,12 @@ module Aws::IAM
511
538
  organizationsEntityPathType = Shapes::StringShape.new(name: 'organizationsEntityPathType')
512
539
  organizationsPolicyIdType = Shapes::StringShape.new(name: 'organizationsPolicyIdType')
513
540
  ownerIdType = Shapes::StringShape.new(name: 'ownerIdType')
541
+ parameterDefaultValueType = Shapes::StringShape.new(name: 'parameterDefaultValueType')
542
+ parameterDescriptionType = Shapes::StringShape.new(name: 'parameterDescriptionType')
543
+ parameterNameType = Shapes::StringShape.new(name: 'parameterNameType')
544
+ parameterSubTypeType = Shapes::StringShape.new(name: 'parameterSubTypeType')
545
+ parameterTypeType = Shapes::StringShape.new(name: 'parameterTypeType')
546
+ parametersDefinitionListType = Shapes::ListShape.new(name: 'parametersDefinitionListType')
514
547
  passwordPolicyViolationMessage = Shapes::StringShape.new(name: 'passwordPolicyViolationMessage')
515
548
  passwordReusePreventionType = Shapes::IntegerShape.new(name: 'passwordReusePreventionType')
516
549
  passwordType = Shapes::StringShape.new(name: 'passwordType')
@@ -545,17 +578,25 @@ module Aws::IAM
545
578
  publicKeyIdType = Shapes::StringShape.new(name: 'publicKeyIdType')
546
579
  publicKeyMaterialType = Shapes::StringShape.new(name: 'publicKeyMaterialType')
547
580
  redirectUrlType = Shapes::StringShape.new(name: 'redirectUrlType')
581
+ replacementValueListType = Shapes::ListShape.new(name: 'replacementValueListType')
548
582
  reportGenerationLimitExceededMessage = Shapes::StringShape.new(name: 'reportGenerationLimitExceededMessage')
549
583
  requestMessageType = Shapes::StringShape.new(name: 'requestMessageType')
550
584
  requestorNameType = Shapes::StringShape.new(name: 'requestorNameType')
551
585
  requestorWorkflowIdType = Shapes::StringShape.new(name: 'requestorWorkflowIdType')
552
586
  responseMarkerType = Shapes::StringShape.new(name: 'responseMarkerType')
587
+ roleDescriptionPatternType = Shapes::StringShape.new(name: 'roleDescriptionPatternType')
553
588
  roleDescriptionType = Shapes::StringShape.new(name: 'roleDescriptionType')
554
589
  roleDetailListType = Shapes::ListShape.new(name: 'roleDetailListType')
555
590
  roleListType = Shapes::ListShape.new(name: 'roleListType')
556
591
  roleMaxSessionDurationType = Shapes::IntegerShape.new(name: 'roleMaxSessionDurationType')
592
+ roleModifiedMessage = Shapes::StringShape.new(name: 'roleModifiedMessage')
593
+ roleNamePatternType = Shapes::StringShape.new(name: 'roleNamePatternType')
557
594
  roleNameType = Shapes::StringShape.new(name: 'roleNameType')
595
+ rolePathPatternType = Shapes::StringShape.new(name: 'rolePathPatternType')
558
596
  rolePermissionRestrictionArnListType = Shapes::ListShape.new(name: 'rolePermissionRestrictionArnListType')
597
+ roleTemplateDescriptionType = Shapes::StringShape.new(name: 'roleTemplateDescriptionType')
598
+ roleTemplateDisabledMessage = Shapes::StringShape.new(name: 'roleTemplateDisabledMessage')
599
+ roleTemplateNameType = Shapes::StringShape.new(name: 'roleTemplateNameType')
559
600
  serialNumberType = Shapes::StringShape.new(name: 'serialNumberType')
560
601
  serverCertificateMetadataListType = Shapes::ListShape.new(name: 'serverCertificateMetadataListType')
561
602
  serverCertificateNameType = Shapes::StringShape.new(name: 'serverCertificateNameType')
@@ -583,6 +624,9 @@ module Aws::IAM
583
624
  tagKeyListType = Shapes::ListShape.new(name: 'tagKeyListType')
584
625
  tagKeyType = Shapes::StringShape.new(name: 'tagKeyType')
585
626
  tagListType = Shapes::ListShape.new(name: 'tagListType')
627
+ tagTemplateKeyType = Shapes::StringShape.new(name: 'tagTemplateKeyType')
628
+ tagTemplateListType = Shapes::ListShape.new(name: 'tagTemplateListType')
629
+ tagTemplateValueType = Shapes::StringShape.new(name: 'tagTemplateValueType')
586
630
  tagValueType = Shapes::StringShape.new(name: 'tagValueType')
587
631
  thumbprintListType = Shapes::ListShape.new(name: 'thumbprintListType')
588
632
  thumbprintType = Shapes::StringShape.new(name: 'thumbprintType')
@@ -627,6 +671,14 @@ module Aws::IAM
627
671
 
628
672
  AccountNotManagementOrDelegatedAdministratorException.struct_class = Types::AccountNotManagementOrDelegatedAdministratorException
629
673
 
674
+ AcquireRoleRequest.add_member(:template_arn, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "TemplateArn"))
675
+ AcquireRoleRequest.add_member(:template_minor_version, Shapes::ShapeRef.new(shape: integerType, location_name: "TemplateMinorVersion"))
676
+ AcquireRoleRequest.add_member(:replacement_values, Shapes::ShapeRef.new(shape: mapStringReplacementValueEntry, location_name: "ReplacementValues"))
677
+ AcquireRoleRequest.struct_class = Types::AcquireRoleRequest
678
+
679
+ AcquireRoleResponse.add_member(:role, Shapes::ShapeRef.new(shape: Role, required: true, location_name: "Role"))
680
+ AcquireRoleResponse.struct_class = Types::AcquireRoleResponse
681
+
630
682
  ActionNameListType.member = Shapes::ShapeRef.new(shape: ActionNameType)
631
683
 
632
684
  AddClientIDToOpenIDConnectProviderRequest.add_member(:open_id_connect_provider_arn, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "OpenIDConnectProviderArn"))
@@ -1080,6 +1132,11 @@ module Aws::IAM
1080
1132
  GetAccountPasswordPolicyResponse.add_member(:password_policy, Shapes::ShapeRef.new(shape: PasswordPolicy, required: true, location_name: "PasswordPolicy"))
1081
1133
  GetAccountPasswordPolicyResponse.struct_class = Types::GetAccountPasswordPolicyResponse
1082
1134
 
1135
+ GetAccountPropertiesRequest.struct_class = Types::GetAccountPropertiesRequest
1136
+
1137
+ GetAccountPropertiesResponse.add_member(:properties, Shapes::ShapeRef.new(shape: accountPropertiesMapType, location_name: "Properties"))
1138
+ GetAccountPropertiesResponse.struct_class = Types::GetAccountPropertiesResponse
1139
+
1083
1140
  GetAccountSummaryResponse.add_member(:summary_map, Shapes::ShapeRef.new(shape: summaryMapType, location_name: "SummaryMap"))
1084
1141
  GetAccountSummaryResponse.struct_class = Types::GetAccountSummaryResponse
1085
1142
 
@@ -1217,6 +1274,13 @@ module Aws::IAM
1217
1274
  GetRoleResponse.add_member(:role, Shapes::ShapeRef.new(shape: Role, required: true, location_name: "Role"))
1218
1275
  GetRoleResponse.struct_class = Types::GetRoleResponse
1219
1276
 
1277
+ GetRoleTemplateVersionRequest.add_member(:template_arn, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "TemplateArn"))
1278
+ GetRoleTemplateVersionRequest.add_member(:minor_version, Shapes::ShapeRef.new(shape: minorVersionType, location_name: "MinorVersion"))
1279
+ GetRoleTemplateVersionRequest.struct_class = Types::GetRoleTemplateVersionRequest
1280
+
1281
+ GetRoleTemplateVersionResponse.add_member(:role_template_version, Shapes::ShapeRef.new(shape: RoleTemplateVersion, required: true, location_name: "RoleTemplateVersion"))
1282
+ GetRoleTemplateVersionResponse.struct_class = Types::GetRoleTemplateVersionResponse
1283
+
1220
1284
  GetSAMLProviderRequest.add_member(:saml_provider_arn, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "SAMLProviderArn"))
1221
1285
  GetSAMLProviderRequest.struct_class = Types::GetSAMLProviderRequest
1222
1286
 
@@ -1311,6 +1375,10 @@ module Aws::IAM
1311
1375
  GroupDetail.add_member(:attached_managed_policies, Shapes::ShapeRef.new(shape: attachedPoliciesListType, location_name: "AttachedManagedPolicies"))
1312
1376
  GroupDetail.struct_class = Types::GroupDetail
1313
1377
 
1378
+ InlinePolicy.add_member(:policy_name, Shapes::ShapeRef.new(shape: policyNameType, required: true, location_name: "PolicyName"))
1379
+ InlinePolicy.add_member(:policy_document, Shapes::ShapeRef.new(shape: policyDocumentType, required: true, location_name: "PolicyDocument"))
1380
+ InlinePolicy.struct_class = Types::InlinePolicy
1381
+
1314
1382
  InlinePolicyIdentifierType.add_member(:policy_name, Shapes::ShapeRef.new(shape: policyNameType, required: true, location_name: "PolicyName"))
1315
1383
  InlinePolicyIdentifierType.add_member(:attachment_type, Shapes::ShapeRef.new(shape: AttachmentType, required: true, location_name: "AttachmentType"))
1316
1384
  InlinePolicyIdentifierType.add_member(:attachment_name, Shapes::ShapeRef.new(shape: AttachmentName, required: true, location_name: "AttachmentName"))
@@ -1740,6 +1808,9 @@ module Aws::IAM
1740
1808
 
1741
1809
  ManagedPolicyDetailListType.member = Shapes::ShapeRef.new(shape: ManagedPolicyDetail)
1742
1810
 
1811
+ NameConflictException.add_member(:message, Shapes::ShapeRef.new(shape: nameConflictMessage, location_name: "message"))
1812
+ NameConflictException.struct_class = Types::NameConflictException
1813
+
1743
1814
  NoSuchEntityException.add_member(:message, Shapes::ShapeRef.new(shape: noSuchEntityMessage, location_name: "message"))
1744
1815
  NoSuchEntityException.struct_class = Types::NoSuchEntityException
1745
1816
 
@@ -1763,6 +1834,15 @@ module Aws::IAM
1763
1834
  OrganizationsDecisionDetail.add_member(:allowed_by_organizations, Shapes::ShapeRef.new(shape: booleanType, location_name: "AllowedByOrganizations"))
1764
1835
  OrganizationsDecisionDetail.struct_class = Types::OrganizationsDecisionDetail
1765
1836
 
1837
+ ParameterDefinition.add_member(:name, Shapes::ShapeRef.new(shape: parameterNameType, required: true, location_name: "Name"))
1838
+ ParameterDefinition.add_member(:type, Shapes::ShapeRef.new(shape: parameterTypeType, required: true, location_name: "Type"))
1839
+ ParameterDefinition.add_member(:sub_type, Shapes::ShapeRef.new(shape: parameterSubTypeType, location_name: "SubType"))
1840
+ ParameterDefinition.add_member(:description, Shapes::ShapeRef.new(shape: parameterDescriptionType, location_name: "Description"))
1841
+ ParameterDefinition.add_member(:is_required, Shapes::ShapeRef.new(shape: booleanType, location_name: "IsRequired"))
1842
+ ParameterDefinition.add_member(:default_value, Shapes::ShapeRef.new(shape: parameterDefaultValueType, location_name: "DefaultValue"))
1843
+ ParameterDefinition.add_member(:immutable, Shapes::ShapeRef.new(shape: booleanType, location_name: "Immutable"))
1844
+ ParameterDefinition.struct_class = Types::ParameterDefinition
1845
+
1766
1846
  PasswordPolicy.add_member(:minimum_password_length, Shapes::ShapeRef.new(shape: minimumPasswordLengthType, location_name: "MinimumPasswordLength"))
1767
1847
  PasswordPolicy.add_member(:require_symbols, Shapes::ShapeRef.new(shape: booleanType, location_name: "RequireSymbols"))
1768
1848
  PasswordPolicy.add_member(:require_numbers, Shapes::ShapeRef.new(shape: booleanType, location_name: "RequireNumbers"))
@@ -1857,6 +1937,11 @@ module Aws::IAM
1857
1937
  Position.add_member(:column, Shapes::ShapeRef.new(shape: ColumnNumber, location_name: "Column"))
1858
1938
  Position.struct_class = Types::Position
1859
1939
 
1940
+ PutAccountPropertiesRequest.add_member(:properties, Shapes::ShapeRef.new(shape: accountPropertiesMapType, required: true, location_name: "Properties"))
1941
+ PutAccountPropertiesRequest.struct_class = Types::PutAccountPropertiesRequest
1942
+
1943
+ PutAccountPropertiesResponse.struct_class = Types::PutAccountPropertiesResponse
1944
+
1860
1945
  PutGroupPolicyRequest.add_member(:group_name, Shapes::ShapeRef.new(shape: groupNameType, required: true, location_name: "GroupName"))
1861
1946
  PutGroupPolicyRequest.add_member(:policy_name, Shapes::ShapeRef.new(shape: policyNameType, required: true, location_name: "PolicyName"))
1862
1947
  PutGroupPolicyRequest.add_member(:policy_document, Shapes::ShapeRef.new(shape: policyDocumentType, required: true, location_name: "PolicyDocument"))
@@ -1896,6 +1981,9 @@ module Aws::IAM
1896
1981
  RemoveUserFromGroupRequest.add_member(:user_name, Shapes::ShapeRef.new(shape: existingUserNameType, required: true, location_name: "UserName"))
1897
1982
  RemoveUserFromGroupRequest.struct_class = Types::RemoveUserFromGroupRequest
1898
1983
 
1984
+ ReplacementValueEntry.add_member(:values, Shapes::ShapeRef.new(shape: replacementValueListType, required: true, location_name: "Values"))
1985
+ ReplacementValueEntry.struct_class = Types::ReplacementValueEntry
1986
+
1899
1987
  ReportGenerationLimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: reportGenerationLimitExceededMessage, location_name: "message"))
1900
1988
  ReportGenerationLimitExceededException.struct_class = Types::ReportGenerationLimitExceededException
1901
1989
 
@@ -1935,6 +2023,7 @@ module Aws::IAM
1935
2023
  Role.add_member(:permissions_boundary, Shapes::ShapeRef.new(shape: AttachedPermissionsBoundary, location_name: "PermissionsBoundary"))
1936
2024
  Role.add_member(:tags, Shapes::ShapeRef.new(shape: tagListType, location_name: "Tags"))
1937
2025
  Role.add_member(:role_last_used, Shapes::ShapeRef.new(shape: RoleLastUsed, location_name: "RoleLastUsed"))
2026
+ Role.add_member(:source_role_template, Shapes::ShapeRef.new(shape: SourceRoleTemplate, location_name: "SourceRoleTemplate"))
1938
2027
  Role.struct_class = Types::Role
1939
2028
 
1940
2029
  RoleDetail.add_member(:path, Shapes::ShapeRef.new(shape: pathType, location_name: "Path"))
@@ -1955,6 +2044,37 @@ module Aws::IAM
1955
2044
  RoleLastUsed.add_member(:region, Shapes::ShapeRef.new(shape: stringType, location_name: "Region"))
1956
2045
  RoleLastUsed.struct_class = Types::RoleLastUsed
1957
2046
 
2047
+ RoleModifiedException.add_member(:message, Shapes::ShapeRef.new(shape: roleModifiedMessage, location_name: "message"))
2048
+ RoleModifiedException.struct_class = Types::RoleModifiedException
2049
+
2050
+ RoleTemplateDisabledException.add_member(:message, Shapes::ShapeRef.new(shape: roleTemplateDisabledMessage, location_name: "message"))
2051
+ RoleTemplateDisabledException.struct_class = Types::RoleTemplateDisabledException
2052
+
2053
+ RoleTemplateVersion.add_member(:template_arn, Shapes::ShapeRef.new(shape: arnType, location_name: "TemplateArn"))
2054
+ RoleTemplateVersion.add_member(:template_name, Shapes::ShapeRef.new(shape: roleTemplateNameType, location_name: "TemplateName"))
2055
+ RoleTemplateVersion.add_member(:template_version_id, Shapes::ShapeRef.new(shape: idType, location_name: "TemplateVersionId"))
2056
+ RoleTemplateVersion.add_member(:description, Shapes::ShapeRef.new(shape: roleTemplateDescriptionType, location_name: "Description"))
2057
+ RoleTemplateVersion.add_member(:major_version, Shapes::ShapeRef.new(shape: integerType, location_name: "MajorVersion"))
2058
+ RoleTemplateVersion.add_member(:default_minor_version, Shapes::ShapeRef.new(shape: minorVersionType, location_name: "DefaultMinorVersion"))
2059
+ RoleTemplateVersion.add_member(:managed_by_type, Shapes::ShapeRef.new(shape: managedByTypeType, location_name: "ManagedByType"))
2060
+ RoleTemplateVersion.add_member(:managed_by_value, Shapes::ShapeRef.new(shape: managedByValueType, location_name: "ManagedByValue"))
2061
+ RoleTemplateVersion.add_member(:enabled, Shapes::ShapeRef.new(shape: booleanType, location_name: "Enabled"))
2062
+ RoleTemplateVersion.add_member(:minor_version, Shapes::ShapeRef.new(shape: minorVersionType, location_name: "MinorVersion"))
2063
+ RoleTemplateVersion.add_member(:role_name_pattern, Shapes::ShapeRef.new(shape: roleNamePatternType, location_name: "RoleNamePattern"))
2064
+ RoleTemplateVersion.add_member(:role_path_pattern, Shapes::ShapeRef.new(shape: rolePathPatternType, location_name: "RolePathPattern"))
2065
+ RoleTemplateVersion.add_member(:role_description_pattern, Shapes::ShapeRef.new(shape: roleDescriptionPatternType, location_name: "RoleDescriptionPattern"))
2066
+ RoleTemplateVersion.add_member(:assume_role_policy_document_template, Shapes::ShapeRef.new(shape: policyDocumentType, location_name: "AssumeRolePolicyDocumentTemplate"))
2067
+ RoleTemplateVersion.add_member(:inline_policy_templates, Shapes::ShapeRef.new(shape: inlinePolicyTemplateListType, location_name: "InlinePolicyTemplates"))
2068
+ RoleTemplateVersion.add_member(:managed_policy_arns, Shapes::ShapeRef.new(shape: managedPolicyArnListType, location_name: "ManagedPolicyArns"))
2069
+ RoleTemplateVersion.add_member(:permission_boundary_arn, Shapes::ShapeRef.new(shape: arnType, location_name: "PermissionBoundaryArn"))
2070
+ RoleTemplateVersion.add_member(:parameters_definition, Shapes::ShapeRef.new(shape: parametersDefinitionListType, location_name: "ParametersDefinition"))
2071
+ RoleTemplateVersion.add_member(:role_tags_template, Shapes::ShapeRef.new(shape: tagTemplateListType, location_name: "RoleTagsTemplate"))
2072
+ RoleTemplateVersion.add_member(:max_session_duration, Shapes::ShapeRef.new(shape: roleMaxSessionDurationType, location_name: "MaxSessionDuration"))
2073
+ RoleTemplateVersion.add_member(:version_enabled, Shapes::ShapeRef.new(shape: booleanType, location_name: "VersionEnabled"))
2074
+ RoleTemplateVersion.add_member(:create_timestamp, Shapes::ShapeRef.new(shape: dateType, location_name: "CreateTimestamp"))
2075
+ RoleTemplateVersion.add_member(:update_timestamp, Shapes::ShapeRef.new(shape: dateType, location_name: "UpdateTimestamp"))
2076
+ RoleTemplateVersion.struct_class = Types::RoleTemplateVersion
2077
+
1958
2078
  RoleUsageListType.member = Shapes::ShapeRef.new(shape: RoleUsageType)
1959
2079
 
1960
2080
  RoleUsageType.add_member(:region, Shapes::ShapeRef.new(shape: RegionNameType, location_name: "Region"))
@@ -2098,6 +2218,10 @@ module Aws::IAM
2098
2218
 
2099
2219
  SimulationPolicyListType.member = Shapes::ShapeRef.new(shape: policyDocumentType)
2100
2220
 
2221
+ SourceRoleTemplate.add_member(:template_arn, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "TemplateArn"))
2222
+ SourceRoleTemplate.add_member(:template_minor_version, Shapes::ShapeRef.new(shape: integerType, required: true, location_name: "TemplateMinorVersion"))
2223
+ SourceRoleTemplate.struct_class = Types::SourceRoleTemplate
2224
+
2101
2225
  Statement.add_member(:source_policy_id, Shapes::ShapeRef.new(shape: PolicyIdentifierType, location_name: "SourcePolicyId"))
2102
2226
  Statement.add_member(:source_policy_type, Shapes::ShapeRef.new(shape: PolicySourceType, location_name: "SourcePolicyType"))
2103
2227
  Statement.add_member(:start_position, Shapes::ShapeRef.new(shape: Position, location_name: "StartPosition"))
@@ -2138,6 +2262,10 @@ module Aws::IAM
2138
2262
  TagServerCertificateRequest.add_member(:tags, Shapes::ShapeRef.new(shape: tagListType, required: true, location_name: "Tags"))
2139
2263
  TagServerCertificateRequest.struct_class = Types::TagServerCertificateRequest
2140
2264
 
2265
+ TagTemplate.add_member(:key, Shapes::ShapeRef.new(shape: tagTemplateKeyType, required: true, location_name: "Key"))
2266
+ TagTemplate.add_member(:value, Shapes::ShapeRef.new(shape: tagTemplateValueType, required: true, location_name: "Value"))
2267
+ TagTemplate.struct_class = Types::TagTemplate
2268
+
2141
2269
  TagUserRequest.add_member(:user_name, Shapes::ShapeRef.new(shape: existingUserNameType, required: true, location_name: "UserName"))
2142
2270
  TagUserRequest.add_member(:tags, Shapes::ShapeRef.new(shape: tagListType, required: true, location_name: "Tags"))
2143
2271
  TagUserRequest.struct_class = Types::TagUserRequest
@@ -2335,6 +2463,9 @@ module Aws::IAM
2335
2463
 
2336
2464
  accountAliasListType.member = Shapes::ShapeRef.new(shape: accountAliasType)
2337
2465
 
2466
+ accountPropertiesMapType.key = Shapes::ShapeRef.new(shape: accountPropertyKeyType)
2467
+ accountPropertiesMapType.value = Shapes::ShapeRef.new(shape: accountPropertyValueType)
2468
+
2338
2469
  attachedPoliciesListType.member = Shapes::ShapeRef.new(shape: AttachedPolicy)
2339
2470
 
2340
2471
  certificateListType.member = Shapes::ShapeRef.new(shape: SigningCertificate)
@@ -2353,12 +2484,21 @@ module Aws::IAM
2353
2484
 
2354
2485
  groupNameListType.member = Shapes::ShapeRef.new(shape: groupNameType)
2355
2486
 
2487
+ inlinePolicyTemplateListType.member = Shapes::ShapeRef.new(shape: InlinePolicy)
2488
+
2356
2489
  instanceProfileListType.member = Shapes::ShapeRef.new(shape: InstanceProfile)
2357
2490
 
2358
2491
  listPolicyGrantingServiceAccessResponseListType.member = Shapes::ShapeRef.new(shape: ListPoliciesGrantingServiceAccessEntry)
2359
2492
 
2493
+ managedPolicyArnListType.member = Shapes::ShapeRef.new(shape: arnType)
2494
+
2495
+ mapStringReplacementValueEntry.key = Shapes::ShapeRef.new(shape: stringType)
2496
+ mapStringReplacementValueEntry.value = Shapes::ShapeRef.new(shape: ReplacementValueEntry)
2497
+
2360
2498
  mfaDeviceListType.member = Shapes::ShapeRef.new(shape: MFADevice)
2361
2499
 
2500
+ parametersDefinitionListType.member = Shapes::ShapeRef.new(shape: ParameterDefinition)
2501
+
2362
2502
  policyDetailListType.member = Shapes::ShapeRef.new(shape: PolicyDetail)
2363
2503
 
2364
2504
  policyDocumentVersionListType.member = Shapes::ShapeRef.new(shape: PolicyVersion)
@@ -2375,6 +2515,8 @@ module Aws::IAM
2375
2515
 
2376
2516
  privateKeyList.member = Shapes::ShapeRef.new(shape: SAMLPrivateKey)
2377
2517
 
2518
+ replacementValueListType.member = Shapes::ShapeRef.new(shape: stringType)
2519
+
2378
2520
  roleDetailListType.member = Shapes::ShapeRef.new(shape: RoleDetail)
2379
2521
 
2380
2522
  roleListType.member = Shapes::ShapeRef.new(shape: Role)
@@ -2392,6 +2534,8 @@ module Aws::IAM
2392
2534
 
2393
2535
  tagListType.member = Shapes::ShapeRef.new(shape: Tag)
2394
2536
 
2537
+ tagTemplateListType.member = Shapes::ShapeRef.new(shape: TagTemplate)
2538
+
2395
2539
  thumbprintListType.member = Shapes::ShapeRef.new(shape: thumbprintType)
2396
2540
 
2397
2541
  userDetailListType.member = Shapes::ShapeRef.new(shape: UserDetail)
@@ -2432,6 +2576,24 @@ module Aws::IAM
2432
2576
  o.errors << Shapes::ShapeRef.new(shape: ConcurrentModificationException)
2433
2577
  end)
2434
2578
 
2579
+ api.add_operation(:acquire_role, Seahorse::Model::Operation.new.tap do |o|
2580
+ o.name = "AcquireRole"
2581
+ o.http_method = "POST"
2582
+ o.http_request_uri = "/"
2583
+ o.input = Shapes::ShapeRef.new(shape: AcquireRoleRequest)
2584
+ o.output = Shapes::ShapeRef.new(shape: AcquireRoleResponse)
2585
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
2586
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
2587
+ o.errors << Shapes::ShapeRef.new(shape: EntityAlreadyExistsException)
2588
+ o.errors << Shapes::ShapeRef.new(shape: RoleModifiedException)
2589
+ o.errors << Shapes::ShapeRef.new(shape: NameConflictException)
2590
+ o.errors << Shapes::ShapeRef.new(shape: MalformedPolicyDocumentException)
2591
+ o.errors << Shapes::ShapeRef.new(shape: ConcurrentModificationException)
2592
+ o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
2593
+ o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
2594
+ o.errors << Shapes::ShapeRef.new(shape: RoleTemplateDisabledException)
2595
+ end)
2596
+
2435
2597
  api.add_operation(:add_client_id_to_open_id_connect_provider, Seahorse::Model::Operation.new.tap do |o|
2436
2598
  o.name = "AddClientIDToOpenIDConnectProvider"
2437
2599
  o.http_method = "POST"
@@ -3190,6 +3352,16 @@ module Aws::IAM
3190
3352
  o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
3191
3353
  end)
3192
3354
 
3355
+ api.add_operation(:get_account_properties, Seahorse::Model::Operation.new.tap do |o|
3356
+ o.name = "GetAccountProperties"
3357
+ o.http_method = "POST"
3358
+ o.http_request_uri = "/"
3359
+ o.input = Shapes::ShapeRef.new(shape: GetAccountPropertiesRequest)
3360
+ o.output = Shapes::ShapeRef.new(shape: GetAccountPropertiesResponse)
3361
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
3362
+ o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
3363
+ end)
3364
+
3193
3365
  api.add_operation(:get_account_summary, Seahorse::Model::Operation.new.tap do |o|
3194
3366
  o.name = "GetAccountSummary"
3195
3367
  o.http_method = "POST"
@@ -3379,6 +3551,17 @@ module Aws::IAM
3379
3551
  o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
3380
3552
  end)
3381
3553
 
3554
+ api.add_operation(:get_role_template_version, Seahorse::Model::Operation.new.tap do |o|
3555
+ o.name = "GetRoleTemplateVersion"
3556
+ o.http_method = "POST"
3557
+ o.http_request_uri = "/"
3558
+ o.input = Shapes::ShapeRef.new(shape: GetRoleTemplateVersionRequest)
3559
+ o.output = Shapes::ShapeRef.new(shape: GetRoleTemplateVersionResponse)
3560
+ o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
3561
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
3562
+ o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
3563
+ end)
3564
+
3382
3565
  api.add_operation(:get_saml_provider, Seahorse::Model::Operation.new.tap do |o|
3383
3566
  o.name = "GetSAMLProvider"
3384
3567
  o.http_method = "POST"
@@ -4031,6 +4214,17 @@ module Aws::IAM
4031
4214
  )
4032
4215
  end)
4033
4216
 
4217
+ api.add_operation(:put_account_properties, Seahorse::Model::Operation.new.tap do |o|
4218
+ o.name = "PutAccountProperties"
4219
+ o.http_method = "POST"
4220
+ o.http_request_uri = "/"
4221
+ o.input = Shapes::ShapeRef.new(shape: PutAccountPropertiesRequest)
4222
+ o.output = Shapes::ShapeRef.new(shape: PutAccountPropertiesResponse)
4223
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
4224
+ o.errors << Shapes::ShapeRef.new(shape: ConcurrentModificationException)
4225
+ o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
4226
+ end)
4227
+
4034
4228
  api.add_operation(:put_group_policy, Seahorse::Model::Operation.new.tap do |o|
4035
4229
  o.name = "PutGroupPolicy"
4036
4230
  o.http_method = "POST"
@@ -69,6 +69,8 @@ module Aws::IAM
69
69
  # * This error class is not used. `MalformedCertificate` is used during parsing instead.
70
70
  # * {MalformedPolicyDocumentException}
71
71
  # * This error class is not used. `MalformedPolicyDocument` is used during parsing instead.
72
+ # * {NameConflictException}
73
+ # * This error class is not used. `NameConflict` is used during parsing instead.
72
74
  # * {NoSuchEntityException}
73
75
  # * This error class is not used. `NoSuchEntity` is used during parsing instead.
74
76
  # * {OpenIdIdpCommunicationErrorException}
@@ -83,6 +85,10 @@ module Aws::IAM
83
85
  # * This error class is not used. `PolicyNotAttachable` is used during parsing instead.
84
86
  # * {ReportGenerationLimitExceededException}
85
87
  # * This error class is not used. `ReportGenerationLimitExceeded` is used during parsing instead.
88
+ # * {RoleModifiedException}
89
+ # * This error class is not used. `RoleModified` is used during parsing instead.
90
+ # * {RoleTemplateDisabledException}
91
+ # * This error class is not used. `RoleTemplateDisabled` is used during parsing instead.
86
92
  # * {ServiceAccessNotEnabledException}
87
93
  # * {ServiceFailureException}
88
94
  # * This error class is not used. `ServiceFailure` is used during parsing instead.
@@ -459,6 +465,23 @@ module Aws::IAM
459
465
  end
460
466
  end
461
467
 
468
+ # @deprecated This error class is not used during parsing.
469
+ # Please use `NameConflict` instead.
470
+ class NameConflictException < ServiceError
471
+
472
+ # @param [Seahorse::Client::RequestContext] context
473
+ # @param [String] message
474
+ # @param [Aws::IAM::Types::NameConflictException] data
475
+ def initialize(context, message, data = Aws::EmptyStructure.new)
476
+ super(context, message, data)
477
+ end
478
+
479
+ # @return [String]
480
+ def message
481
+ @message || @data[:message]
482
+ end
483
+ end
484
+
462
485
  # @deprecated This error class is not used during parsing.
463
486
  # Please use `NoSuchEntity` instead.
464
487
  class NoSuchEntityException < ServiceError
@@ -581,6 +604,40 @@ module Aws::IAM
581
604
  end
582
605
  end
583
606
 
607
+ # @deprecated This error class is not used during parsing.
608
+ # Please use `RoleModified` instead.
609
+ class RoleModifiedException < ServiceError
610
+
611
+ # @param [Seahorse::Client::RequestContext] context
612
+ # @param [String] message
613
+ # @param [Aws::IAM::Types::RoleModifiedException] data
614
+ def initialize(context, message, data = Aws::EmptyStructure.new)
615
+ super(context, message, data)
616
+ end
617
+
618
+ # @return [String]
619
+ def message
620
+ @message || @data[:message]
621
+ end
622
+ end
623
+
624
+ # @deprecated This error class is not used during parsing.
625
+ # Please use `RoleTemplateDisabled` instead.
626
+ class RoleTemplateDisabledException < ServiceError
627
+
628
+ # @param [Seahorse::Client::RequestContext] context
629
+ # @param [String] message
630
+ # @param [Aws::IAM::Types::RoleTemplateDisabledException] data
631
+ def initialize(context, message, data = Aws::EmptyStructure.new)
632
+ super(context, message, data)
633
+ end
634
+
635
+ # @return [String]
636
+ def message
637
+ @message || @data[:message]
638
+ end
639
+ end
640
+
584
641
  class ServiceAccessNotEnabledException < ServiceError
585
642
 
586
643
  # @param [Seahorse::Client::RequestContext] context
@@ -143,6 +143,18 @@ module Aws::IAM
143
143
  data[:role_last_used]
144
144
  end
145
145
 
146
+ # Contains information about the role template that this role was
147
+ # created from. This member is present only for roles created with
148
+ # [AcquireRole][1].
149
+ #
150
+ #
151
+ #
152
+ # [1]: https://docs.aws.amazon.com/IAM/latest/APIReference/API_AcquireRole.html
153
+ # @return [Types::SourceRoleTemplate]
154
+ def source_role_template
155
+ data[:source_role_template]
156
+ end
157
+
146
158
  # @!endgroup
147
159
 
148
160
  # @return [Client]