aws-sdk-iam 1.2.0 → 1.3.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
  SHA1:
3
- metadata.gz: 34447b95daec77c8a33749df9cbf2815aa980b00
4
- data.tar.gz: 504aab29c1d95c9375fd4b2a9fbce82b7a63c8e0
3
+ metadata.gz: 2e89f4247a115db9ca87b66116f0106ce3c6037a
4
+ data.tar.gz: 44f5baec07931eb1ebbdc18049150589f787da94
5
5
  SHA512:
6
- metadata.gz: a930126f6176cd90d1ea02c6053c98e308575c997968f7e5e45612ea7fa4ae89bc14329bd2caa42c4a2e406d9700640e8a26b1bb4c75bd2ac37416973777cc38
7
- data.tar.gz: d19831f886d6e9023ed6a1b928f5d9cabc078a8bfc8d591d1f554f09dd50a84eee83f486020288deed0018e14935ad71a6df8ceef73ddafab2091347e5218662
6
+ metadata.gz: c4dd248bb48875de1327da22ec1cdfa655d477d97fe58a49b540c6f59ee1df4422932fbeefc44c53ad024a93a38c446ca80a66a64d111b6e11430135c254dc69
7
+ data.tar.gz: 1ec446ebc2ab4bbb0e0a49c454667c3265ad15ae0b705ee54d090d14ca54969f18fcabacbf477f821cdeb74fdd38fb03e7fdf5138451cae27afcd333108b381b
@@ -64,6 +64,6 @@ require_relative 'aws-sdk-iam/customizations'
64
64
  # @service
65
65
  module Aws::IAM
66
66
 
67
- GEM_VERSION = '1.2.0'
67
+ GEM_VERSION = '1.3.0'
68
68
 
69
69
  end
@@ -1125,7 +1125,7 @@ module Aws::IAM
1125
1125
  # This parameter allows (per its [regex pattern][1]) a string of
1126
1126
  # characters consisting of upper and lowercase alphanumeric characters
1127
1127
  # with no spaces. You can also include any of the following characters:
1128
- # =,.@-
1128
+ # =,.@-+
1129
1129
  #
1130
1130
  #
1131
1131
  #
@@ -2053,7 +2053,7 @@ module Aws::IAM
2053
2053
  # This parameter allows (per its [regex pattern][1]) a string of
2054
2054
  # characters consisting of upper and lowercase alphanumeric characters
2055
2055
  # with no spaces. You can also include any of the following characters:
2056
- # =,.@-
2056
+ # =,.@-+
2057
2057
  #
2058
2058
  #
2059
2059
  #
@@ -2416,7 +2416,7 @@ module Aws::IAM
2416
2416
  # This parameter allows (per its [regex pattern][1]) a string of
2417
2417
  # characters consisting of upper and lowercase alphanumeric characters
2418
2418
  # with no spaces. You can also include any of the following characters:
2419
- # =,.@-
2419
+ # =,.@-+
2420
2420
  #
2421
2421
  #
2422
2422
  #
@@ -2589,6 +2589,58 @@ module Aws::IAM
2589
2589
  req.send_request(options)
2590
2590
  end
2591
2591
 
2592
+ # Submits a service-linked role deletion request and returns a
2593
+ # `DeletionTaskId`, which you can use to check the status of the
2594
+ # deletion. Before you call this operation, confirm that the role has no
2595
+ # active sessions and that any resources used by the role in the linked
2596
+ # service are deleted. If you call this operation more than once for the
2597
+ # same service-linked role and an earlier deletion task is not complete,
2598
+ # then the `DeletionTaskId` of the earlier request is returned.
2599
+ #
2600
+ # If you submit a deletion request for a service-linked role whose
2601
+ # linked service is still accessing a resource, then the deletion task
2602
+ # fails. If it fails, the GetServiceLinkedRoleDeletionStatus API
2603
+ # operation returns the reason for the failure, including the resources
2604
+ # that must be deleted. To delete the service-linked role, you must
2605
+ # first remove those resources from the linked service and then submit
2606
+ # the deletion request again. Resources are specific to the service that
2607
+ # is linked to the role. For more information about removing resources
2608
+ # from a service, see the [AWS documentation][1] for your service.
2609
+ #
2610
+ # For more information about service-linked roles, see [Roles Terms and
2611
+ # Concepts: AWS Service-Linked Role][2] in the *IAM User Guide*.
2612
+ #
2613
+ #
2614
+ #
2615
+ # [1]: http://docs.aws.amazon.com/
2616
+ # [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role
2617
+ #
2618
+ # @option params [required, String] :role_name
2619
+ # The name of the service-linked role to be deleted.
2620
+ #
2621
+ # @return [Types::DeleteServiceLinkedRoleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2622
+ #
2623
+ # * {Types::DeleteServiceLinkedRoleResponse#deletion_task_id #deletion_task_id} => String
2624
+ #
2625
+ # @example Request syntax with placeholder values
2626
+ #
2627
+ # resp = client.delete_service_linked_role({
2628
+ # role_name: "roleNameType", # required
2629
+ # })
2630
+ #
2631
+ # @example Response structure
2632
+ #
2633
+ # resp.deletion_task_id #=> String
2634
+ #
2635
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteServiceLinkedRole AWS API Documentation
2636
+ #
2637
+ # @overload delete_service_linked_role(params = {})
2638
+ # @param [Hash] params ({})
2639
+ def delete_service_linked_role(params = {}, options = {})
2640
+ req = build_request(:delete_service_linked_role, params)
2641
+ req.send_request(options)
2642
+ end
2643
+
2592
2644
  # Deletes the specified service-specific credential.
2593
2645
  #
2594
2646
  # @option params [String] :user_name
@@ -2766,7 +2818,7 @@ module Aws::IAM
2766
2818
  # This parameter allows (per its [regex pattern][1]) a string of
2767
2819
  # characters consisting of upper and lowercase alphanumeric characters
2768
2820
  # with no spaces. You can also include any of the following characters:
2769
- # =,.@-
2821
+ # =,.@-+
2770
2822
  #
2771
2823
  #
2772
2824
  #
@@ -3693,7 +3745,7 @@ module Aws::IAM
3693
3745
  # This parameter allows (per its [regex pattern][1]) a string of
3694
3746
  # characters consisting of upper and lowercase alphanumeric characters
3695
3747
  # with no spaces. You can also include any of the following characters:
3696
- # =,.@-
3748
+ # =,.@-+
3697
3749
  #
3698
3750
  #
3699
3751
  #
@@ -4185,7 +4237,7 @@ module Aws::IAM
4185
4237
  # This parameter allows (per its [regex pattern][1]) a string of
4186
4238
  # characters consisting of upper and lowercase alphanumeric characters
4187
4239
  # with no spaces. You can also include any of the following characters:
4188
- # =,.@-
4240
+ # =,.@-+
4189
4241
  #
4190
4242
  #
4191
4243
  #
@@ -4394,6 +4446,47 @@ module Aws::IAM
4394
4446
  req.send_request(options)
4395
4447
  end
4396
4448
 
4449
+ # Retrieves the status of your service-linked role deletion. After you
4450
+ # use the DeleteServiceLinkedRole API operation to submit a
4451
+ # service-linked role for deletion, you can use the `DeletionTaskId`
4452
+ # parameter in `GetServiceLinkedRoleDeletionStatus` to check the status
4453
+ # of the deletion. If the deletion fails, this operation returns the
4454
+ # reason that it failed.
4455
+ #
4456
+ # @option params [required, String] :deletion_task_id
4457
+ # The deletion task identifier. This identifier is returned by the
4458
+ # DeleteServiceLinkedRole operation in the format
4459
+ # `task/aws-service-role/<service-principal-name>/<role-name>/<task-uuid>`.
4460
+ #
4461
+ # @return [Types::GetServiceLinkedRoleDeletionStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4462
+ #
4463
+ # * {Types::GetServiceLinkedRoleDeletionStatusResponse#status #status} => String
4464
+ # * {Types::GetServiceLinkedRoleDeletionStatusResponse#reason #reason} => Types::DeletionTaskFailureReasonType
4465
+ #
4466
+ # @example Request syntax with placeholder values
4467
+ #
4468
+ # resp = client.get_service_linked_role_deletion_status({
4469
+ # deletion_task_id: "DeletionTaskIdType", # required
4470
+ # })
4471
+ #
4472
+ # @example Response structure
4473
+ #
4474
+ # resp.status #=> String, one of "SUCCEEDED", "IN_PROGRESS", "FAILED", "NOT_STARTED"
4475
+ # resp.reason.reason #=> String
4476
+ # resp.reason.role_usage_list #=> Array
4477
+ # resp.reason.role_usage_list[0].region #=> String
4478
+ # resp.reason.role_usage_list[0].resources #=> Array
4479
+ # resp.reason.role_usage_list[0].resources[0] #=> String
4480
+ #
4481
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetServiceLinkedRoleDeletionStatus AWS API Documentation
4482
+ #
4483
+ # @overload get_service_linked_role_deletion_status(params = {})
4484
+ # @param [Hash] params ({})
4485
+ def get_service_linked_role_deletion_status(params = {}, options = {})
4486
+ req = build_request(:get_service_linked_role_deletion_status, params)
4487
+ req.send_request(options)
4488
+ end
4489
+
4397
4490
  # Retrieves information about the specified IAM user, including the
4398
4491
  # user's creation date, path, unique ID, and ARN.
4399
4492
  #
@@ -4504,7 +4597,7 @@ module Aws::IAM
4504
4597
  # This parameter allows (per its [regex pattern][1]) a string of
4505
4598
  # characters consisting of upper and lowercase alphanumeric characters
4506
4599
  # with no spaces. You can also include any of the following characters:
4507
- # =,.@-
4600
+ # =,.@-+
4508
4601
  #
4509
4602
  #
4510
4603
  #
@@ -6695,7 +6788,7 @@ module Aws::IAM
6695
6788
  # This parameter allows (per its [regex pattern][1]) a string of
6696
6789
  # characters consisting of upper and lowercase alphanumeric characters
6697
6790
  # with no spaces. You can also include any of the following characters:
6698
- # =,.@-
6791
+ # =,.@-+
6699
6792
  #
6700
6793
  #
6701
6794
  #
@@ -6797,7 +6890,7 @@ module Aws::IAM
6797
6890
  # This parameter allows (per its [regex pattern][1]) a string of
6798
6891
  # characters consisting of upper and lowercase alphanumeric characters
6799
6892
  # with no spaces. You can also include any of the following characters:
6800
- # =,.@-
6893
+ # =,.@-+
6801
6894
  #
6802
6895
  #
6803
6896
  #
@@ -6891,7 +6984,7 @@ module Aws::IAM
6891
6984
  # This parameter allows (per its [regex pattern][1]) a string of
6892
6985
  # characters consisting of upper and lowercase alphanumeric characters
6893
6986
  # with no spaces. You can also include any of the following characters:
6894
- # =,.@-
6987
+ # =,.@-+
6895
6988
  #
6896
6989
  #
6897
6990
  #
@@ -9110,7 +9203,7 @@ module Aws::IAM
9110
9203
  params: params,
9111
9204
  config: config)
9112
9205
  context[:gem_name] = 'aws-sdk-iam'
9113
- context[:gem_version] = '1.2.0'
9206
+ context[:gem_version] = '1.3.0'
9114
9207
  Seahorse::Client::Request.new(handlers, context)
9115
9208
  end
9116
9209
 
@@ -19,6 +19,7 @@ module Aws::IAM
19
19
  AddClientIDToOpenIDConnectProviderRequest = Shapes::StructureShape.new(name: 'AddClientIDToOpenIDConnectProviderRequest')
20
20
  AddRoleToInstanceProfileRequest = Shapes::StructureShape.new(name: 'AddRoleToInstanceProfileRequest')
21
21
  AddUserToGroupRequest = Shapes::StructureShape.new(name: 'AddUserToGroupRequest')
22
+ ArnListType = Shapes::ListShape.new(name: 'ArnListType')
22
23
  AttachGroupPolicyRequest = Shapes::StructureShape.new(name: 'AttachGroupPolicyRequest')
23
24
  AttachRolePolicyRequest = Shapes::StructureShape.new(name: 'AttachRolePolicyRequest')
24
25
  AttachUserPolicyRequest = Shapes::StructureShape.new(name: 'AttachUserPolicyRequest')
@@ -79,11 +80,16 @@ module Aws::IAM
79
80
  DeleteSAMLProviderRequest = Shapes::StructureShape.new(name: 'DeleteSAMLProviderRequest')
80
81
  DeleteSSHPublicKeyRequest = Shapes::StructureShape.new(name: 'DeleteSSHPublicKeyRequest')
81
82
  DeleteServerCertificateRequest = Shapes::StructureShape.new(name: 'DeleteServerCertificateRequest')
83
+ DeleteServiceLinkedRoleRequest = Shapes::StructureShape.new(name: 'DeleteServiceLinkedRoleRequest')
84
+ DeleteServiceLinkedRoleResponse = Shapes::StructureShape.new(name: 'DeleteServiceLinkedRoleResponse')
82
85
  DeleteServiceSpecificCredentialRequest = Shapes::StructureShape.new(name: 'DeleteServiceSpecificCredentialRequest')
83
86
  DeleteSigningCertificateRequest = Shapes::StructureShape.new(name: 'DeleteSigningCertificateRequest')
84
87
  DeleteUserPolicyRequest = Shapes::StructureShape.new(name: 'DeleteUserPolicyRequest')
85
88
  DeleteUserRequest = Shapes::StructureShape.new(name: 'DeleteUserRequest')
86
89
  DeleteVirtualMFADeviceRequest = Shapes::StructureShape.new(name: 'DeleteVirtualMFADeviceRequest')
90
+ DeletionTaskFailureReasonType = Shapes::StructureShape.new(name: 'DeletionTaskFailureReasonType')
91
+ DeletionTaskIdType = Shapes::StringShape.new(name: 'DeletionTaskIdType')
92
+ DeletionTaskStatusType = Shapes::StringShape.new(name: 'DeletionTaskStatusType')
87
93
  DetachGroupPolicyRequest = Shapes::StructureShape.new(name: 'DetachGroupPolicyRequest')
88
94
  DetachRolePolicyRequest = Shapes::StructureShape.new(name: 'DetachRolePolicyRequest')
89
95
  DetachUserPolicyRequest = Shapes::StructureShape.new(name: 'DetachUserPolicyRequest')
@@ -132,6 +138,8 @@ module Aws::IAM
132
138
  GetSSHPublicKeyResponse = Shapes::StructureShape.new(name: 'GetSSHPublicKeyResponse')
133
139
  GetServerCertificateRequest = Shapes::StructureShape.new(name: 'GetServerCertificateRequest')
134
140
  GetServerCertificateResponse = Shapes::StructureShape.new(name: 'GetServerCertificateResponse')
141
+ GetServiceLinkedRoleDeletionStatusRequest = Shapes::StructureShape.new(name: 'GetServiceLinkedRoleDeletionStatusRequest')
142
+ GetServiceLinkedRoleDeletionStatusResponse = Shapes::StructureShape.new(name: 'GetServiceLinkedRoleDeletionStatusResponse')
135
143
  GetUserPolicyRequest = Shapes::StructureShape.new(name: 'GetUserPolicyRequest')
136
144
  GetUserPolicyResponse = Shapes::StructureShape.new(name: 'GetUserPolicyResponse')
137
145
  GetUserRequest = Shapes::StructureShape.new(name: 'GetUserRequest')
@@ -217,6 +225,7 @@ module Aws::IAM
217
225
  PolicyGroup = Shapes::StructureShape.new(name: 'PolicyGroup')
218
226
  PolicyGroupListType = Shapes::ListShape.new(name: 'PolicyGroupListType')
219
227
  PolicyIdentifierType = Shapes::StringShape.new(name: 'PolicyIdentifierType')
228
+ PolicyNotAttachableException = Shapes::StructureShape.new(name: 'PolicyNotAttachableException')
220
229
  PolicyRole = Shapes::StructureShape.new(name: 'PolicyRole')
221
230
  PolicyRoleListType = Shapes::ListShape.new(name: 'PolicyRoleListType')
222
231
  PolicySourceType = Shapes::StringShape.new(name: 'PolicySourceType')
@@ -227,6 +236,8 @@ module Aws::IAM
227
236
  PutGroupPolicyRequest = Shapes::StructureShape.new(name: 'PutGroupPolicyRequest')
228
237
  PutRolePolicyRequest = Shapes::StructureShape.new(name: 'PutRolePolicyRequest')
229
238
  PutUserPolicyRequest = Shapes::StructureShape.new(name: 'PutUserPolicyRequest')
239
+ ReasonType = Shapes::StringShape.new(name: 'ReasonType')
240
+ RegionNameType = Shapes::StringShape.new(name: 'RegionNameType')
230
241
  RemoveClientIDFromOpenIDConnectProviderRequest = Shapes::StructureShape.new(name: 'RemoveClientIDFromOpenIDConnectProviderRequest')
231
242
  RemoveRoleFromInstanceProfileRequest = Shapes::StructureShape.new(name: 'RemoveRoleFromInstanceProfileRequest')
232
243
  RemoveUserFromGroupRequest = Shapes::StructureShape.new(name: 'RemoveUserFromGroupRequest')
@@ -244,6 +255,8 @@ module Aws::IAM
244
255
  ResyncMFADeviceRequest = Shapes::StructureShape.new(name: 'ResyncMFADeviceRequest')
245
256
  Role = Shapes::StructureShape.new(name: 'Role')
246
257
  RoleDetail = Shapes::StructureShape.new(name: 'RoleDetail')
258
+ RoleUsageListType = Shapes::ListShape.new(name: 'RoleUsageListType')
259
+ RoleUsageType = Shapes::StructureShape.new(name: 'RoleUsageType')
247
260
  SAMLMetadataDocumentType = Shapes::StringShape.new(name: 'SAMLMetadataDocumentType')
248
261
  SAMLProviderListEntry = Shapes::StructureShape.new(name: 'SAMLProviderListEntry')
249
262
  SAMLProviderListType = Shapes::ListShape.new(name: 'SAMLProviderListType')
@@ -358,6 +371,7 @@ module Aws::IAM
358
371
  policyListType = Shapes::ListShape.new(name: 'policyListType')
359
372
  policyNameListType = Shapes::ListShape.new(name: 'policyNameListType')
360
373
  policyNameType = Shapes::StringShape.new(name: 'policyNameType')
374
+ policyNotAttachableMessage = Shapes::StringShape.new(name: 'policyNotAttachableMessage')
361
375
  policyPathType = Shapes::StringShape.new(name: 'policyPathType')
362
376
  policyScopeType = Shapes::StringShape.new(name: 'policyScopeType')
363
377
  policyVersionIdType = Shapes::StringShape.new(name: 'policyVersionIdType')
@@ -425,6 +439,8 @@ module Aws::IAM
425
439
  AddUserToGroupRequest.add_member(:user_name, Shapes::ShapeRef.new(shape: existingUserNameType, required: true, location_name: "UserName"))
426
440
  AddUserToGroupRequest.struct_class = Types::AddUserToGroupRequest
427
441
 
442
+ ArnListType.member = Shapes::ShapeRef.new(shape: arnType)
443
+
428
444
  AttachGroupPolicyRequest.add_member(:group_name, Shapes::ShapeRef.new(shape: groupNameType, required: true, location_name: "GroupName"))
429
445
  AttachGroupPolicyRequest.add_member(:policy_arn, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "PolicyArn"))
430
446
  AttachGroupPolicyRequest.struct_class = Types::AttachGroupPolicyRequest
@@ -608,6 +624,12 @@ module Aws::IAM
608
624
  DeleteServerCertificateRequest.add_member(:server_certificate_name, Shapes::ShapeRef.new(shape: serverCertificateNameType, required: true, location_name: "ServerCertificateName"))
609
625
  DeleteServerCertificateRequest.struct_class = Types::DeleteServerCertificateRequest
610
626
 
627
+ DeleteServiceLinkedRoleRequest.add_member(:role_name, Shapes::ShapeRef.new(shape: roleNameType, required: true, location_name: "RoleName"))
628
+ DeleteServiceLinkedRoleRequest.struct_class = Types::DeleteServiceLinkedRoleRequest
629
+
630
+ DeleteServiceLinkedRoleResponse.add_member(:deletion_task_id, Shapes::ShapeRef.new(shape: DeletionTaskIdType, required: true, location_name: "DeletionTaskId"))
631
+ DeleteServiceLinkedRoleResponse.struct_class = Types::DeleteServiceLinkedRoleResponse
632
+
611
633
  DeleteServiceSpecificCredentialRequest.add_member(:user_name, Shapes::ShapeRef.new(shape: userNameType, location_name: "UserName"))
612
634
  DeleteServiceSpecificCredentialRequest.add_member(:service_specific_credential_id, Shapes::ShapeRef.new(shape: serviceSpecificCredentialId, required: true, location_name: "ServiceSpecificCredentialId"))
613
635
  DeleteServiceSpecificCredentialRequest.struct_class = Types::DeleteServiceSpecificCredentialRequest
@@ -626,6 +648,10 @@ module Aws::IAM
626
648
  DeleteVirtualMFADeviceRequest.add_member(:serial_number, Shapes::ShapeRef.new(shape: serialNumberType, required: true, location_name: "SerialNumber"))
627
649
  DeleteVirtualMFADeviceRequest.struct_class = Types::DeleteVirtualMFADeviceRequest
628
650
 
651
+ DeletionTaskFailureReasonType.add_member(:reason, Shapes::ShapeRef.new(shape: ReasonType, location_name: "Reason"))
652
+ DeletionTaskFailureReasonType.add_member(:role_usage_list, Shapes::ShapeRef.new(shape: RoleUsageListType, location_name: "RoleUsageList"))
653
+ DeletionTaskFailureReasonType.struct_class = Types::DeletionTaskFailureReasonType
654
+
629
655
  DetachGroupPolicyRequest.add_member(:group_name, Shapes::ShapeRef.new(shape: groupNameType, required: true, location_name: "GroupName"))
630
656
  DetachGroupPolicyRequest.add_member(:policy_arn, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "PolicyArn"))
631
657
  DetachGroupPolicyRequest.struct_class = Types::DetachGroupPolicyRequest
@@ -795,6 +821,13 @@ module Aws::IAM
795
821
  GetServerCertificateResponse.add_member(:server_certificate, Shapes::ShapeRef.new(shape: ServerCertificate, required: true, location_name: "ServerCertificate"))
796
822
  GetServerCertificateResponse.struct_class = Types::GetServerCertificateResponse
797
823
 
824
+ GetServiceLinkedRoleDeletionStatusRequest.add_member(:deletion_task_id, Shapes::ShapeRef.new(shape: DeletionTaskIdType, required: true, location_name: "DeletionTaskId"))
825
+ GetServiceLinkedRoleDeletionStatusRequest.struct_class = Types::GetServiceLinkedRoleDeletionStatusRequest
826
+
827
+ GetServiceLinkedRoleDeletionStatusResponse.add_member(:status, Shapes::ShapeRef.new(shape: DeletionTaskStatusType, required: true, location_name: "Status"))
828
+ GetServiceLinkedRoleDeletionStatusResponse.add_member(:reason, Shapes::ShapeRef.new(shape: DeletionTaskFailureReasonType, location_name: "Reason"))
829
+ GetServiceLinkedRoleDeletionStatusResponse.struct_class = Types::GetServiceLinkedRoleDeletionStatusResponse
830
+
798
831
  GetUserPolicyRequest.add_member(:user_name, Shapes::ShapeRef.new(shape: existingUserNameType, required: true, location_name: "UserName"))
799
832
  GetUserPolicyRequest.add_member(:policy_name, Shapes::ShapeRef.new(shape: policyNameType, required: true, location_name: "PolicyName"))
800
833
  GetUserPolicyRequest.struct_class = Types::GetUserPolicyRequest
@@ -1239,6 +1272,12 @@ module Aws::IAM
1239
1272
  RoleDetail.add_member(:attached_managed_policies, Shapes::ShapeRef.new(shape: attachedPoliciesListType, location_name: "AttachedManagedPolicies"))
1240
1273
  RoleDetail.struct_class = Types::RoleDetail
1241
1274
 
1275
+ RoleUsageListType.member = Shapes::ShapeRef.new(shape: RoleUsageType)
1276
+
1277
+ RoleUsageType.add_member(:region, Shapes::ShapeRef.new(shape: RegionNameType, location_name: "Region"))
1278
+ RoleUsageType.add_member(:resources, Shapes::ShapeRef.new(shape: ArnListType, location_name: "Resources"))
1279
+ RoleUsageType.struct_class = Types::RoleUsageType
1280
+
1242
1281
  SAMLProviderListEntry.add_member(:arn, Shapes::ShapeRef.new(shape: arnType, location_name: "Arn"))
1243
1282
  SAMLProviderListEntry.add_member(:valid_until, Shapes::ShapeRef.new(shape: dateType, location_name: "ValidUntil"))
1244
1283
  SAMLProviderListEntry.add_member(:create_date, Shapes::ShapeRef.new(shape: dateType, location_name: "CreateDate"))
@@ -1573,6 +1612,7 @@ module Aws::IAM
1573
1612
  o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
1574
1613
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1575
1614
  o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
1615
+ o.errors << Shapes::ShapeRef.new(shape: PolicyNotAttachableException)
1576
1616
  o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
1577
1617
  end)
1578
1618
 
@@ -1586,6 +1626,7 @@ module Aws::IAM
1586
1626
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1587
1627
  o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
1588
1628
  o.errors << Shapes::ShapeRef.new(shape: UnmodifiableEntityException)
1629
+ o.errors << Shapes::ShapeRef.new(shape: PolicyNotAttachableException)
1589
1630
  o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
1590
1631
  end)
1591
1632
 
@@ -1598,6 +1639,7 @@ module Aws::IAM
1598
1639
  o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
1599
1640
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1600
1641
  o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
1642
+ o.errors << Shapes::ShapeRef.new(shape: PolicyNotAttachableException)
1601
1643
  o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
1602
1644
  end)
1603
1645
 
@@ -1969,6 +2011,17 @@ module Aws::IAM
1969
2011
  o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
1970
2012
  end)
1971
2013
 
2014
+ api.add_operation(:delete_service_linked_role, Seahorse::Model::Operation.new.tap do |o|
2015
+ o.name = "DeleteServiceLinkedRole"
2016
+ o.http_method = "POST"
2017
+ o.http_request_uri = "/"
2018
+ o.input = Shapes::ShapeRef.new(shape: DeleteServiceLinkedRoleRequest)
2019
+ o.output = Shapes::ShapeRef.new(shape: DeleteServiceLinkedRoleResponse)
2020
+ o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
2021
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
2022
+ o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
2023
+ end)
2024
+
1972
2025
  api.add_operation(:delete_service_specific_credential, Seahorse::Model::Operation.new.tap do |o|
1973
2026
  o.name = "DeleteServiceSpecificCredential"
1974
2027
  o.http_method = "POST"
@@ -2291,6 +2344,17 @@ module Aws::IAM
2291
2344
  o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
2292
2345
  end)
2293
2346
 
2347
+ api.add_operation(:get_service_linked_role_deletion_status, Seahorse::Model::Operation.new.tap do |o|
2348
+ o.name = "GetServiceLinkedRoleDeletionStatus"
2349
+ o.http_method = "POST"
2350
+ o.http_request_uri = "/"
2351
+ o.input = Shapes::ShapeRef.new(shape: GetServiceLinkedRoleDeletionStatusRequest)
2352
+ o.output = Shapes::ShapeRef.new(shape: GetServiceLinkedRoleDeletionStatusResponse)
2353
+ o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
2354
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
2355
+ o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
2356
+ end)
2357
+
2294
2358
  api.add_operation(:get_user, Seahorse::Model::Operation.new.tap do |o|
2295
2359
  o.name = "GetUser"
2296
2360
  o.http_method = "POST"
@@ -77,14 +77,18 @@ module Aws::IAM
77
77
  # websites that capture a user's last sign-in time, see the [Credential
78
78
  # Reports][2] topic in the *Using IAM* guide. If a password is used more
79
79
  # than once in a five-minute span, only the first use is returned in
80
- # this field. This field is null (not present) when:
80
+ # this field. If the field is null (no value) then it indicates that
81
+ # they never signed in with a password. This can be because:
81
82
  #
82
- # * The user does not have a password
83
+ # * The user never had a password.
83
84
  #
84
- # * The password exists but has never been used (at least not since IAM
85
- # started tracking this information on October 20th, 2014
85
+ # * A password exists but has not been used since IAM started tracking
86
+ # this information on October 20th, 2014.
86
87
  #
87
- # * there is no sign-in data associated with the user
88
+ # A null does not mean that the user *never* had a password. Also, if
89
+ # the user does not currently have a password, but had one in the past,
90
+ # then this field contains the date and time the most recent password
91
+ # was used.
88
92
  #
89
93
  # This value is returned only in the GetUser and ListUsers actions.
90
94
  #
@@ -303,7 +303,7 @@ module Aws::IAM
303
303
  # This parameter allows (per its [regex pattern][1]) a string of
304
304
  # characters consisting of upper and lowercase alphanumeric characters
305
305
  # with no spaces. You can also include any of the following characters:
306
- # =,.@-
306
+ # =,.@-+
307
307
  #
308
308
  #
309
309
  #
@@ -257,7 +257,7 @@ module Aws::IAM
257
257
  # This parameter allows (per its [regex pattern][1]) a string of
258
258
  # characters consisting of upper and lowercase alphanumeric characters
259
259
  # with no spaces. You can also include any of the following characters:
260
- # =,.@-
260
+ # =,.@-+
261
261
  #
262
262
  #
263
263
  #
@@ -869,7 +869,7 @@ module Aws::IAM
869
869
  # This parameter allows (per its [regex pattern][1]) a string of
870
870
  # characters consisting of upper and lowercase alphanumeric characters
871
871
  # with no spaces. You can also include any of the following
872
- # characters: =,.@-
872
+ # characters: =,.@-+
873
873
  #
874
874
  #
875
875
  #
@@ -1543,7 +1543,7 @@ module Aws::IAM
1543
1543
  # This parameter allows (per its [regex pattern][1]) a string of
1544
1544
  # characters consisting of upper and lowercase alphanumeric characters
1545
1545
  # with no spaces. You can also include any of the following
1546
- # characters: =,.@-
1546
+ # characters: =,.@-+
1547
1547
  #
1548
1548
  #
1549
1549
  #
@@ -1758,7 +1758,7 @@ module Aws::IAM
1758
1758
  # This parameter allows (per its [regex pattern][1]) a string of
1759
1759
  # characters consisting of upper and lowercase alphanumeric characters
1760
1760
  # with no spaces. You can also include any of the following
1761
- # characters: =,.@-
1761
+ # characters: =,.@-+
1762
1762
  #
1763
1763
  #
1764
1764
  #
@@ -1886,6 +1886,37 @@ module Aws::IAM
1886
1886
  include Aws::Structure
1887
1887
  end
1888
1888
 
1889
+ # @note When making an API call, you may pass DeleteServiceLinkedRoleRequest
1890
+ # data as a hash:
1891
+ #
1892
+ # {
1893
+ # role_name: "roleNameType", # required
1894
+ # }
1895
+ #
1896
+ # @!attribute [rw] role_name
1897
+ # The name of the service-linked role to be deleted.
1898
+ # @return [String]
1899
+ #
1900
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteServiceLinkedRoleRequest AWS API Documentation
1901
+ #
1902
+ class DeleteServiceLinkedRoleRequest < Struct.new(
1903
+ :role_name)
1904
+ include Aws::Structure
1905
+ end
1906
+
1907
+ # @!attribute [rw] deletion_task_id
1908
+ # The deletion task identifier that you can use to check the status of
1909
+ # the deletion. This identifier is returned in the format
1910
+ # `task/aws-service-role/<service-principal-name>/<role-name>/<task-uuid>`.
1911
+ # @return [String]
1912
+ #
1913
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteServiceLinkedRoleResponse AWS API Documentation
1914
+ #
1915
+ class DeleteServiceLinkedRoleResponse < Struct.new(
1916
+ :deletion_task_id)
1917
+ include Aws::Structure
1918
+ end
1919
+
1889
1920
  # @note When making an API call, you may pass DeleteServiceSpecificCredentialRequest
1890
1921
  # data as a hash:
1891
1922
  #
@@ -1999,7 +2030,7 @@ module Aws::IAM
1999
2030
  # This parameter allows (per its [regex pattern][1]) a string of
2000
2031
  # characters consisting of upper and lowercase alphanumeric characters
2001
2032
  # with no spaces. You can also include any of the following
2002
- # characters: =,.@-
2033
+ # characters: =,.@-+
2003
2034
  #
2004
2035
  #
2005
2036
  #
@@ -2069,6 +2100,33 @@ module Aws::IAM
2069
2100
  include Aws::Structure
2070
2101
  end
2071
2102
 
2103
+ # The reason that the service-linked role deletion failed.
2104
+ #
2105
+ # This data type is used as a response element in the
2106
+ # GetServiceLinkedRoleDeletionStatus operation.
2107
+ #
2108
+ # @!attribute [rw] reason
2109
+ # A short description of the reason that the service-linked role
2110
+ # deletion failed.
2111
+ # @return [String]
2112
+ #
2113
+ # @!attribute [rw] role_usage_list
2114
+ # A list of objects that contains details about the service-linked
2115
+ # role deletion failure. If the service-linked role has active
2116
+ # sessions or if any resources that were used by the role have not
2117
+ # been deleted from the linked service, the role can't be deleted.
2118
+ # This parameter includes a list of the resources that are associated
2119
+ # with the role and the region in which the resources are being used.
2120
+ # @return [Array<Types::RoleUsageType>]
2121
+ #
2122
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeletionTaskFailureReasonType AWS API Documentation
2123
+ #
2124
+ class DeletionTaskFailureReasonType < Struct.new(
2125
+ :reason,
2126
+ :role_usage_list)
2127
+ include Aws::Structure
2128
+ end
2129
+
2072
2130
  # @note When making an API call, you may pass DetachGroupPolicyRequest
2073
2131
  # data as a hash:
2074
2132
  #
@@ -2689,7 +2747,7 @@ module Aws::IAM
2689
2747
  # This parameter allows (per its [regex pattern][1]) a string of
2690
2748
  # characters consisting of upper and lowercase alphanumeric characters
2691
2749
  # with no spaces. You can also include any of the following
2692
- # characters: =,.@-
2750
+ # characters: =,.@-+
2693
2751
  #
2694
2752
  #
2695
2753
  #
@@ -3077,7 +3135,7 @@ module Aws::IAM
3077
3135
  # This parameter allows (per its [regex pattern][1]) a string of
3078
3136
  # characters consisting of upper and lowercase alphanumeric characters
3079
3137
  # with no spaces. You can also include any of the following
3080
- # characters: =,.@-
3138
+ # characters: =,.@-+
3081
3139
  #
3082
3140
  #
3083
3141
  #
@@ -3308,6 +3366,43 @@ module Aws::IAM
3308
3366
  include Aws::Structure
3309
3367
  end
3310
3368
 
3369
+ # @note When making an API call, you may pass GetServiceLinkedRoleDeletionStatusRequest
3370
+ # data as a hash:
3371
+ #
3372
+ # {
3373
+ # deletion_task_id: "DeletionTaskIdType", # required
3374
+ # }
3375
+ #
3376
+ # @!attribute [rw] deletion_task_id
3377
+ # The deletion task identifier. This identifier is returned by the
3378
+ # DeleteServiceLinkedRole operation in the format
3379
+ # `task/aws-service-role/<service-principal-name>/<role-name>/<task-uuid>`.
3380
+ # @return [String]
3381
+ #
3382
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetServiceLinkedRoleDeletionStatusRequest AWS API Documentation
3383
+ #
3384
+ class GetServiceLinkedRoleDeletionStatusRequest < Struct.new(
3385
+ :deletion_task_id)
3386
+ include Aws::Structure
3387
+ end
3388
+
3389
+ # @!attribute [rw] status
3390
+ # The status of the deletion.
3391
+ # @return [String]
3392
+ #
3393
+ # @!attribute [rw] reason
3394
+ # An object that contains details about the reason the deletion
3395
+ # failed.
3396
+ # @return [Types::DeletionTaskFailureReasonType]
3397
+ #
3398
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetServiceLinkedRoleDeletionStatusResponse AWS API Documentation
3399
+ #
3400
+ class GetServiceLinkedRoleDeletionStatusResponse < Struct.new(
3401
+ :status,
3402
+ :reason)
3403
+ include Aws::Structure
3404
+ end
3405
+
3311
3406
  # @note When making an API call, you may pass GetUserPolicyRequest
3312
3407
  # data as a hash:
3313
3408
  #
@@ -3335,7 +3430,7 @@ module Aws::IAM
3335
3430
  # This parameter allows (per its [regex pattern][1]) a string of
3336
3431
  # characters consisting of upper and lowercase alphanumeric characters
3337
3432
  # with no spaces. You can also include any of the following
3338
- # characters: =,.@-
3433
+ # characters: =,.@-+
3339
3434
  #
3340
3435
  #
3341
3436
  #
@@ -4249,6 +4344,15 @@ module Aws::IAM
4249
4344
  #
4250
4345
  # @!attribute [rw] policy_names
4251
4346
  # A list of policy names.
4347
+ #
4348
+ # This parameter allows (per its [regex pattern][1]) a string of
4349
+ # characters consisting of upper and lowercase alphanumeric characters
4350
+ # with no spaces. You can also include any of the following
4351
+ # characters: =,.@-+
4352
+ #
4353
+ #
4354
+ #
4355
+ # [1]: http://wikipedia.org/wiki/regex
4252
4356
  # @return [Array<String>]
4253
4357
  #
4254
4358
  # @!attribute [rw] is_truncated
@@ -6275,7 +6379,7 @@ module Aws::IAM
6275
6379
  # This parameter allows (per its [regex pattern][1]) a string of
6276
6380
  # characters consisting of upper and lowercase alphanumeric characters
6277
6381
  # with no spaces. You can also include any of the following
6278
- # characters: =,.@-
6382
+ # characters: =,.@-+
6279
6383
  #
6280
6384
  #
6281
6385
  #
@@ -6335,7 +6439,7 @@ module Aws::IAM
6335
6439
  # This parameter allows (per its [regex pattern][1]) a string of
6336
6440
  # characters consisting of upper and lowercase alphanumeric characters
6337
6441
  # with no spaces. You can also include any of the following
6338
- # characters: =,.@-
6442
+ # characters: =,.@-+
6339
6443
  #
6340
6444
  #
6341
6445
  #
@@ -6395,7 +6499,7 @@ module Aws::IAM
6395
6499
  # This parameter allows (per its [regex pattern][1]) a string of
6396
6500
  # characters consisting of upper and lowercase alphanumeric characters
6397
6501
  # with no spaces. You can also include any of the following
6398
- # characters: =,.@-
6502
+ # characters: =,.@-+
6399
6503
  #
6400
6504
  #
6401
6505
  #
@@ -6867,6 +6971,28 @@ module Aws::IAM
6867
6971
  include Aws::Structure
6868
6972
  end
6869
6973
 
6974
+ # An object that contains details about how a service-linked role is
6975
+ # used.
6976
+ #
6977
+ # This data type is used as a response element in the
6978
+ # GetServiceLinkedRoleDeletionStatus operation.
6979
+ #
6980
+ # @!attribute [rw] region
6981
+ # The name of the region where the service-linked role is being used.
6982
+ # @return [String]
6983
+ #
6984
+ # @!attribute [rw] resources
6985
+ # The name of the resource that is using the service-linked role.
6986
+ # @return [Array<String>]
6987
+ #
6988
+ # @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/RoleUsageType AWS API Documentation
6989
+ #
6990
+ class RoleUsageType < Struct.new(
6991
+ :region,
6992
+ :resources)
6993
+ include Aws::Structure
6994
+ end
6995
+
6870
6996
  # Contains the list of SAML providers for this account.
6871
6997
  #
6872
6998
  # @!attribute [rw] arn
@@ -8750,15 +8876,19 @@ module Aws::IAM
8750
8876
  # list of AWS websites that capture a user's last sign-in time, see
8751
8877
  # the [Credential Reports][2] topic in the *Using IAM* guide. If a
8752
8878
  # password is used more than once in a five-minute span, only the
8753
- # first use is returned in this field. This field is null (not
8754
- # present) when:
8879
+ # first use is returned in this field. If the field is null (no value)
8880
+ # then it indicates that they never signed in with a password. This
8881
+ # can be because:
8755
8882
  #
8756
- # * The user does not have a password
8883
+ # * The user never had a password.
8757
8884
  #
8758
- # * The password exists but has never been used (at least not since
8759
- # IAM started tracking this information on October 20th, 2014
8885
+ # * A password exists but has not been used since IAM started tracking
8886
+ # this information on October 20th, 2014.
8760
8887
  #
8761
- # * there is no sign-in data associated with the user
8888
+ # A null does not mean that the user *never* had a password. Also, if
8889
+ # the user does not currently have a password, but had one in the
8890
+ # past, then this field contains the date and time the most recent
8891
+ # password was used.
8762
8892
  #
8763
8893
  # This value is returned only in the GetUser and ListUsers actions.
8764
8894
  #
@@ -82,14 +82,18 @@ module Aws::IAM
82
82
  # websites that capture a user's last sign-in time, see the [Credential
83
83
  # Reports][2] topic in the *Using IAM* guide. If a password is used more
84
84
  # than once in a five-minute span, only the first use is returned in
85
- # this field. This field is null (not present) when:
85
+ # this field. If the field is null (no value) then it indicates that
86
+ # they never signed in with a password. This can be because:
86
87
  #
87
- # * The user does not have a password
88
+ # * The user never had a password.
88
89
  #
89
- # * The password exists but has never been used (at least not since IAM
90
- # started tracking this information on October 20th, 2014
90
+ # * A password exists but has not been used since IAM started tracking
91
+ # this information on October 20th, 2014.
91
92
  #
92
- # * there is no sign-in data associated with the user
93
+ # A null does not mean that the user *never* had a password. Also, if
94
+ # the user does not currently have a password, but had one in the past,
95
+ # then this field contains the date and time the most recent password
96
+ # was used.
93
97
  #
94
98
  # This value is returned only in the GetUser and ListUsers actions.
95
99
  #
@@ -412,7 +416,7 @@ module Aws::IAM
412
416
  # This parameter allows (per its [regex pattern][1]) a string of
413
417
  # characters consisting of upper and lowercase alphanumeric characters
414
418
  # with no spaces. You can also include any of the following characters:
415
- # =,.@-
419
+ # =,.@-+
416
420
  #
417
421
  #
418
422
  #
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.2.0
4
+ version: 1.3.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: 2017-09-14 00:00:00.000000000 Z
11
+ date: 2017-09-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core