aws-sdk-iam 1.5.0 → 1.6.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 +4 -4
- data/lib/aws-sdk-iam.rb +1 -1
- data/lib/aws-sdk-iam/account_password_policy.rb +1 -1
- data/lib/aws-sdk-iam/client.rb +235 -14
- data/lib/aws-sdk-iam/client_api.rb +81 -0
- data/lib/aws-sdk-iam/current_user.rb +14 -0
- data/lib/aws-sdk-iam/policy.rb +47 -0
- data/lib/aws-sdk-iam/resource.rb +20 -1
- data/lib/aws-sdk-iam/role.rb +14 -0
- data/lib/aws-sdk-iam/types.rb +290 -18
- data/lib/aws-sdk-iam/user.rb +18 -0
- metadata +2 -2
@@ -23,6 +23,7 @@ module Aws::IAM
|
|
23
23
|
AttachGroupPolicyRequest = Shapes::StructureShape.new(name: 'AttachGroupPolicyRequest')
|
24
24
|
AttachRolePolicyRequest = Shapes::StructureShape.new(name: 'AttachRolePolicyRequest')
|
25
25
|
AttachUserPolicyRequest = Shapes::StructureShape.new(name: 'AttachUserPolicyRequest')
|
26
|
+
AttachedPermissionsBoundary = Shapes::StructureShape.new(name: 'AttachedPermissionsBoundary')
|
26
27
|
AttachedPolicy = Shapes::StructureShape.new(name: 'AttachedPolicy')
|
27
28
|
BootstrapDatum = Shapes::BlobShape.new(name: 'BootstrapDatum')
|
28
29
|
ChangePasswordRequest = Shapes::StructureShape.new(name: 'ChangePasswordRequest')
|
@@ -75,6 +76,7 @@ module Aws::IAM
|
|
75
76
|
DeleteOpenIDConnectProviderRequest = Shapes::StructureShape.new(name: 'DeleteOpenIDConnectProviderRequest')
|
76
77
|
DeletePolicyRequest = Shapes::StructureShape.new(name: 'DeletePolicyRequest')
|
77
78
|
DeletePolicyVersionRequest = Shapes::StructureShape.new(name: 'DeletePolicyVersionRequest')
|
79
|
+
DeleteRolePermissionsBoundaryRequest = Shapes::StructureShape.new(name: 'DeleteRolePermissionsBoundaryRequest')
|
78
80
|
DeleteRolePolicyRequest = Shapes::StructureShape.new(name: 'DeleteRolePolicyRequest')
|
79
81
|
DeleteRoleRequest = Shapes::StructureShape.new(name: 'DeleteRoleRequest')
|
80
82
|
DeleteSAMLProviderRequest = Shapes::StructureShape.new(name: 'DeleteSAMLProviderRequest')
|
@@ -84,6 +86,7 @@ module Aws::IAM
|
|
84
86
|
DeleteServiceLinkedRoleResponse = Shapes::StructureShape.new(name: 'DeleteServiceLinkedRoleResponse')
|
85
87
|
DeleteServiceSpecificCredentialRequest = Shapes::StructureShape.new(name: 'DeleteServiceSpecificCredentialRequest')
|
86
88
|
DeleteSigningCertificateRequest = Shapes::StructureShape.new(name: 'DeleteSigningCertificateRequest')
|
89
|
+
DeleteUserPermissionsBoundaryRequest = Shapes::StructureShape.new(name: 'DeleteUserPermissionsBoundaryRequest')
|
87
90
|
DeleteUserPolicyRequest = Shapes::StructureShape.new(name: 'DeleteUserPolicyRequest')
|
88
91
|
DeleteUserRequest = Shapes::StructureShape.new(name: 'DeleteUserRequest')
|
89
92
|
DeleteVirtualMFADeviceRequest = Shapes::StructureShape.new(name: 'DeleteVirtualMFADeviceRequest')
|
@@ -218,6 +221,7 @@ module Aws::IAM
|
|
218
221
|
OrganizationsDecisionDetail = Shapes::StructureShape.new(name: 'OrganizationsDecisionDetail')
|
219
222
|
PasswordPolicy = Shapes::StructureShape.new(name: 'PasswordPolicy')
|
220
223
|
PasswordPolicyViolationException = Shapes::StructureShape.new(name: 'PasswordPolicyViolationException')
|
224
|
+
PermissionsBoundaryAttachmentType = Shapes::StringShape.new(name: 'PermissionsBoundaryAttachmentType')
|
221
225
|
Policy = Shapes::StructureShape.new(name: 'Policy')
|
222
226
|
PolicyDetail = Shapes::StructureShape.new(name: 'PolicyDetail')
|
223
227
|
PolicyEvaluationDecisionType = Shapes::StringShape.new(name: 'PolicyEvaluationDecisionType')
|
@@ -229,12 +233,15 @@ module Aws::IAM
|
|
229
233
|
PolicyRole = Shapes::StructureShape.new(name: 'PolicyRole')
|
230
234
|
PolicyRoleListType = Shapes::ListShape.new(name: 'PolicyRoleListType')
|
231
235
|
PolicySourceType = Shapes::StringShape.new(name: 'PolicySourceType')
|
236
|
+
PolicyUsageType = Shapes::StringShape.new(name: 'PolicyUsageType')
|
232
237
|
PolicyUser = Shapes::StructureShape.new(name: 'PolicyUser')
|
233
238
|
PolicyUserListType = Shapes::ListShape.new(name: 'PolicyUserListType')
|
234
239
|
PolicyVersion = Shapes::StructureShape.new(name: 'PolicyVersion')
|
235
240
|
Position = Shapes::StructureShape.new(name: 'Position')
|
236
241
|
PutGroupPolicyRequest = Shapes::StructureShape.new(name: 'PutGroupPolicyRequest')
|
242
|
+
PutRolePermissionsBoundaryRequest = Shapes::StructureShape.new(name: 'PutRolePermissionsBoundaryRequest')
|
237
243
|
PutRolePolicyRequest = Shapes::StructureShape.new(name: 'PutRolePolicyRequest')
|
244
|
+
PutUserPermissionsBoundaryRequest = Shapes::StructureShape.new(name: 'PutUserPermissionsBoundaryRequest')
|
238
245
|
PutUserPolicyRequest = Shapes::StructureShape.new(name: 'PutUserPolicyRequest')
|
239
246
|
ReasonType = Shapes::StringShape.new(name: 'ReasonType')
|
240
247
|
RegionNameType = Shapes::StringShape.new(name: 'RegionNameType')
|
@@ -456,6 +463,10 @@ module Aws::IAM
|
|
456
463
|
AttachUserPolicyRequest.add_member(:policy_arn, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "PolicyArn"))
|
457
464
|
AttachUserPolicyRequest.struct_class = Types::AttachUserPolicyRequest
|
458
465
|
|
466
|
+
AttachedPermissionsBoundary.add_member(:permissions_boundary_type, Shapes::ShapeRef.new(shape: PermissionsBoundaryAttachmentType, location_name: "PermissionsBoundaryType"))
|
467
|
+
AttachedPermissionsBoundary.add_member(:permissions_boundary_arn, Shapes::ShapeRef.new(shape: arnType, location_name: "PermissionsBoundaryArn"))
|
468
|
+
AttachedPermissionsBoundary.struct_class = Types::AttachedPermissionsBoundary
|
469
|
+
|
459
470
|
AttachedPolicy.add_member(:policy_name, Shapes::ShapeRef.new(shape: policyNameType, location_name: "PolicyName"))
|
460
471
|
AttachedPolicy.add_member(:policy_arn, Shapes::ShapeRef.new(shape: arnType, location_name: "PolicyArn"))
|
461
472
|
AttachedPolicy.struct_class = Types::AttachedPolicy
|
@@ -536,6 +547,7 @@ module Aws::IAM
|
|
536
547
|
CreateRoleRequest.add_member(:assume_role_policy_document, Shapes::ShapeRef.new(shape: policyDocumentType, required: true, location_name: "AssumeRolePolicyDocument"))
|
537
548
|
CreateRoleRequest.add_member(:description, Shapes::ShapeRef.new(shape: roleDescriptionType, location_name: "Description"))
|
538
549
|
CreateRoleRequest.add_member(:max_session_duration, Shapes::ShapeRef.new(shape: roleMaxSessionDurationType, location_name: "MaxSessionDuration"))
|
550
|
+
CreateRoleRequest.add_member(:permissions_boundary, Shapes::ShapeRef.new(shape: arnType, location_name: "PermissionsBoundary"))
|
539
551
|
CreateRoleRequest.struct_class = Types::CreateRoleRequest
|
540
552
|
|
541
553
|
CreateRoleResponse.add_member(:role, Shapes::ShapeRef.new(shape: Role, required: true, location_name: "Role"))
|
@@ -565,6 +577,7 @@ module Aws::IAM
|
|
565
577
|
|
566
578
|
CreateUserRequest.add_member(:path, Shapes::ShapeRef.new(shape: pathType, location_name: "Path"))
|
567
579
|
CreateUserRequest.add_member(:user_name, Shapes::ShapeRef.new(shape: userNameType, required: true, location_name: "UserName"))
|
580
|
+
CreateUserRequest.add_member(:permissions_boundary, Shapes::ShapeRef.new(shape: arnType, location_name: "PermissionsBoundary"))
|
568
581
|
CreateUserRequest.struct_class = Types::CreateUserRequest
|
569
582
|
|
570
583
|
CreateUserResponse.add_member(:user, Shapes::ShapeRef.new(shape: User, location_name: "User"))
|
@@ -611,6 +624,9 @@ module Aws::IAM
|
|
611
624
|
DeletePolicyVersionRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: policyVersionIdType, required: true, location_name: "VersionId"))
|
612
625
|
DeletePolicyVersionRequest.struct_class = Types::DeletePolicyVersionRequest
|
613
626
|
|
627
|
+
DeleteRolePermissionsBoundaryRequest.add_member(:role_name, Shapes::ShapeRef.new(shape: roleNameType, required: true, location_name: "RoleName"))
|
628
|
+
DeleteRolePermissionsBoundaryRequest.struct_class = Types::DeleteRolePermissionsBoundaryRequest
|
629
|
+
|
614
630
|
DeleteRolePolicyRequest.add_member(:role_name, Shapes::ShapeRef.new(shape: roleNameType, required: true, location_name: "RoleName"))
|
615
631
|
DeleteRolePolicyRequest.add_member(:policy_name, Shapes::ShapeRef.new(shape: policyNameType, required: true, location_name: "PolicyName"))
|
616
632
|
DeleteRolePolicyRequest.struct_class = Types::DeleteRolePolicyRequest
|
@@ -642,6 +658,9 @@ module Aws::IAM
|
|
642
658
|
DeleteSigningCertificateRequest.add_member(:certificate_id, Shapes::ShapeRef.new(shape: certificateIdType, required: true, location_name: "CertificateId"))
|
643
659
|
DeleteSigningCertificateRequest.struct_class = Types::DeleteSigningCertificateRequest
|
644
660
|
|
661
|
+
DeleteUserPermissionsBoundaryRequest.add_member(:user_name, Shapes::ShapeRef.new(shape: userNameType, required: true, location_name: "UserName"))
|
662
|
+
DeleteUserPermissionsBoundaryRequest.struct_class = Types::DeleteUserPermissionsBoundaryRequest
|
663
|
+
|
645
664
|
DeleteUserPolicyRequest.add_member(:user_name, Shapes::ShapeRef.new(shape: existingUserNameType, required: true, location_name: "UserName"))
|
646
665
|
DeleteUserPolicyRequest.add_member(:policy_name, Shapes::ShapeRef.new(shape: policyNameType, required: true, location_name: "PolicyName"))
|
647
666
|
DeleteUserPolicyRequest.struct_class = Types::DeleteUserPolicyRequest
|
@@ -926,6 +945,7 @@ module Aws::IAM
|
|
926
945
|
ListEntitiesForPolicyRequest.add_member(:policy_arn, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "PolicyArn"))
|
927
946
|
ListEntitiesForPolicyRequest.add_member(:entity_filter, Shapes::ShapeRef.new(shape: EntityType, location_name: "EntityFilter"))
|
928
947
|
ListEntitiesForPolicyRequest.add_member(:path_prefix, Shapes::ShapeRef.new(shape: pathType, location_name: "PathPrefix"))
|
948
|
+
ListEntitiesForPolicyRequest.add_member(:policy_usage_filter, Shapes::ShapeRef.new(shape: PolicyUsageType, location_name: "PolicyUsageFilter"))
|
929
949
|
ListEntitiesForPolicyRequest.add_member(:marker, Shapes::ShapeRef.new(shape: markerType, location_name: "Marker"))
|
930
950
|
ListEntitiesForPolicyRequest.add_member(:max_items, Shapes::ShapeRef.new(shape: maxItemsType, location_name: "MaxItems"))
|
931
951
|
ListEntitiesForPolicyRequest.struct_class = Types::ListEntitiesForPolicyRequest
|
@@ -1005,6 +1025,7 @@ module Aws::IAM
|
|
1005
1025
|
ListPoliciesRequest.add_member(:scope, Shapes::ShapeRef.new(shape: policyScopeType, location_name: "Scope"))
|
1006
1026
|
ListPoliciesRequest.add_member(:only_attached, Shapes::ShapeRef.new(shape: booleanType, location_name: "OnlyAttached"))
|
1007
1027
|
ListPoliciesRequest.add_member(:path_prefix, Shapes::ShapeRef.new(shape: policyPathType, location_name: "PathPrefix"))
|
1028
|
+
ListPoliciesRequest.add_member(:policy_usage_filter, Shapes::ShapeRef.new(shape: PolicyUsageType, location_name: "PolicyUsageFilter"))
|
1008
1029
|
ListPoliciesRequest.add_member(:marker, Shapes::ShapeRef.new(shape: markerType, location_name: "Marker"))
|
1009
1030
|
ListPoliciesRequest.add_member(:max_items, Shapes::ShapeRef.new(shape: maxItemsType, location_name: "MaxItems"))
|
1010
1031
|
ListPoliciesRequest.struct_class = Types::ListPoliciesRequest
|
@@ -1132,6 +1153,7 @@ module Aws::IAM
|
|
1132
1153
|
ManagedPolicyDetail.add_member(:path, Shapes::ShapeRef.new(shape: policyPathType, location_name: "Path"))
|
1133
1154
|
ManagedPolicyDetail.add_member(:default_version_id, Shapes::ShapeRef.new(shape: policyVersionIdType, location_name: "DefaultVersionId"))
|
1134
1155
|
ManagedPolicyDetail.add_member(:attachment_count, Shapes::ShapeRef.new(shape: attachmentCountType, location_name: "AttachmentCount"))
|
1156
|
+
ManagedPolicyDetail.add_member(:permissions_boundary_usage_count, Shapes::ShapeRef.new(shape: attachmentCountType, location_name: "PermissionsBoundaryUsageCount"))
|
1135
1157
|
ManagedPolicyDetail.add_member(:is_attachable, Shapes::ShapeRef.new(shape: booleanType, location_name: "IsAttachable"))
|
1136
1158
|
ManagedPolicyDetail.add_member(:description, Shapes::ShapeRef.new(shape: policyDescriptionType, location_name: "Description"))
|
1137
1159
|
ManagedPolicyDetail.add_member(:create_date, Shapes::ShapeRef.new(shape: dateType, location_name: "CreateDate"))
|
@@ -1167,6 +1189,7 @@ module Aws::IAM
|
|
1167
1189
|
Policy.add_member(:path, Shapes::ShapeRef.new(shape: policyPathType, location_name: "Path"))
|
1168
1190
|
Policy.add_member(:default_version_id, Shapes::ShapeRef.new(shape: policyVersionIdType, location_name: "DefaultVersionId"))
|
1169
1191
|
Policy.add_member(:attachment_count, Shapes::ShapeRef.new(shape: attachmentCountType, location_name: "AttachmentCount"))
|
1192
|
+
Policy.add_member(:permissions_boundary_usage_count, Shapes::ShapeRef.new(shape: attachmentCountType, location_name: "PermissionsBoundaryUsageCount"))
|
1170
1193
|
Policy.add_member(:is_attachable, Shapes::ShapeRef.new(shape: booleanType, location_name: "IsAttachable"))
|
1171
1194
|
Policy.add_member(:description, Shapes::ShapeRef.new(shape: policyDescriptionType, location_name: "Description"))
|
1172
1195
|
Policy.add_member(:create_date, Shapes::ShapeRef.new(shape: dateType, location_name: "CreateDate"))
|
@@ -1210,11 +1233,19 @@ module Aws::IAM
|
|
1210
1233
|
PutGroupPolicyRequest.add_member(:policy_document, Shapes::ShapeRef.new(shape: policyDocumentType, required: true, location_name: "PolicyDocument"))
|
1211
1234
|
PutGroupPolicyRequest.struct_class = Types::PutGroupPolicyRequest
|
1212
1235
|
|
1236
|
+
PutRolePermissionsBoundaryRequest.add_member(:role_name, Shapes::ShapeRef.new(shape: roleNameType, required: true, location_name: "RoleName"))
|
1237
|
+
PutRolePermissionsBoundaryRequest.add_member(:permissions_boundary, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "PermissionsBoundary"))
|
1238
|
+
PutRolePermissionsBoundaryRequest.struct_class = Types::PutRolePermissionsBoundaryRequest
|
1239
|
+
|
1213
1240
|
PutRolePolicyRequest.add_member(:role_name, Shapes::ShapeRef.new(shape: roleNameType, required: true, location_name: "RoleName"))
|
1214
1241
|
PutRolePolicyRequest.add_member(:policy_name, Shapes::ShapeRef.new(shape: policyNameType, required: true, location_name: "PolicyName"))
|
1215
1242
|
PutRolePolicyRequest.add_member(:policy_document, Shapes::ShapeRef.new(shape: policyDocumentType, required: true, location_name: "PolicyDocument"))
|
1216
1243
|
PutRolePolicyRequest.struct_class = Types::PutRolePolicyRequest
|
1217
1244
|
|
1245
|
+
PutUserPermissionsBoundaryRequest.add_member(:user_name, Shapes::ShapeRef.new(shape: userNameType, required: true, location_name: "UserName"))
|
1246
|
+
PutUserPermissionsBoundaryRequest.add_member(:permissions_boundary, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "PermissionsBoundary"))
|
1247
|
+
PutUserPermissionsBoundaryRequest.struct_class = Types::PutUserPermissionsBoundaryRequest
|
1248
|
+
|
1218
1249
|
PutUserPolicyRequest.add_member(:user_name, Shapes::ShapeRef.new(shape: existingUserNameType, required: true, location_name: "UserName"))
|
1219
1250
|
PutUserPolicyRequest.add_member(:policy_name, Shapes::ShapeRef.new(shape: policyNameType, required: true, location_name: "PolicyName"))
|
1220
1251
|
PutUserPolicyRequest.add_member(:policy_document, Shapes::ShapeRef.new(shape: policyDocumentType, required: true, location_name: "PolicyDocument"))
|
@@ -1264,6 +1295,7 @@ module Aws::IAM
|
|
1264
1295
|
Role.add_member(:assume_role_policy_document, Shapes::ShapeRef.new(shape: policyDocumentType, location_name: "AssumeRolePolicyDocument"))
|
1265
1296
|
Role.add_member(:description, Shapes::ShapeRef.new(shape: roleDescriptionType, location_name: "Description"))
|
1266
1297
|
Role.add_member(:max_session_duration, Shapes::ShapeRef.new(shape: roleMaxSessionDurationType, location_name: "MaxSessionDuration"))
|
1298
|
+
Role.add_member(:permissions_boundary, Shapes::ShapeRef.new(shape: AttachedPermissionsBoundary, location_name: "PermissionsBoundary"))
|
1267
1299
|
Role.struct_class = Types::Role
|
1268
1300
|
|
1269
1301
|
RoleDetail.add_member(:path, Shapes::ShapeRef.new(shape: pathType, location_name: "Path"))
|
@@ -1275,6 +1307,7 @@ module Aws::IAM
|
|
1275
1307
|
RoleDetail.add_member(:instance_profile_list, Shapes::ShapeRef.new(shape: instanceProfileListType, location_name: "InstanceProfileList"))
|
1276
1308
|
RoleDetail.add_member(:role_policy_list, Shapes::ShapeRef.new(shape: policyDetailListType, location_name: "RolePolicyList"))
|
1277
1309
|
RoleDetail.add_member(:attached_managed_policies, Shapes::ShapeRef.new(shape: attachedPoliciesListType, location_name: "AttachedManagedPolicies"))
|
1310
|
+
RoleDetail.add_member(:permissions_boundary, Shapes::ShapeRef.new(shape: AttachedPermissionsBoundary, location_name: "PermissionsBoundary"))
|
1278
1311
|
RoleDetail.struct_class = Types::RoleDetail
|
1279
1312
|
|
1280
1313
|
RoleUsageListType.member = Shapes::ShapeRef.new(shape: RoleUsageType)
|
@@ -1499,6 +1532,7 @@ module Aws::IAM
|
|
1499
1532
|
User.add_member(:arn, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "Arn"))
|
1500
1533
|
User.add_member(:create_date, Shapes::ShapeRef.new(shape: dateType, required: true, location_name: "CreateDate"))
|
1501
1534
|
User.add_member(:password_last_used, Shapes::ShapeRef.new(shape: dateType, location_name: "PasswordLastUsed"))
|
1535
|
+
User.add_member(:permissions_boundary, Shapes::ShapeRef.new(shape: AttachedPermissionsBoundary, location_name: "PermissionsBoundary"))
|
1502
1536
|
User.struct_class = Types::User
|
1503
1537
|
|
1504
1538
|
UserDetail.add_member(:path, Shapes::ShapeRef.new(shape: pathType, location_name: "Path"))
|
@@ -1509,6 +1543,7 @@ module Aws::IAM
|
|
1509
1543
|
UserDetail.add_member(:user_policy_list, Shapes::ShapeRef.new(shape: policyDetailListType, location_name: "UserPolicyList"))
|
1510
1544
|
UserDetail.add_member(:group_list, Shapes::ShapeRef.new(shape: groupNameListType, location_name: "GroupList"))
|
1511
1545
|
UserDetail.add_member(:attached_managed_policies, Shapes::ShapeRef.new(shape: attachedPoliciesListType, location_name: "AttachedManagedPolicies"))
|
1546
|
+
UserDetail.add_member(:permissions_boundary, Shapes::ShapeRef.new(shape: AttachedPermissionsBoundary, location_name: "PermissionsBoundary"))
|
1512
1547
|
UserDetail.struct_class = Types::UserDetail
|
1513
1548
|
|
1514
1549
|
VirtualMFADevice.add_member(:serial_number, Shapes::ShapeRef.new(shape: serialNumberType, required: true, location_name: "SerialNumber"))
|
@@ -1978,6 +2013,17 @@ module Aws::IAM
|
|
1978
2013
|
o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
|
1979
2014
|
end)
|
1980
2015
|
|
2016
|
+
api.add_operation(:delete_role_permissions_boundary, Seahorse::Model::Operation.new.tap do |o|
|
2017
|
+
o.name = "DeleteRolePermissionsBoundary"
|
2018
|
+
o.http_method = "POST"
|
2019
|
+
o.http_request_uri = "/"
|
2020
|
+
o.input = Shapes::ShapeRef.new(shape: DeleteRolePermissionsBoundaryRequest)
|
2021
|
+
o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
|
2022
|
+
o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
|
2023
|
+
o.errors << Shapes::ShapeRef.new(shape: UnmodifiableEntityException)
|
2024
|
+
o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
|
2025
|
+
end)
|
2026
|
+
|
1981
2027
|
api.add_operation(:delete_role_policy, Seahorse::Model::Operation.new.tap do |o|
|
1982
2028
|
o.name = "DeleteRolePolicy"
|
1983
2029
|
o.http_method = "POST"
|
@@ -2066,6 +2112,16 @@ module Aws::IAM
|
|
2066
2112
|
o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
|
2067
2113
|
end)
|
2068
2114
|
|
2115
|
+
api.add_operation(:delete_user_permissions_boundary, Seahorse::Model::Operation.new.tap do |o|
|
2116
|
+
o.name = "DeleteUserPermissionsBoundary"
|
2117
|
+
o.http_method = "POST"
|
2118
|
+
o.http_request_uri = "/"
|
2119
|
+
o.input = Shapes::ShapeRef.new(shape: DeleteUserPermissionsBoundaryRequest)
|
2120
|
+
o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
|
2121
|
+
o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
|
2122
|
+
o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
|
2123
|
+
end)
|
2124
|
+
|
2069
2125
|
api.add_operation(:delete_user_policy, Seahorse::Model::Operation.new.tap do |o|
|
2070
2126
|
o.name = "DeleteUserPolicy"
|
2071
2127
|
o.http_method = "POST"
|
@@ -2796,6 +2852,19 @@ module Aws::IAM
|
|
2796
2852
|
o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
|
2797
2853
|
end)
|
2798
2854
|
|
2855
|
+
api.add_operation(:put_role_permissions_boundary, Seahorse::Model::Operation.new.tap do |o|
|
2856
|
+
o.name = "PutRolePermissionsBoundary"
|
2857
|
+
o.http_method = "POST"
|
2858
|
+
o.http_request_uri = "/"
|
2859
|
+
o.input = Shapes::ShapeRef.new(shape: PutRolePermissionsBoundaryRequest)
|
2860
|
+
o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
|
2861
|
+
o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
|
2862
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
|
2863
|
+
o.errors << Shapes::ShapeRef.new(shape: UnmodifiableEntityException)
|
2864
|
+
o.errors << Shapes::ShapeRef.new(shape: PolicyNotAttachableException)
|
2865
|
+
o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
|
2866
|
+
end)
|
2867
|
+
|
2799
2868
|
api.add_operation(:put_role_policy, Seahorse::Model::Operation.new.tap do |o|
|
2800
2869
|
o.name = "PutRolePolicy"
|
2801
2870
|
o.http_method = "POST"
|
@@ -2809,6 +2878,18 @@ module Aws::IAM
|
|
2809
2878
|
o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
|
2810
2879
|
end)
|
2811
2880
|
|
2881
|
+
api.add_operation(:put_user_permissions_boundary, Seahorse::Model::Operation.new.tap do |o|
|
2882
|
+
o.name = "PutUserPermissionsBoundary"
|
2883
|
+
o.http_method = "POST"
|
2884
|
+
o.http_request_uri = "/"
|
2885
|
+
o.input = Shapes::ShapeRef.new(shape: PutUserPermissionsBoundaryRequest)
|
2886
|
+
o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
|
2887
|
+
o.errors << Shapes::ShapeRef.new(shape: NoSuchEntityException)
|
2888
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
|
2889
|
+
o.errors << Shapes::ShapeRef.new(shape: PolicyNotAttachableException)
|
2890
|
+
o.errors << Shapes::ShapeRef.new(shape: ServiceFailureException)
|
2891
|
+
end)
|
2892
|
+
|
2812
2893
|
api.add_operation(:put_user_policy, Seahorse::Model::Operation.new.tap do |o|
|
2813
2894
|
o.name = "PutUserPolicy"
|
2814
2895
|
o.http_method = "POST"
|
@@ -101,6 +101,20 @@ module Aws::IAM
|
|
101
101
|
data[:password_last_used]
|
102
102
|
end
|
103
103
|
|
104
|
+
# The ARN of the policy used to set the permissions boundary for the
|
105
|
+
# user.
|
106
|
+
#
|
107
|
+
# For more information about permissions boundaries, see [Permissions
|
108
|
+
# Boundaries for IAM Identities ][1] in the *IAM User Guide*.
|
109
|
+
#
|
110
|
+
#
|
111
|
+
#
|
112
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html
|
113
|
+
# @return [Types::AttachedPermissionsBoundary]
|
114
|
+
def permissions_boundary
|
115
|
+
data[:permissions_boundary]
|
116
|
+
end
|
117
|
+
|
104
118
|
# @!endgroup
|
105
119
|
|
106
120
|
# @return [Client]
|
data/lib/aws-sdk-iam/policy.rb
CHANGED
@@ -76,6 +76,20 @@ module Aws::IAM
|
|
76
76
|
data[:attachment_count]
|
77
77
|
end
|
78
78
|
|
79
|
+
# The number of entities (users and roles) for which the policy is used
|
80
|
+
# to set the permissions boundary.
|
81
|
+
#
|
82
|
+
# For more information about permissions boundaries, see [Permissions
|
83
|
+
# Boundaries for IAM Identities ][1] in the *IAM User Guide*.
|
84
|
+
#
|
85
|
+
#
|
86
|
+
#
|
87
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html
|
88
|
+
# @return [Integer]
|
89
|
+
def permissions_boundary_usage_count
|
90
|
+
data[:permissions_boundary_usage_count]
|
91
|
+
end
|
92
|
+
|
79
93
|
# Specifies whether the policy can be attached to an IAM user, group, or
|
80
94
|
# role.
|
81
95
|
# @return [Boolean]
|
@@ -468,6 +482,7 @@ module Aws::IAM
|
|
468
482
|
#
|
469
483
|
# attached_groups = policy.attached_groups({
|
470
484
|
# path_prefix: "pathType",
|
485
|
+
# policy_usage_filter: "PermissionsPolicy", # accepts PermissionsPolicy, PermissionsBoundary
|
471
486
|
# })
|
472
487
|
# @param [Hash] options ({})
|
473
488
|
# @option options [String] :path_prefix
|
@@ -485,6 +500,16 @@ module Aws::IAM
|
|
485
500
|
#
|
486
501
|
#
|
487
502
|
# [1]: http://wikipedia.org/wiki/regex
|
503
|
+
# @option options [String] :policy_usage_filter
|
504
|
+
# The policy usage method to use for filtering the results.
|
505
|
+
#
|
506
|
+
# To list only permissions policies,
|
507
|
+
# set `PolicyUsageFilter` to `PermissionsPolicy`. To list only the
|
508
|
+
# policies used to set permissions boundaries, set the value
|
509
|
+
# to `PermissionsBoundary`.
|
510
|
+
#
|
511
|
+
# This parameter is optional. If it is not included, all policies are
|
512
|
+
# returned.
|
488
513
|
# @return [Group::Collection]
|
489
514
|
def attached_groups(options = {})
|
490
515
|
batches = Enumerator.new do |y|
|
@@ -512,6 +537,7 @@ module Aws::IAM
|
|
512
537
|
#
|
513
538
|
# attached_roles = policy.attached_roles({
|
514
539
|
# path_prefix: "pathType",
|
540
|
+
# policy_usage_filter: "PermissionsPolicy", # accepts PermissionsPolicy, PermissionsBoundary
|
515
541
|
# })
|
516
542
|
# @param [Hash] options ({})
|
517
543
|
# @option options [String] :path_prefix
|
@@ -529,6 +555,16 @@ module Aws::IAM
|
|
529
555
|
#
|
530
556
|
#
|
531
557
|
# [1]: http://wikipedia.org/wiki/regex
|
558
|
+
# @option options [String] :policy_usage_filter
|
559
|
+
# The policy usage method to use for filtering the results.
|
560
|
+
#
|
561
|
+
# To list only permissions policies,
|
562
|
+
# set `PolicyUsageFilter` to `PermissionsPolicy`. To list only the
|
563
|
+
# policies used to set permissions boundaries, set the value
|
564
|
+
# to `PermissionsBoundary`.
|
565
|
+
#
|
566
|
+
# This parameter is optional. If it is not included, all policies are
|
567
|
+
# returned.
|
532
568
|
# @return [Role::Collection]
|
533
569
|
def attached_roles(options = {})
|
534
570
|
batches = Enumerator.new do |y|
|
@@ -556,6 +592,7 @@ module Aws::IAM
|
|
556
592
|
#
|
557
593
|
# attached_users = policy.attached_users({
|
558
594
|
# path_prefix: "pathType",
|
595
|
+
# policy_usage_filter: "PermissionsPolicy", # accepts PermissionsPolicy, PermissionsBoundary
|
559
596
|
# })
|
560
597
|
# @param [Hash] options ({})
|
561
598
|
# @option options [String] :path_prefix
|
@@ -573,6 +610,16 @@ module Aws::IAM
|
|
573
610
|
#
|
574
611
|
#
|
575
612
|
# [1]: http://wikipedia.org/wiki/regex
|
613
|
+
# @option options [String] :policy_usage_filter
|
614
|
+
# The policy usage method to use for filtering the results.
|
615
|
+
#
|
616
|
+
# To list only permissions policies,
|
617
|
+
# set `PolicyUsageFilter` to `PermissionsPolicy`. To list only the
|
618
|
+
# policies used to set permissions boundaries, set the value
|
619
|
+
# to `PermissionsBoundary`.
|
620
|
+
#
|
621
|
+
# This parameter is optional. If it is not included, all policies are
|
622
|
+
# returned.
|
576
623
|
# @return [User::Collection]
|
577
624
|
def attached_users(options = {})
|
578
625
|
batches = Enumerator.new do |y|
|
data/lib/aws-sdk-iam/resource.rb
CHANGED
@@ -98,7 +98,7 @@ module Aws::IAM
|
|
98
98
|
# Specifies whether IAM user passwords must contain at least one of the
|
99
99
|
# following non-alphanumeric characters:
|
100
100
|
#
|
101
|
-
# ! @ # $ % ^ &
|
101
|
+
# ! @ # $ % ^ & * ( ) \_ + - = \[ \] \\\{ \\} \| '
|
102
102
|
#
|
103
103
|
# If you do not specify a value for this parameter, then the operation
|
104
104
|
# uses the default value of `false`. The result is that passwords do not
|
@@ -345,6 +345,7 @@ module Aws::IAM
|
|
345
345
|
# assume_role_policy_document: "policyDocumentType", # required
|
346
346
|
# description: "roleDescriptionType",
|
347
347
|
# max_session_duration: 1,
|
348
|
+
# permissions_boundary: "arnType",
|
348
349
|
# })
|
349
350
|
# @param [Hash] options ({})
|
350
351
|
# @option options [String] :path
|
@@ -420,6 +421,9 @@ module Aws::IAM
|
|
420
421
|
#
|
421
422
|
#
|
422
423
|
# [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html
|
424
|
+
# @option options [String] :permissions_boundary
|
425
|
+
# The ARN of the policy that is used to set the permissions boundary for
|
426
|
+
# the role.
|
423
427
|
# @return [Role]
|
424
428
|
def create_role(options = {})
|
425
429
|
resp = @client.create_role(options)
|
@@ -631,6 +635,7 @@ module Aws::IAM
|
|
631
635
|
# user = iam.create_user({
|
632
636
|
# path: "pathType",
|
633
637
|
# user_name: "userNameType", # required
|
638
|
+
# permissions_boundary: "arnType",
|
634
639
|
# })
|
635
640
|
# @param [Hash] options ({})
|
636
641
|
# @option options [String] :path
|
@@ -663,6 +668,9 @@ module Aws::IAM
|
|
663
668
|
#
|
664
669
|
#
|
665
670
|
# [1]: http://wikipedia.org/wiki/regex
|
671
|
+
# @option options [String] :permissions_boundary
|
672
|
+
# The ARN of the policy that is used to set the permissions boundary for
|
673
|
+
# the user.
|
666
674
|
# @return [User]
|
667
675
|
def create_user(options = {})
|
668
676
|
resp = @client.create_user(options)
|
@@ -843,6 +851,7 @@ module Aws::IAM
|
|
843
851
|
# scope: "All", # accepts All, AWS, Local
|
844
852
|
# only_attached: false,
|
845
853
|
# path_prefix: "policyPathType",
|
854
|
+
# policy_usage_filter: "PermissionsPolicy", # accepts PermissionsPolicy, PermissionsBoundary
|
846
855
|
# })
|
847
856
|
# @param [Hash] options ({})
|
848
857
|
# @option options [String] :scope
|
@@ -874,6 +883,16 @@ module Aws::IAM
|
|
874
883
|
#
|
875
884
|
#
|
876
885
|
# [1]: http://wikipedia.org/wiki/regex
|
886
|
+
# @option options [String] :policy_usage_filter
|
887
|
+
# The policy usage method to use for filtering the results.
|
888
|
+
#
|
889
|
+
# To list only permissions policies,
|
890
|
+
# set `PolicyUsageFilter` to `PermissionsPolicy`. To list only the
|
891
|
+
# policies used to set permissions boundaries, set the value
|
892
|
+
# to `PermissionsBoundary`.
|
893
|
+
#
|
894
|
+
# This parameter is optional. If it is not included, all policies are
|
895
|
+
# returned.
|
877
896
|
# @return [Policy::Collection]
|
878
897
|
def policies(options = {})
|
879
898
|
batches = Enumerator.new do |y|
|
data/lib/aws-sdk-iam/role.rb
CHANGED
@@ -98,6 +98,20 @@ module Aws::IAM
|
|
98
98
|
data[:max_session_duration]
|
99
99
|
end
|
100
100
|
|
101
|
+
# The ARN of the policy used to set the permissions boundary for the
|
102
|
+
# role.
|
103
|
+
#
|
104
|
+
# For more information about permissions boundaries, see [Permissions
|
105
|
+
# Boundaries for IAM Identities ][1] in the *IAM User Guide*.
|
106
|
+
#
|
107
|
+
#
|
108
|
+
#
|
109
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html
|
110
|
+
# @return [Types::AttachedPermissionsBoundary]
|
111
|
+
def permissions_boundary
|
112
|
+
data[:permissions_boundary]
|
113
|
+
end
|
114
|
+
|
101
115
|
# @!endgroup
|
102
116
|
|
103
117
|
# @return [Client]
|
data/lib/aws-sdk-iam/types.rb
CHANGED
@@ -382,6 +382,37 @@ module Aws::IAM
|
|
382
382
|
include Aws::Structure
|
383
383
|
end
|
384
384
|
|
385
|
+
# Contains information about an attached permissions boundary.
|
386
|
+
#
|
387
|
+
# An attached permissions boundary is a managed policy that has been
|
388
|
+
# attached to a user or role to set the permissions boundary.
|
389
|
+
#
|
390
|
+
# For more information about permissions boundaries, see [Permissions
|
391
|
+
# Boundaries for IAM Identities ][1] in the *IAM User Guide*.
|
392
|
+
#
|
393
|
+
#
|
394
|
+
#
|
395
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html
|
396
|
+
#
|
397
|
+
# @!attribute [rw] permissions_boundary_type
|
398
|
+
# The permissions boundary usage type that indicates what type of IAM
|
399
|
+
# resource is used as the permissions boundary for an entity. This
|
400
|
+
# data type can only have a value of `Policy`.
|
401
|
+
# @return [String]
|
402
|
+
#
|
403
|
+
# @!attribute [rw] permissions_boundary_arn
|
404
|
+
# The ARN of the policy used to set the permissions boundary for the
|
405
|
+
# user or role.
|
406
|
+
# @return [String]
|
407
|
+
#
|
408
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/AttachedPermissionsBoundary AWS API Documentation
|
409
|
+
#
|
410
|
+
class AttachedPermissionsBoundary < Struct.new(
|
411
|
+
:permissions_boundary_type,
|
412
|
+
:permissions_boundary_arn)
|
413
|
+
include Aws::Structure
|
414
|
+
end
|
415
|
+
|
385
416
|
# Contains information about an attached policy.
|
386
417
|
#
|
387
418
|
# An attached policy is a managed policy that has been attached to a
|
@@ -1046,6 +1077,7 @@ module Aws::IAM
|
|
1046
1077
|
# assume_role_policy_document: "policyDocumentType", # required
|
1047
1078
|
# description: "roleDescriptionType",
|
1048
1079
|
# max_session_duration: 1,
|
1080
|
+
# permissions_boundary: "arnType",
|
1049
1081
|
# }
|
1050
1082
|
#
|
1051
1083
|
# @!attribute [rw] path
|
@@ -1132,6 +1164,11 @@ module Aws::IAM
|
|
1132
1164
|
# [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html
|
1133
1165
|
# @return [Integer]
|
1134
1166
|
#
|
1167
|
+
# @!attribute [rw] permissions_boundary
|
1168
|
+
# The ARN of the policy that is used to set the permissions boundary
|
1169
|
+
# for the role.
|
1170
|
+
# @return [String]
|
1171
|
+
#
|
1135
1172
|
# @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateRoleRequest AWS API Documentation
|
1136
1173
|
#
|
1137
1174
|
class CreateRoleRequest < Struct.new(
|
@@ -1139,7 +1176,8 @@ module Aws::IAM
|
|
1139
1176
|
:role_name,
|
1140
1177
|
:assume_role_policy_document,
|
1141
1178
|
:description,
|
1142
|
-
:max_session_duration
|
1179
|
+
:max_session_duration,
|
1180
|
+
:permissions_boundary)
|
1143
1181
|
include Aws::Structure
|
1144
1182
|
end
|
1145
1183
|
|
@@ -1323,6 +1361,7 @@ module Aws::IAM
|
|
1323
1361
|
# {
|
1324
1362
|
# path: "pathType",
|
1325
1363
|
# user_name: "userNameType", # required
|
1364
|
+
# permissions_boundary: "arnType",
|
1326
1365
|
# }
|
1327
1366
|
#
|
1328
1367
|
# @!attribute [rw] path
|
@@ -1360,11 +1399,17 @@ module Aws::IAM
|
|
1360
1399
|
# [1]: http://wikipedia.org/wiki/regex
|
1361
1400
|
# @return [String]
|
1362
1401
|
#
|
1402
|
+
# @!attribute [rw] permissions_boundary
|
1403
|
+
# The ARN of the policy that is used to set the permissions boundary
|
1404
|
+
# for the user.
|
1405
|
+
# @return [String]
|
1406
|
+
#
|
1363
1407
|
# @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/CreateUserRequest AWS API Documentation
|
1364
1408
|
#
|
1365
1409
|
class CreateUserRequest < Struct.new(
|
1366
1410
|
:path,
|
1367
|
-
:user_name
|
1411
|
+
:user_name,
|
1412
|
+
:permissions_boundary)
|
1368
1413
|
include Aws::Structure
|
1369
1414
|
end
|
1370
1415
|
|
@@ -1771,6 +1816,25 @@ module Aws::IAM
|
|
1771
1816
|
include Aws::Structure
|
1772
1817
|
end
|
1773
1818
|
|
1819
|
+
# @note When making an API call, you may pass DeleteRolePermissionsBoundaryRequest
|
1820
|
+
# data as a hash:
|
1821
|
+
#
|
1822
|
+
# {
|
1823
|
+
# role_name: "roleNameType", # required
|
1824
|
+
# }
|
1825
|
+
#
|
1826
|
+
# @!attribute [rw] role_name
|
1827
|
+
# The name (friendly name, not ARN) of the IAM role from which you
|
1828
|
+
# want to remove the permissions boundary.
|
1829
|
+
# @return [String]
|
1830
|
+
#
|
1831
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteRolePermissionsBoundaryRequest AWS API Documentation
|
1832
|
+
#
|
1833
|
+
class DeleteRolePermissionsBoundaryRequest < Struct.new(
|
1834
|
+
:role_name)
|
1835
|
+
include Aws::Structure
|
1836
|
+
end
|
1837
|
+
|
1774
1838
|
# @note When making an API call, you may pass DeleteRolePolicyRequest
|
1775
1839
|
# data as a hash:
|
1776
1840
|
#
|
@@ -2043,6 +2107,25 @@ module Aws::IAM
|
|
2043
2107
|
include Aws::Structure
|
2044
2108
|
end
|
2045
2109
|
|
2110
|
+
# @note When making an API call, you may pass DeleteUserPermissionsBoundaryRequest
|
2111
|
+
# data as a hash:
|
2112
|
+
#
|
2113
|
+
# {
|
2114
|
+
# user_name: "userNameType", # required
|
2115
|
+
# }
|
2116
|
+
#
|
2117
|
+
# @!attribute [rw] user_name
|
2118
|
+
# The name (friendly name, not ARN) of the IAM user from which you
|
2119
|
+
# want to remove the permissions boundary.
|
2120
|
+
# @return [String]
|
2121
|
+
#
|
2122
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/DeleteUserPermissionsBoundaryRequest AWS API Documentation
|
2123
|
+
#
|
2124
|
+
class DeleteUserPermissionsBoundaryRequest < Struct.new(
|
2125
|
+
:user_name)
|
2126
|
+
include Aws::Structure
|
2127
|
+
end
|
2128
|
+
|
2046
2129
|
# @note When making an API call, you may pass DeleteUserPolicyRequest
|
2047
2130
|
# data as a hash:
|
2048
2131
|
#
|
@@ -3552,6 +3635,29 @@ module Aws::IAM
|
|
3552
3635
|
#
|
3553
3636
|
# @!attribute [rw] user
|
3554
3637
|
# A structure containing details about the IAM user.
|
3638
|
+
#
|
3639
|
+
# Due to a service issue, password last used data does not include
|
3640
|
+
# password use from May 3rd 2018 22:50 PDT to May 23rd 2018 14:08 PDT.
|
3641
|
+
# This affects [last sign-in][1] dates shown in the IAM console and
|
3642
|
+
# password last used dates in the [IAM credential report][2], and
|
3643
|
+
# returned by this GetUser API. If users signed in during the affected
|
3644
|
+
# time, the password last used date that is returned is the date the
|
3645
|
+
# user last signed in before May 3rd 2018. For users that signed in
|
3646
|
+
# after May 23rd 2018 14:08 PDT, the returned password last used date
|
3647
|
+
# is accurate.
|
3648
|
+
#
|
3649
|
+
# If you use password last used information to identify unused
|
3650
|
+
# credentials for deletion, such as deleting users who did not sign in
|
3651
|
+
# to AWS in the last 90 days, we recommend that you adjust your
|
3652
|
+
# evaluation window to include dates after May 23rd 2018.
|
3653
|
+
# Alternatively, if your users use access keys to access AWS
|
3654
|
+
# programmatically you can refer to access key last used information
|
3655
|
+
# because it is accurate for all dates.
|
3656
|
+
#
|
3657
|
+
#
|
3658
|
+
#
|
3659
|
+
# [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_finding-unused.html
|
3660
|
+
# [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_getting-report.html
|
3555
3661
|
# @return [Types::User]
|
3556
3662
|
#
|
3557
3663
|
# @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/GetUserResponse AWS API Documentation
|
@@ -4228,6 +4334,7 @@ module Aws::IAM
|
|
4228
4334
|
# policy_arn: "arnType", # required
|
4229
4335
|
# entity_filter: "User", # accepts User, Role, Group, LocalManagedPolicy, AWSManagedPolicy
|
4230
4336
|
# path_prefix: "pathType",
|
4337
|
+
# policy_usage_filter: "PermissionsPolicy", # accepts PermissionsPolicy, PermissionsBoundary
|
4231
4338
|
# marker: "markerType",
|
4232
4339
|
# max_items: 1,
|
4233
4340
|
# }
|
@@ -4271,6 +4378,18 @@ module Aws::IAM
|
|
4271
4378
|
# [1]: http://wikipedia.org/wiki/regex
|
4272
4379
|
# @return [String]
|
4273
4380
|
#
|
4381
|
+
# @!attribute [rw] policy_usage_filter
|
4382
|
+
# The policy usage method to use for filtering the results.
|
4383
|
+
#
|
4384
|
+
# To list only permissions policies,
|
4385
|
+
# set `PolicyUsageFilter` to `PermissionsPolicy`. To list only the
|
4386
|
+
# policies used to set permissions boundaries, set the value
|
4387
|
+
# to `PermissionsBoundary`.
|
4388
|
+
#
|
4389
|
+
# This parameter is optional. If it is not included, all policies are
|
4390
|
+
# returned.
|
4391
|
+
# @return [String]
|
4392
|
+
#
|
4274
4393
|
# @!attribute [rw] marker
|
4275
4394
|
# Use this parameter only when paginating results and only after you
|
4276
4395
|
# receive a response indicating that the results are truncated. Set it
|
@@ -4297,6 +4416,7 @@ module Aws::IAM
|
|
4297
4416
|
:policy_arn,
|
4298
4417
|
:entity_filter,
|
4299
4418
|
:path_prefix,
|
4419
|
+
:policy_usage_filter,
|
4300
4420
|
:marker,
|
4301
4421
|
:max_items)
|
4302
4422
|
include Aws::Structure
|
@@ -4884,6 +5004,7 @@ module Aws::IAM
|
|
4884
5004
|
# scope: "All", # accepts All, AWS, Local
|
4885
5005
|
# only_attached: false,
|
4886
5006
|
# path_prefix: "policyPathType",
|
5007
|
+
# policy_usage_filter: "PermissionsPolicy", # accepts PermissionsPolicy, PermissionsBoundary
|
4887
5008
|
# marker: "markerType",
|
4888
5009
|
# max_items: 1,
|
4889
5010
|
# }
|
@@ -4923,6 +5044,18 @@ module Aws::IAM
|
|
4923
5044
|
# [1]: http://wikipedia.org/wiki/regex
|
4924
5045
|
# @return [String]
|
4925
5046
|
#
|
5047
|
+
# @!attribute [rw] policy_usage_filter
|
5048
|
+
# The policy usage method to use for filtering the results.
|
5049
|
+
#
|
5050
|
+
# To list only permissions policies,
|
5051
|
+
# set `PolicyUsageFilter` to `PermissionsPolicy`. To list only the
|
5052
|
+
# policies used to set permissions boundaries, set the value
|
5053
|
+
# to `PermissionsBoundary`.
|
5054
|
+
#
|
5055
|
+
# This parameter is optional. If it is not included, all policies are
|
5056
|
+
# returned.
|
5057
|
+
# @return [String]
|
5058
|
+
#
|
4926
5059
|
# @!attribute [rw] marker
|
4927
5060
|
# Use this parameter only when paginating results and only after you
|
4928
5061
|
# receive a response indicating that the results are truncated. Set it
|
@@ -4949,6 +5082,7 @@ module Aws::IAM
|
|
4949
5082
|
:scope,
|
4950
5083
|
:only_attached,
|
4951
5084
|
:path_prefix,
|
5085
|
+
:policy_usage_filter,
|
4952
5086
|
:marker,
|
4953
5087
|
:max_items)
|
4954
5088
|
include Aws::Structure
|
@@ -5937,6 +6071,18 @@ module Aws::IAM
|
|
5937
6071
|
# policy is attached to.
|
5938
6072
|
# @return [Integer]
|
5939
6073
|
#
|
6074
|
+
# @!attribute [rw] permissions_boundary_usage_count
|
6075
|
+
# The number of entities (users and roles) for which the policy is
|
6076
|
+
# used as the permissions boundary.
|
6077
|
+
#
|
6078
|
+
# For more information about permissions boundaries, see [Permissions
|
6079
|
+
# Boundaries for IAM Identities ][1] in the *IAM User Guide*.
|
6080
|
+
#
|
6081
|
+
#
|
6082
|
+
#
|
6083
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html
|
6084
|
+
# @return [Integer]
|
6085
|
+
#
|
5940
6086
|
# @!attribute [rw] is_attachable
|
5941
6087
|
# Specifies whether the policy can be attached to an IAM user, group,
|
5942
6088
|
# or role.
|
@@ -5982,6 +6128,7 @@ module Aws::IAM
|
|
5982
6128
|
:path,
|
5983
6129
|
:default_version_id,
|
5984
6130
|
:attachment_count,
|
6131
|
+
:permissions_boundary_usage_count,
|
5985
6132
|
:is_attachable,
|
5986
6133
|
:description,
|
5987
6134
|
:create_date,
|
@@ -6156,6 +6303,18 @@ module Aws::IAM
|
|
6156
6303
|
# attached to.
|
6157
6304
|
# @return [Integer]
|
6158
6305
|
#
|
6306
|
+
# @!attribute [rw] permissions_boundary_usage_count
|
6307
|
+
# The number of entities (users and roles) for which the policy is
|
6308
|
+
# used to set the permissions boundary.
|
6309
|
+
#
|
6310
|
+
# For more information about permissions boundaries, see [Permissions
|
6311
|
+
# Boundaries for IAM Identities ][1] in the *IAM User Guide*.
|
6312
|
+
#
|
6313
|
+
#
|
6314
|
+
#
|
6315
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html
|
6316
|
+
# @return [Integer]
|
6317
|
+
#
|
6159
6318
|
# @!attribute [rw] is_attachable
|
6160
6319
|
# Specifies whether the policy can be attached to an IAM user, group,
|
6161
6320
|
# or role.
|
@@ -6200,6 +6359,7 @@ module Aws::IAM
|
|
6200
6359
|
:path,
|
6201
6360
|
:default_version_id,
|
6202
6361
|
:attachment_count,
|
6362
|
+
:permissions_boundary_usage_count,
|
6203
6363
|
:is_attachable,
|
6204
6364
|
:description,
|
6205
6365
|
:create_date,
|
@@ -6484,6 +6644,32 @@ module Aws::IAM
|
|
6484
6644
|
include Aws::Structure
|
6485
6645
|
end
|
6486
6646
|
|
6647
|
+
# @note When making an API call, you may pass PutRolePermissionsBoundaryRequest
|
6648
|
+
# data as a hash:
|
6649
|
+
#
|
6650
|
+
# {
|
6651
|
+
# role_name: "roleNameType", # required
|
6652
|
+
# permissions_boundary: "arnType", # required
|
6653
|
+
# }
|
6654
|
+
#
|
6655
|
+
# @!attribute [rw] role_name
|
6656
|
+
# The name (friendly name, not ARN) of the IAM role for which you want
|
6657
|
+
# to set the permissions boundary.
|
6658
|
+
# @return [String]
|
6659
|
+
#
|
6660
|
+
# @!attribute [rw] permissions_boundary
|
6661
|
+
# The ARN of the policy that is used to set the permissions boundary
|
6662
|
+
# for the role.
|
6663
|
+
# @return [String]
|
6664
|
+
#
|
6665
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/PutRolePermissionsBoundaryRequest AWS API Documentation
|
6666
|
+
#
|
6667
|
+
class PutRolePermissionsBoundaryRequest < Struct.new(
|
6668
|
+
:role_name,
|
6669
|
+
:permissions_boundary)
|
6670
|
+
include Aws::Structure
|
6671
|
+
end
|
6672
|
+
|
6487
6673
|
# @note When making an API call, you may pass PutRolePolicyRequest
|
6488
6674
|
# data as a hash:
|
6489
6675
|
#
|
@@ -6548,6 +6734,32 @@ module Aws::IAM
|
|
6548
6734
|
include Aws::Structure
|
6549
6735
|
end
|
6550
6736
|
|
6737
|
+
# @note When making an API call, you may pass PutUserPermissionsBoundaryRequest
|
6738
|
+
# data as a hash:
|
6739
|
+
#
|
6740
|
+
# {
|
6741
|
+
# user_name: "userNameType", # required
|
6742
|
+
# permissions_boundary: "arnType", # required
|
6743
|
+
# }
|
6744
|
+
#
|
6745
|
+
# @!attribute [rw] user_name
|
6746
|
+
# The name (friendly name, not ARN) of the IAM user for which you want
|
6747
|
+
# to set the permissions boundary.
|
6748
|
+
# @return [String]
|
6749
|
+
#
|
6750
|
+
# @!attribute [rw] permissions_boundary
|
6751
|
+
# The ARN of the policy that is used to set the permissions boundary
|
6752
|
+
# for the user.
|
6753
|
+
# @return [String]
|
6754
|
+
#
|
6755
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/PutUserPermissionsBoundaryRequest AWS API Documentation
|
6756
|
+
#
|
6757
|
+
class PutUserPermissionsBoundaryRequest < Struct.new(
|
6758
|
+
:user_name,
|
6759
|
+
:permissions_boundary)
|
6760
|
+
include Aws::Structure
|
6761
|
+
end
|
6762
|
+
|
6551
6763
|
# @note When making an API call, you may pass PutUserPolicyRequest
|
6552
6764
|
# data as a hash:
|
6553
6765
|
#
|
@@ -6963,6 +7175,18 @@ module Aws::IAM
|
|
6963
7175
|
# `duration-seconds` CLI parameter.
|
6964
7176
|
# @return [Integer]
|
6965
7177
|
#
|
7178
|
+
# @!attribute [rw] permissions_boundary
|
7179
|
+
# The ARN of the policy used to set the permissions boundary for the
|
7180
|
+
# role.
|
7181
|
+
#
|
7182
|
+
# For more information about permissions boundaries, see [Permissions
|
7183
|
+
# Boundaries for IAM Identities ][1] in the *IAM User Guide*.
|
7184
|
+
#
|
7185
|
+
#
|
7186
|
+
#
|
7187
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html
|
7188
|
+
# @return [Types::AttachedPermissionsBoundary]
|
7189
|
+
#
|
6966
7190
|
# @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/Role AWS API Documentation
|
6967
7191
|
#
|
6968
7192
|
class Role < Struct.new(
|
@@ -6973,7 +7197,8 @@ module Aws::IAM
|
|
6973
7197
|
:create_date,
|
6974
7198
|
:assume_role_policy_document,
|
6975
7199
|
:description,
|
6976
|
-
:max_session_duration
|
7200
|
+
:max_session_duration,
|
7201
|
+
:permissions_boundary)
|
6977
7202
|
include Aws::Structure
|
6978
7203
|
end
|
6979
7204
|
|
@@ -7045,6 +7270,18 @@ module Aws::IAM
|
|
7045
7270
|
# the role's access (permissions) policies.
|
7046
7271
|
# @return [Array<Types::AttachedPolicy>]
|
7047
7272
|
#
|
7273
|
+
# @!attribute [rw] permissions_boundary
|
7274
|
+
# The ARN of the policy used to set the permissions boundary for the
|
7275
|
+
# role.
|
7276
|
+
#
|
7277
|
+
# For more information about permissions boundaries, see [Permissions
|
7278
|
+
# Boundaries for IAM Identities ][1] in the *IAM User Guide*.
|
7279
|
+
#
|
7280
|
+
#
|
7281
|
+
#
|
7282
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html
|
7283
|
+
# @return [Types::AttachedPermissionsBoundary]
|
7284
|
+
#
|
7048
7285
|
# @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/RoleDetail AWS API Documentation
|
7049
7286
|
#
|
7050
7287
|
class RoleDetail < Struct.new(
|
@@ -7056,7 +7293,8 @@ module Aws::IAM
|
|
7056
7293
|
:assume_role_policy_document,
|
7057
7294
|
:instance_profile_list,
|
7058
7295
|
:role_policy_list,
|
7059
|
-
:attached_managed_policies
|
7296
|
+
:attached_managed_policies,
|
7297
|
+
:permissions_boundary)
|
7060
7298
|
include Aws::Structure
|
7061
7299
|
end
|
7062
7300
|
|
@@ -7561,16 +7799,22 @@ module Aws::IAM
|
|
7561
7799
|
# @return [String]
|
7562
7800
|
#
|
7563
7801
|
# @!attribute [rw] resource_owner
|
7564
|
-
# An AWS account ID that specifies the owner of
|
7565
|
-
# that does not identify its owner in the
|
7566
|
-
# bucket or object. If `ResourceOwner` is
|
7567
|
-
# as the account owner of any
|
7568
|
-
# simulation. If the `ResourceOwner`
|
7569
|
-
# the owner of the resources and the
|
7570
|
-
# account of the identity provided in
|
7571
|
-
# required only if you specify a
|
7572
|
-
#
|
7573
|
-
# simulated calling user
|
7802
|
+
# An ARN representing the AWS account ID that specifies the owner of
|
7803
|
+
# any simulated resource that does not identify its owner in the
|
7804
|
+
# resource ARN, such as an S3 bucket or object. If `ResourceOwner` is
|
7805
|
+
# specified, it is also used as the account owner of any
|
7806
|
+
# `ResourcePolicy` included in the simulation. If the `ResourceOwner`
|
7807
|
+
# parameter is not specified, then the owner of the resources and the
|
7808
|
+
# resource policy defaults to the account of the identity provided in
|
7809
|
+
# `CallerArn`. This parameter is required only if you specify a
|
7810
|
+
# resource-based policy and account that owns the resource is
|
7811
|
+
# different from the account that owns the simulated calling user
|
7812
|
+
# `CallerArn`.
|
7813
|
+
#
|
7814
|
+
# The ARN for an account uses the following syntax:
|
7815
|
+
# `arn:aws:iam::AWS-account-ID:root`. For example, to represent the
|
7816
|
+
# account with the 112233445566 ID, use the following ARN:
|
7817
|
+
# `arn:aws:iam::112233445566-ID:root`.
|
7574
7818
|
# @return [String]
|
7575
7819
|
#
|
7576
7820
|
# @!attribute [rw] caller_arn
|
@@ -8055,7 +8299,7 @@ module Aws::IAM
|
|
8055
8299
|
# Specifies whether IAM user passwords must contain at least one of
|
8056
8300
|
# the following non-alphanumeric characters:
|
8057
8301
|
#
|
8058
|
-
# ! @ # $ % ^ &
|
8302
|
+
# ! @ # $ % ^ & * ( ) \_ + - = \[ \] \\\{ \\} \| '
|
8059
8303
|
#
|
8060
8304
|
# If you do not specify a value for this parameter, then the operation
|
8061
8305
|
# uses the default value of `false`. The result is that passwords do
|
@@ -8787,7 +9031,9 @@ module Aws::IAM
|
|
8787
9031
|
#
|
8788
9032
|
# @!attribute [rw] ssh_public_key_body
|
8789
9033
|
# The SSH public key. The public key must be encoded in ssh-rsa format
|
8790
|
-
# or PEM format.
|
9034
|
+
# or PEM format. The miminum bit-length of the public key is 2048
|
9035
|
+
# bits. For example, you can generate a 2048-bit key, and the
|
9036
|
+
# resulting PEM file is 1679 bytes long.
|
8791
9037
|
#
|
8792
9038
|
# The [regex pattern][1] used to validate this parameter is a string
|
8793
9039
|
# of characters consisting of the following:
|
@@ -9108,6 +9354,18 @@ module Aws::IAM
|
|
9108
9354
|
# [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html
|
9109
9355
|
# @return [Time]
|
9110
9356
|
#
|
9357
|
+
# @!attribute [rw] permissions_boundary
|
9358
|
+
# The ARN of the policy used to set the permissions boundary for the
|
9359
|
+
# user.
|
9360
|
+
#
|
9361
|
+
# For more information about permissions boundaries, see [Permissions
|
9362
|
+
# Boundaries for IAM Identities ][1] in the *IAM User Guide*.
|
9363
|
+
#
|
9364
|
+
#
|
9365
|
+
#
|
9366
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html
|
9367
|
+
# @return [Types::AttachedPermissionsBoundary]
|
9368
|
+
#
|
9111
9369
|
# @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/User AWS API Documentation
|
9112
9370
|
#
|
9113
9371
|
class User < Struct.new(
|
@@ -9116,7 +9374,8 @@ module Aws::IAM
|
|
9116
9374
|
:user_id,
|
9117
9375
|
:arn,
|
9118
9376
|
:create_date,
|
9119
|
-
:password_last_used
|
9377
|
+
:password_last_used,
|
9378
|
+
:permissions_boundary)
|
9120
9379
|
include Aws::Structure
|
9121
9380
|
end
|
9122
9381
|
|
@@ -9182,6 +9441,18 @@ module Aws::IAM
|
|
9182
9441
|
# A list of the managed policies attached to the user.
|
9183
9442
|
# @return [Array<Types::AttachedPolicy>]
|
9184
9443
|
#
|
9444
|
+
# @!attribute [rw] permissions_boundary
|
9445
|
+
# The ARN of the policy used to set the permissions boundary for the
|
9446
|
+
# user.
|
9447
|
+
#
|
9448
|
+
# For more information about permissions boundaries, see [Permissions
|
9449
|
+
# Boundaries for IAM Identities ][1] in the *IAM User Guide*.
|
9450
|
+
#
|
9451
|
+
#
|
9452
|
+
#
|
9453
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html
|
9454
|
+
# @return [Types::AttachedPermissionsBoundary]
|
9455
|
+
#
|
9185
9456
|
# @see http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/UserDetail AWS API Documentation
|
9186
9457
|
#
|
9187
9458
|
class UserDetail < Struct.new(
|
@@ -9192,7 +9463,8 @@ module Aws::IAM
|
|
9192
9463
|
:create_date,
|
9193
9464
|
:user_policy_list,
|
9194
9465
|
:group_list,
|
9195
|
-
:attached_managed_policies
|
9466
|
+
:attached_managed_policies,
|
9467
|
+
:permissions_boundary)
|
9196
9468
|
include Aws::Structure
|
9197
9469
|
end
|
9198
9470
|
|