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 
     | 
    
         |