aws-sdk-securityhub 1.28.0 → 1.29.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a603aa340ceda544e27258ac758211dbfe9146a6339c72d415db0ada8d5f149a
4
- data.tar.gz: 75825c633442da73a736cfdbf2b11365ea90287ce999bf955a29647af81f7be5
3
+ metadata.gz: 5b1c213116fd58753462c0bff98e78e5b74383a849ac2eda8fd6c4b05f62eb3f
4
+ data.tar.gz: aa722846c14b23622e42ecdfd3942dbcfeac1ccd362b3280989df7e3d7da510a
5
5
  SHA512:
6
- metadata.gz: 12a8b31aef1c80b793eafa8723e58a0c8e16f81db4a72af3a23b71b0d03cfb3caabc98c849134f438f32212e79c114de52e6ffa686fe288563d6330da6c2660c
7
- data.tar.gz: ef2d6cb6971fc42f33d0938a67d5ab759e1ffe95a13b729871881c5992b3fcfb0c257eba0ab2b9004efff65f2c77b11200fa11cedd4c310883290e567f7d9a99
6
+ metadata.gz: 1252127a234fc0da8796a2fe30430cfa4fb4660da81bd0f6e562e58cd02d51c9ec46280b9349cf554ab1ded5cb58422e06f8ad0d069b67a929213ff414905b1a
7
+ data.tar.gz: 1b3ccba2e4bc1851d468281d5cb955703f6e9672a0b7585c96a6b3709641ed5f9654febcb3a39912aa02c0aa0c52f219053777fd60677a88d30629f1c87d9d2a
@@ -47,6 +47,6 @@ require_relative 'aws-sdk-securityhub/customizations'
47
47
  # @service
48
48
  module Aws::SecurityHub
49
49
 
50
- GEM_VERSION = '1.28.0'
50
+ GEM_VERSION = '1.29.0'
51
51
 
52
52
  end
@@ -527,6 +527,10 @@ module Aws::SecurityHub
527
527
  # network: {
528
528
  # direction: "IN", # accepts IN, OUT
529
529
  # protocol: "NonEmptyString",
530
+ # open_port_range: {
531
+ # begin: 1,
532
+ # end: 1,
533
+ # },
530
534
  # source_ip_v4: "NonEmptyString",
531
535
  # source_ip_v6: "NonEmptyString",
532
536
  # source_port: 1,
@@ -537,6 +541,54 @@ module Aws::SecurityHub
537
541
  # destination_port: 1,
538
542
  # destination_domain: "NonEmptyString",
539
543
  # },
544
+ # network_path: [
545
+ # {
546
+ # component_id: "NonEmptyString",
547
+ # component_type: "NonEmptyString",
548
+ # egress: {
549
+ # protocol: "NonEmptyString",
550
+ # destination: {
551
+ # address: ["NonEmptyString"],
552
+ # port_ranges: [
553
+ # {
554
+ # begin: 1,
555
+ # end: 1,
556
+ # },
557
+ # ],
558
+ # },
559
+ # source: {
560
+ # address: ["NonEmptyString"],
561
+ # port_ranges: [
562
+ # {
563
+ # begin: 1,
564
+ # end: 1,
565
+ # },
566
+ # ],
567
+ # },
568
+ # },
569
+ # ingress: {
570
+ # protocol: "NonEmptyString",
571
+ # destination: {
572
+ # address: ["NonEmptyString"],
573
+ # port_ranges: [
574
+ # {
575
+ # begin: 1,
576
+ # end: 1,
577
+ # },
578
+ # ],
579
+ # },
580
+ # source: {
581
+ # address: ["NonEmptyString"],
582
+ # port_ranges: [
583
+ # {
584
+ # begin: 1,
585
+ # end: 1,
586
+ # },
587
+ # ],
588
+ # },
589
+ # },
590
+ # },
591
+ # ],
540
592
  # process: {
541
593
  # name: "NonEmptyString",
542
594
  # path: "NonEmptyString",
@@ -565,6 +617,13 @@ module Aws::SecurityHub
565
617
  # "NonEmptyString" => "NonEmptyString",
566
618
  # },
567
619
  # details: {
620
+ # aws_auto_scaling_auto_scaling_group: {
621
+ # launch_configuration_name: "NonEmptyString",
622
+ # load_balancer_names: ["NonEmptyString"],
623
+ # health_check_type: "NonEmptyString",
624
+ # health_check_grace_period: 1,
625
+ # created_time: "NonEmptyString",
626
+ # },
568
627
  # aws_code_build_project: {
569
628
  # encryption_key: "NonEmptyString",
570
629
  # environment: {
@@ -712,6 +771,40 @@ module Aws::SecurityHub
712
771
  # },
713
772
  # ],
714
773
  # },
774
+ # aws_ec2_volume: {
775
+ # create_time: "NonEmptyString",
776
+ # encrypted: false,
777
+ # size: 1,
778
+ # snapshot_id: "NonEmptyString",
779
+ # status: "NonEmptyString",
780
+ # kms_key_id: "NonEmptyString",
781
+ # attachments: [
782
+ # {
783
+ # attach_time: "NonEmptyString",
784
+ # delete_on_termination: false,
785
+ # instance_id: "NonEmptyString",
786
+ # status: "NonEmptyString",
787
+ # },
788
+ # ],
789
+ # },
790
+ # aws_ec2_vpc: {
791
+ # cidr_block_association_set: [
792
+ # {
793
+ # association_id: "NonEmptyString",
794
+ # cidr_block: "NonEmptyString",
795
+ # cidr_block_state: "NonEmptyString",
796
+ # },
797
+ # ],
798
+ # ipv_6_cidr_block_association_set: [
799
+ # {
800
+ # association_id: "NonEmptyString",
801
+ # ipv_6_cidr_block: "NonEmptyString",
802
+ # cidr_block_state: "NonEmptyString",
803
+ # },
804
+ # ],
805
+ # dhcp_options_id: "NonEmptyString",
806
+ # state: "NonEmptyString",
807
+ # },
715
808
  # aws_elbv_2_load_balancer: {
716
809
  # availability_zones: [
717
810
  # {
@@ -972,6 +1065,36 @@ module Aws::SecurityHub
972
1065
  # updated_by: "NonEmptyString", # required
973
1066
  # updated_at: "NonEmptyString", # required
974
1067
  # },
1068
+ # vulnerabilities: [
1069
+ # {
1070
+ # id: "NonEmptyString", # required
1071
+ # vulnerable_packages: [
1072
+ # {
1073
+ # name: "NonEmptyString",
1074
+ # version: "NonEmptyString",
1075
+ # epoch: "NonEmptyString",
1076
+ # release: "NonEmptyString",
1077
+ # architecture: "NonEmptyString",
1078
+ # },
1079
+ # ],
1080
+ # cvss: [
1081
+ # {
1082
+ # version: "NonEmptyString",
1083
+ # base_score: 1.0,
1084
+ # base_vector: "NonEmptyString",
1085
+ # },
1086
+ # ],
1087
+ # related_vulnerabilities: ["NonEmptyString"],
1088
+ # vendor: {
1089
+ # name: "NonEmptyString", # required
1090
+ # url: "NonEmptyString",
1091
+ # vendor_severity: "NonEmptyString",
1092
+ # vendor_created_at: "NonEmptyString",
1093
+ # vendor_updated_at: "NonEmptyString",
1094
+ # },
1095
+ # reference_urls: ["NonEmptyString"],
1096
+ # },
1097
+ # ],
975
1098
  # },
976
1099
  # ],
977
1100
  # })
@@ -3120,6 +3243,8 @@ module Aws::SecurityHub
3120
3243
  # resp.findings[0].malware[0].state #=> String, one of "OBSERVED", "REMOVAL_FAILED", "REMOVED"
3121
3244
  # resp.findings[0].network.direction #=> String, one of "IN", "OUT"
3122
3245
  # resp.findings[0].network.protocol #=> String
3246
+ # resp.findings[0].network.open_port_range.begin #=> Integer
3247
+ # resp.findings[0].network.open_port_range.end #=> Integer
3123
3248
  # resp.findings[0].network.source_ip_v4 #=> String
3124
3249
  # resp.findings[0].network.source_ip_v6 #=> String
3125
3250
  # resp.findings[0].network.source_port #=> Integer
@@ -3129,6 +3254,31 @@ module Aws::SecurityHub
3129
3254
  # resp.findings[0].network.destination_ip_v6 #=> String
3130
3255
  # resp.findings[0].network.destination_port #=> Integer
3131
3256
  # resp.findings[0].network.destination_domain #=> String
3257
+ # resp.findings[0].network_path #=> Array
3258
+ # resp.findings[0].network_path[0].component_id #=> String
3259
+ # resp.findings[0].network_path[0].component_type #=> String
3260
+ # resp.findings[0].network_path[0].egress.protocol #=> String
3261
+ # resp.findings[0].network_path[0].egress.destination.address #=> Array
3262
+ # resp.findings[0].network_path[0].egress.destination.address[0] #=> String
3263
+ # resp.findings[0].network_path[0].egress.destination.port_ranges #=> Array
3264
+ # resp.findings[0].network_path[0].egress.destination.port_ranges[0].begin #=> Integer
3265
+ # resp.findings[0].network_path[0].egress.destination.port_ranges[0].end #=> Integer
3266
+ # resp.findings[0].network_path[0].egress.source.address #=> Array
3267
+ # resp.findings[0].network_path[0].egress.source.address[0] #=> String
3268
+ # resp.findings[0].network_path[0].egress.source.port_ranges #=> Array
3269
+ # resp.findings[0].network_path[0].egress.source.port_ranges[0].begin #=> Integer
3270
+ # resp.findings[0].network_path[0].egress.source.port_ranges[0].end #=> Integer
3271
+ # resp.findings[0].network_path[0].ingress.protocol #=> String
3272
+ # resp.findings[0].network_path[0].ingress.destination.address #=> Array
3273
+ # resp.findings[0].network_path[0].ingress.destination.address[0] #=> String
3274
+ # resp.findings[0].network_path[0].ingress.destination.port_ranges #=> Array
3275
+ # resp.findings[0].network_path[0].ingress.destination.port_ranges[0].begin #=> Integer
3276
+ # resp.findings[0].network_path[0].ingress.destination.port_ranges[0].end #=> Integer
3277
+ # resp.findings[0].network_path[0].ingress.source.address #=> Array
3278
+ # resp.findings[0].network_path[0].ingress.source.address[0] #=> String
3279
+ # resp.findings[0].network_path[0].ingress.source.port_ranges #=> Array
3280
+ # resp.findings[0].network_path[0].ingress.source.port_ranges[0].begin #=> Integer
3281
+ # resp.findings[0].network_path[0].ingress.source.port_ranges[0].end #=> Integer
3132
3282
  # resp.findings[0].process.name #=> String
3133
3283
  # resp.findings[0].process.path #=> String
3134
3284
  # resp.findings[0].process.pid #=> Integer
@@ -3149,6 +3299,12 @@ module Aws::SecurityHub
3149
3299
  # resp.findings[0].resources[0].region #=> String
3150
3300
  # resp.findings[0].resources[0].tags #=> Hash
3151
3301
  # resp.findings[0].resources[0].tags["NonEmptyString"] #=> String
3302
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.launch_configuration_name #=> String
3303
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.load_balancer_names #=> Array
3304
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.load_balancer_names[0] #=> String
3305
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.health_check_type #=> String
3306
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.health_check_grace_period #=> Integer
3307
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.created_time #=> String
3152
3308
  # resp.findings[0].resources[0].details.aws_code_build_project.encryption_key #=> String
3153
3309
  # resp.findings[0].resources[0].details.aws_code_build_project.environment.certificate #=> String
3154
3310
  # resp.findings[0].resources[0].details.aws_code_build_project.environment.image_pull_credentials_type #=> String
@@ -3240,6 +3396,27 @@ module Aws::SecurityHub
3240
3396
  # resp.findings[0].resources[0].details.aws_ec2_security_group.ip_permissions_egress[0].ipv_6_ranges[0].cidr_ipv_6 #=> String
3241
3397
  # resp.findings[0].resources[0].details.aws_ec2_security_group.ip_permissions_egress[0].prefix_list_ids #=> Array
3242
3398
  # resp.findings[0].resources[0].details.aws_ec2_security_group.ip_permissions_egress[0].prefix_list_ids[0].prefix_list_id #=> String
3399
+ # resp.findings[0].resources[0].details.aws_ec2_volume.create_time #=> String
3400
+ # resp.findings[0].resources[0].details.aws_ec2_volume.encrypted #=> Boolean
3401
+ # resp.findings[0].resources[0].details.aws_ec2_volume.size #=> Integer
3402
+ # resp.findings[0].resources[0].details.aws_ec2_volume.snapshot_id #=> String
3403
+ # resp.findings[0].resources[0].details.aws_ec2_volume.status #=> String
3404
+ # resp.findings[0].resources[0].details.aws_ec2_volume.kms_key_id #=> String
3405
+ # resp.findings[0].resources[0].details.aws_ec2_volume.attachments #=> Array
3406
+ # resp.findings[0].resources[0].details.aws_ec2_volume.attachments[0].attach_time #=> String
3407
+ # resp.findings[0].resources[0].details.aws_ec2_volume.attachments[0].delete_on_termination #=> Boolean
3408
+ # resp.findings[0].resources[0].details.aws_ec2_volume.attachments[0].instance_id #=> String
3409
+ # resp.findings[0].resources[0].details.aws_ec2_volume.attachments[0].status #=> String
3410
+ # resp.findings[0].resources[0].details.aws_ec2_vpc.cidr_block_association_set #=> Array
3411
+ # resp.findings[0].resources[0].details.aws_ec2_vpc.cidr_block_association_set[0].association_id #=> String
3412
+ # resp.findings[0].resources[0].details.aws_ec2_vpc.cidr_block_association_set[0].cidr_block #=> String
3413
+ # resp.findings[0].resources[0].details.aws_ec2_vpc.cidr_block_association_set[0].cidr_block_state #=> String
3414
+ # resp.findings[0].resources[0].details.aws_ec2_vpc.ipv_6_cidr_block_association_set #=> Array
3415
+ # resp.findings[0].resources[0].details.aws_ec2_vpc.ipv_6_cidr_block_association_set[0].association_id #=> String
3416
+ # resp.findings[0].resources[0].details.aws_ec2_vpc.ipv_6_cidr_block_association_set[0].ipv_6_cidr_block #=> String
3417
+ # resp.findings[0].resources[0].details.aws_ec2_vpc.ipv_6_cidr_block_association_set[0].cidr_block_state #=> String
3418
+ # resp.findings[0].resources[0].details.aws_ec2_vpc.dhcp_options_id #=> String
3419
+ # resp.findings[0].resources[0].details.aws_ec2_vpc.state #=> String
3243
3420
  # resp.findings[0].resources[0].details.aws_elbv_2_load_balancer.availability_zones #=> Array
3244
3421
  # resp.findings[0].resources[0].details.aws_elbv_2_load_balancer.availability_zones[0].zone_name #=> String
3245
3422
  # resp.findings[0].resources[0].details.aws_elbv_2_load_balancer.availability_zones[0].subnet_id #=> String
@@ -3406,6 +3583,27 @@ module Aws::SecurityHub
3406
3583
  # resp.findings[0].note.text #=> String
3407
3584
  # resp.findings[0].note.updated_by #=> String
3408
3585
  # resp.findings[0].note.updated_at #=> String
3586
+ # resp.findings[0].vulnerabilities #=> Array
3587
+ # resp.findings[0].vulnerabilities[0].id #=> String
3588
+ # resp.findings[0].vulnerabilities[0].vulnerable_packages #=> Array
3589
+ # resp.findings[0].vulnerabilities[0].vulnerable_packages[0].name #=> String
3590
+ # resp.findings[0].vulnerabilities[0].vulnerable_packages[0].version #=> String
3591
+ # resp.findings[0].vulnerabilities[0].vulnerable_packages[0].epoch #=> String
3592
+ # resp.findings[0].vulnerabilities[0].vulnerable_packages[0].release #=> String
3593
+ # resp.findings[0].vulnerabilities[0].vulnerable_packages[0].architecture #=> String
3594
+ # resp.findings[0].vulnerabilities[0].cvss #=> Array
3595
+ # resp.findings[0].vulnerabilities[0].cvss[0].version #=> String
3596
+ # resp.findings[0].vulnerabilities[0].cvss[0].base_score #=> Float
3597
+ # resp.findings[0].vulnerabilities[0].cvss[0].base_vector #=> String
3598
+ # resp.findings[0].vulnerabilities[0].related_vulnerabilities #=> Array
3599
+ # resp.findings[0].vulnerabilities[0].related_vulnerabilities[0] #=> String
3600
+ # resp.findings[0].vulnerabilities[0].vendor.name #=> String
3601
+ # resp.findings[0].vulnerabilities[0].vendor.url #=> String
3602
+ # resp.findings[0].vulnerabilities[0].vendor.vendor_severity #=> String
3603
+ # resp.findings[0].vulnerabilities[0].vendor.vendor_created_at #=> String
3604
+ # resp.findings[0].vulnerabilities[0].vendor.vendor_updated_at #=> String
3605
+ # resp.findings[0].vulnerabilities[0].reference_urls #=> Array
3606
+ # resp.findings[0].vulnerabilities[0].reference_urls[0] #=> String
3409
3607
  # resp.next_token #=> String
3410
3608
  #
3411
3609
  # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetFindings AWS API Documentation
@@ -5362,7 +5560,7 @@ module Aws::SecurityHub
5362
5560
  #
5363
5561
  # @option params [String] :disabled_reason
5364
5562
  # A description of the reason why you are disabling a security standard
5365
- # control.
5563
+ # control. If you are disabling a control, then this is required.
5366
5564
  #
5367
5565
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5368
5566
  #
@@ -5396,7 +5594,7 @@ module Aws::SecurityHub
5396
5594
  params: params,
5397
5595
  config: config)
5398
5596
  context[:gem_name] = 'aws-sdk-securityhub'
5399
- context[:gem_version] = '1.28.0'
5597
+ context[:gem_version] = '1.29.0'
5400
5598
  Seahorse::Client::Request.new(handlers, context)
5401
5599
  end
5402
5600
 
@@ -25,6 +25,7 @@ module Aws::SecurityHub
25
25
  ArnList = Shapes::ListShape.new(name: 'ArnList')
26
26
  AvailabilityZone = Shapes::StructureShape.new(name: 'AvailabilityZone')
27
27
  AvailabilityZones = Shapes::ListShape.new(name: 'AvailabilityZones')
28
+ AwsAutoScalingAutoScalingGroupDetails = Shapes::StructureShape.new(name: 'AwsAutoScalingAutoScalingGroupDetails')
28
29
  AwsCloudFrontDistributionDetails = Shapes::StructureShape.new(name: 'AwsCloudFrontDistributionDetails')
29
30
  AwsCloudFrontDistributionLogging = Shapes::StructureShape.new(name: 'AwsCloudFrontDistributionLogging')
30
31
  AwsCloudFrontDistributionOriginItem = Shapes::StructureShape.new(name: 'AwsCloudFrontDistributionOriginItem')
@@ -51,6 +52,10 @@ module Aws::SecurityHub
51
52
  AwsEc2SecurityGroupPrefixListIdList = Shapes::ListShape.new(name: 'AwsEc2SecurityGroupPrefixListIdList')
52
53
  AwsEc2SecurityGroupUserIdGroupPair = Shapes::StructureShape.new(name: 'AwsEc2SecurityGroupUserIdGroupPair')
53
54
  AwsEc2SecurityGroupUserIdGroupPairList = Shapes::ListShape.new(name: 'AwsEc2SecurityGroupUserIdGroupPairList')
55
+ AwsEc2VolumeAttachment = Shapes::StructureShape.new(name: 'AwsEc2VolumeAttachment')
56
+ AwsEc2VolumeAttachmentList = Shapes::ListShape.new(name: 'AwsEc2VolumeAttachmentList')
57
+ AwsEc2VolumeDetails = Shapes::StructureShape.new(name: 'AwsEc2VolumeDetails')
58
+ AwsEc2VpcDetails = Shapes::StructureShape.new(name: 'AwsEc2VpcDetails')
54
59
  AwsElasticsearchDomainDetails = Shapes::StructureShape.new(name: 'AwsElasticsearchDomainDetails')
55
60
  AwsElasticsearchDomainDomainEndpointOptions = Shapes::StructureShape.new(name: 'AwsElasticsearchDomainDomainEndpointOptions')
56
61
  AwsElasticsearchDomainEncryptionAtRestOptions = Shapes::StructureShape.new(name: 'AwsElasticsearchDomainEncryptionAtRestOptions')
@@ -109,6 +114,8 @@ module Aws::SecurityHub
109
114
  BatchUpdateFindingsUnprocessedFindingsList = Shapes::ListShape.new(name: 'BatchUpdateFindingsUnprocessedFindingsList')
110
115
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
111
116
  CategoryList = Shapes::ListShape.new(name: 'CategoryList')
117
+ CidrBlockAssociation = Shapes::StructureShape.new(name: 'CidrBlockAssociation')
118
+ CidrBlockAssociationList = Shapes::ListShape.new(name: 'CidrBlockAssociationList')
112
119
  Compliance = Shapes::StructureShape.new(name: 'Compliance')
113
120
  ComplianceStatus = Shapes::StringShape.new(name: 'ComplianceStatus')
114
121
  ContainerDetails = Shapes::StructureShape.new(name: 'ContainerDetails')
@@ -119,6 +126,8 @@ module Aws::SecurityHub
119
126
  CreateInsightResponse = Shapes::StructureShape.new(name: 'CreateInsightResponse')
120
127
  CreateMembersRequest = Shapes::StructureShape.new(name: 'CreateMembersRequest')
121
128
  CreateMembersResponse = Shapes::StructureShape.new(name: 'CreateMembersResponse')
129
+ Cvss = Shapes::StructureShape.new(name: 'Cvss')
130
+ CvssList = Shapes::ListShape.new(name: 'CvssList')
122
131
  DateFilter = Shapes::StructureShape.new(name: 'DateFilter')
123
132
  DateFilterList = Shapes::ListShape.new(name: 'DateFilterList')
124
133
  DateRange = Shapes::StructureShape.new(name: 'DateRange')
@@ -190,6 +199,8 @@ module Aws::SecurityHub
190
199
  InviteMembersResponse = Shapes::StructureShape.new(name: 'InviteMembersResponse')
191
200
  IpFilter = Shapes::StructureShape.new(name: 'IpFilter')
192
201
  IpFilterList = Shapes::ListShape.new(name: 'IpFilterList')
202
+ Ipv6CidrBlockAssociation = Shapes::StructureShape.new(name: 'Ipv6CidrBlockAssociation')
203
+ Ipv6CidrBlockAssociationList = Shapes::ListShape.new(name: 'Ipv6CidrBlockAssociationList')
193
204
  KeywordFilter = Shapes::StructureShape.new(name: 'KeywordFilter')
194
205
  KeywordFilterList = Shapes::ListShape.new(name: 'KeywordFilterList')
195
206
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
@@ -214,6 +225,10 @@ module Aws::SecurityHub
214
225
  MemberList = Shapes::ListShape.new(name: 'MemberList')
215
226
  Network = Shapes::StructureShape.new(name: 'Network')
216
227
  NetworkDirection = Shapes::StringShape.new(name: 'NetworkDirection')
228
+ NetworkHeader = Shapes::StructureShape.new(name: 'NetworkHeader')
229
+ NetworkPathComponent = Shapes::StructureShape.new(name: 'NetworkPathComponent')
230
+ NetworkPathComponentDetails = Shapes::StructureShape.new(name: 'NetworkPathComponentDetails')
231
+ NetworkPathList = Shapes::ListShape.new(name: 'NetworkPathList')
217
232
  NextToken = Shapes::StringShape.new(name: 'NextToken')
218
233
  NonEmptyString = Shapes::StringShape.new(name: 'NonEmptyString')
219
234
  NonEmptyStringList = Shapes::ListShape.new(name: 'NonEmptyStringList')
@@ -222,6 +237,8 @@ module Aws::SecurityHub
222
237
  NumberFilter = Shapes::StructureShape.new(name: 'NumberFilter')
223
238
  NumberFilterList = Shapes::ListShape.new(name: 'NumberFilterList')
224
239
  Partition = Shapes::StringShape.new(name: 'Partition')
240
+ PortRange = Shapes::StructureShape.new(name: 'PortRange')
241
+ PortRangeList = Shapes::ListShape.new(name: 'PortRangeList')
225
242
  ProcessDetails = Shapes::StructureShape.new(name: 'ProcessDetails')
226
243
  Product = Shapes::StructureShape.new(name: 'Product')
227
244
  ProductSubscriptionArnList = Shapes::ListShape.new(name: 'ProductSubscriptionArnList')
@@ -246,6 +263,8 @@ module Aws::SecurityHub
246
263
  SeverityLabel = Shapes::StringShape.new(name: 'SeverityLabel')
247
264
  SeverityRating = Shapes::StringShape.new(name: 'SeverityRating')
248
265
  SeverityUpdate = Shapes::StructureShape.new(name: 'SeverityUpdate')
266
+ SoftwarePackage = Shapes::StructureShape.new(name: 'SoftwarePackage')
267
+ SoftwarePackageList = Shapes::ListShape.new(name: 'SoftwarePackageList')
249
268
  SortCriteria = Shapes::ListShape.new(name: 'SortCriteria')
250
269
  SortCriterion = Shapes::StructureShape.new(name: 'SortCriterion')
251
270
  SortOrder = Shapes::StringShape.new(name: 'SortOrder')
@@ -289,6 +308,9 @@ module Aws::SecurityHub
289
308
  UpdateStandardsControlRequest = Shapes::StructureShape.new(name: 'UpdateStandardsControlRequest')
290
309
  UpdateStandardsControlResponse = Shapes::StructureShape.new(name: 'UpdateStandardsControlResponse')
291
310
  VerificationState = Shapes::StringShape.new(name: 'VerificationState')
311
+ Vulnerability = Shapes::StructureShape.new(name: 'Vulnerability')
312
+ VulnerabilityList = Shapes::ListShape.new(name: 'VulnerabilityList')
313
+ VulnerabilityVendor = Shapes::StructureShape.new(name: 'VulnerabilityVendor')
292
314
  WafAction = Shapes::StructureShape.new(name: 'WafAction')
293
315
  WafExcludedRule = Shapes::StructureShape.new(name: 'WafExcludedRule')
294
316
  WafExcludedRuleList = Shapes::ListShape.new(name: 'WafExcludedRuleList')
@@ -331,6 +353,13 @@ module Aws::SecurityHub
331
353
 
332
354
  AvailabilityZones.member = Shapes::ShapeRef.new(shape: AvailabilityZone)
333
355
 
356
+ AwsAutoScalingAutoScalingGroupDetails.add_member(:launch_configuration_name, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "LaunchConfigurationName"))
357
+ AwsAutoScalingAutoScalingGroupDetails.add_member(:load_balancer_names, Shapes::ShapeRef.new(shape: StringList, location_name: "LoadBalancerNames"))
358
+ AwsAutoScalingAutoScalingGroupDetails.add_member(:health_check_type, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "HealthCheckType"))
359
+ AwsAutoScalingAutoScalingGroupDetails.add_member(:health_check_grace_period, Shapes::ShapeRef.new(shape: Integer, location_name: "HealthCheckGracePeriod"))
360
+ AwsAutoScalingAutoScalingGroupDetails.add_member(:created_time, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "CreatedTime"))
361
+ AwsAutoScalingAutoScalingGroupDetails.struct_class = Types::AwsAutoScalingAutoScalingGroupDetails
362
+
334
363
  AwsCloudFrontDistributionDetails.add_member(:domain_name, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "DomainName"))
335
364
  AwsCloudFrontDistributionDetails.add_member(:etag, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "ETag"))
336
365
  AwsCloudFrontDistributionDetails.add_member(:last_modified_time, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "LastModifiedTime"))
@@ -461,6 +490,29 @@ module Aws::SecurityHub
461
490
 
462
491
  AwsEc2SecurityGroupUserIdGroupPairList.member = Shapes::ShapeRef.new(shape: AwsEc2SecurityGroupUserIdGroupPair)
463
492
 
493
+ AwsEc2VolumeAttachment.add_member(:attach_time, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "AttachTime"))
494
+ AwsEc2VolumeAttachment.add_member(:delete_on_termination, Shapes::ShapeRef.new(shape: Boolean, location_name: "DeleteOnTermination"))
495
+ AwsEc2VolumeAttachment.add_member(:instance_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "InstanceId"))
496
+ AwsEc2VolumeAttachment.add_member(:status, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Status"))
497
+ AwsEc2VolumeAttachment.struct_class = Types::AwsEc2VolumeAttachment
498
+
499
+ AwsEc2VolumeAttachmentList.member = Shapes::ShapeRef.new(shape: AwsEc2VolumeAttachment)
500
+
501
+ AwsEc2VolumeDetails.add_member(:create_time, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "CreateTime"))
502
+ AwsEc2VolumeDetails.add_member(:encrypted, Shapes::ShapeRef.new(shape: Boolean, location_name: "Encrypted"))
503
+ AwsEc2VolumeDetails.add_member(:size, Shapes::ShapeRef.new(shape: Integer, location_name: "Size"))
504
+ AwsEc2VolumeDetails.add_member(:snapshot_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "SnapshotId"))
505
+ AwsEc2VolumeDetails.add_member(:status, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Status"))
506
+ AwsEc2VolumeDetails.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "KmsKeyId"))
507
+ AwsEc2VolumeDetails.add_member(:attachments, Shapes::ShapeRef.new(shape: AwsEc2VolumeAttachmentList, location_name: "Attachments"))
508
+ AwsEc2VolumeDetails.struct_class = Types::AwsEc2VolumeDetails
509
+
510
+ AwsEc2VpcDetails.add_member(:cidr_block_association_set, Shapes::ShapeRef.new(shape: CidrBlockAssociationList, location_name: "CidrBlockAssociationSet"))
511
+ AwsEc2VpcDetails.add_member(:ipv_6_cidr_block_association_set, Shapes::ShapeRef.new(shape: Ipv6CidrBlockAssociationList, location_name: "Ipv6CidrBlockAssociationSet"))
512
+ AwsEc2VpcDetails.add_member(:dhcp_options_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "DhcpOptionsId"))
513
+ AwsEc2VpcDetails.add_member(:state, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "State"))
514
+ AwsEc2VpcDetails.struct_class = Types::AwsEc2VpcDetails
515
+
464
516
  AwsElasticsearchDomainDetails.add_member(:access_policies, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "AccessPolicies"))
465
517
  AwsElasticsearchDomainDetails.add_member(:domain_endpoint_options, Shapes::ShapeRef.new(shape: AwsElasticsearchDomainDomainEndpointOptions, location_name: "DomainEndpointOptions"))
466
518
  AwsElasticsearchDomainDetails.add_member(:domain_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "DomainId"))
@@ -668,6 +720,7 @@ module Aws::SecurityHub
668
720
  AwsSecurityFinding.add_member(:user_defined_fields, Shapes::ShapeRef.new(shape: FieldMap, location_name: "UserDefinedFields"))
669
721
  AwsSecurityFinding.add_member(:malware, Shapes::ShapeRef.new(shape: MalwareList, location_name: "Malware"))
670
722
  AwsSecurityFinding.add_member(:network, Shapes::ShapeRef.new(shape: Network, location_name: "Network"))
723
+ AwsSecurityFinding.add_member(:network_path, Shapes::ShapeRef.new(shape: NetworkPathList, location_name: "NetworkPath"))
671
724
  AwsSecurityFinding.add_member(:process, Shapes::ShapeRef.new(shape: ProcessDetails, location_name: "Process"))
672
725
  AwsSecurityFinding.add_member(:threat_intel_indicators, Shapes::ShapeRef.new(shape: ThreatIntelIndicatorList, location_name: "ThreatIntelIndicators"))
673
726
  AwsSecurityFinding.add_member(:resources, Shapes::ShapeRef.new(shape: ResourceList, required: true, location_name: "Resources"))
@@ -678,6 +731,7 @@ module Aws::SecurityHub
678
731
  AwsSecurityFinding.add_member(:record_state, Shapes::ShapeRef.new(shape: RecordState, location_name: "RecordState"))
679
732
  AwsSecurityFinding.add_member(:related_findings, Shapes::ShapeRef.new(shape: RelatedFindingList, location_name: "RelatedFindings"))
680
733
  AwsSecurityFinding.add_member(:note, Shapes::ShapeRef.new(shape: Note, location_name: "Note"))
734
+ AwsSecurityFinding.add_member(:vulnerabilities, Shapes::ShapeRef.new(shape: VulnerabilityList, location_name: "Vulnerabilities"))
681
735
  AwsSecurityFinding.struct_class = Types::AwsSecurityFinding
682
736
 
683
737
  AwsSecurityFindingFilters.add_member(:product_arn, Shapes::ShapeRef.new(shape: StringFilterList, location_name: "ProductArn"))
@@ -853,6 +907,13 @@ module Aws::SecurityHub
853
907
 
854
908
  CategoryList.member = Shapes::ShapeRef.new(shape: NonEmptyString)
855
909
 
910
+ CidrBlockAssociation.add_member(:association_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "AssociationId"))
911
+ CidrBlockAssociation.add_member(:cidr_block, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "CidrBlock"))
912
+ CidrBlockAssociation.add_member(:cidr_block_state, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "CidrBlockState"))
913
+ CidrBlockAssociation.struct_class = Types::CidrBlockAssociation
914
+
915
+ CidrBlockAssociationList.member = Shapes::ShapeRef.new(shape: CidrBlockAssociation)
916
+
856
917
  Compliance.add_member(:status, Shapes::ShapeRef.new(shape: ComplianceStatus, location_name: "Status"))
857
918
  Compliance.add_member(:related_requirements, Shapes::ShapeRef.new(shape: RelatedRequirementsList, location_name: "RelatedRequirements"))
858
919
  Compliance.add_member(:status_reasons, Shapes::ShapeRef.new(shape: StatusReasonsList, location_name: "StatusReasons"))
@@ -886,6 +947,13 @@ module Aws::SecurityHub
886
947
  CreateMembersResponse.add_member(:unprocessed_accounts, Shapes::ShapeRef.new(shape: ResultList, location_name: "UnprocessedAccounts"))
887
948
  CreateMembersResponse.struct_class = Types::CreateMembersResponse
888
949
 
950
+ Cvss.add_member(:version, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Version"))
951
+ Cvss.add_member(:base_score, Shapes::ShapeRef.new(shape: Double, location_name: "BaseScore"))
952
+ Cvss.add_member(:base_vector, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "BaseVector"))
953
+ Cvss.struct_class = Types::Cvss
954
+
955
+ CvssList.member = Shapes::ShapeRef.new(shape: Cvss)
956
+
889
957
  DateFilter.add_member(:start, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Start"))
890
958
  DateFilter.add_member(:end, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "End"))
891
959
  DateFilter.add_member(:date_range, Shapes::ShapeRef.new(shape: DateRange, location_name: "DateRange"))
@@ -1111,6 +1179,13 @@ module Aws::SecurityHub
1111
1179
 
1112
1180
  IpFilterList.member = Shapes::ShapeRef.new(shape: IpFilter)
1113
1181
 
1182
+ Ipv6CidrBlockAssociation.add_member(:association_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "AssociationId"))
1183
+ Ipv6CidrBlockAssociation.add_member(:ipv_6_cidr_block, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Ipv6CidrBlock"))
1184
+ Ipv6CidrBlockAssociation.add_member(:cidr_block_state, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "CidrBlockState"))
1185
+ Ipv6CidrBlockAssociation.struct_class = Types::Ipv6CidrBlockAssociation
1186
+
1187
+ Ipv6CidrBlockAssociationList.member = Shapes::ShapeRef.new(shape: Ipv6CidrBlockAssociation)
1188
+
1114
1189
  KeywordFilter.add_member(:value, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Value"))
1115
1190
  KeywordFilter.struct_class = Types::KeywordFilter
1116
1191
 
@@ -1182,6 +1257,7 @@ module Aws::SecurityHub
1182
1257
 
1183
1258
  Network.add_member(:direction, Shapes::ShapeRef.new(shape: NetworkDirection, location_name: "Direction"))
1184
1259
  Network.add_member(:protocol, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Protocol"))
1260
+ Network.add_member(:open_port_range, Shapes::ShapeRef.new(shape: PortRange, location_name: "OpenPortRange"))
1185
1261
  Network.add_member(:source_ip_v4, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "SourceIpV4"))
1186
1262
  Network.add_member(:source_ip_v6, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "SourceIpV6"))
1187
1263
  Network.add_member(:source_port, Shapes::ShapeRef.new(shape: Integer, location_name: "SourcePort"))
@@ -1193,6 +1269,23 @@ module Aws::SecurityHub
1193
1269
  Network.add_member(:destination_domain, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "DestinationDomain"))
1194
1270
  Network.struct_class = Types::Network
1195
1271
 
1272
+ NetworkHeader.add_member(:protocol, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Protocol"))
1273
+ NetworkHeader.add_member(:destination, Shapes::ShapeRef.new(shape: NetworkPathComponentDetails, location_name: "Destination"))
1274
+ NetworkHeader.add_member(:source, Shapes::ShapeRef.new(shape: NetworkPathComponentDetails, location_name: "Source"))
1275
+ NetworkHeader.struct_class = Types::NetworkHeader
1276
+
1277
+ NetworkPathComponent.add_member(:component_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "ComponentId"))
1278
+ NetworkPathComponent.add_member(:component_type, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "ComponentType"))
1279
+ NetworkPathComponent.add_member(:egress, Shapes::ShapeRef.new(shape: NetworkHeader, location_name: "Egress"))
1280
+ NetworkPathComponent.add_member(:ingress, Shapes::ShapeRef.new(shape: NetworkHeader, location_name: "Ingress"))
1281
+ NetworkPathComponent.struct_class = Types::NetworkPathComponent
1282
+
1283
+ NetworkPathComponentDetails.add_member(:address, Shapes::ShapeRef.new(shape: StringList, location_name: "Address"))
1284
+ NetworkPathComponentDetails.add_member(:port_ranges, Shapes::ShapeRef.new(shape: PortRangeList, location_name: "PortRanges"))
1285
+ NetworkPathComponentDetails.struct_class = Types::NetworkPathComponentDetails
1286
+
1287
+ NetworkPathList.member = Shapes::ShapeRef.new(shape: NetworkPathComponent)
1288
+
1196
1289
  NonEmptyStringList.member = Shapes::ShapeRef.new(shape: NonEmptyString)
1197
1290
 
1198
1291
  Note.add_member(:text, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "Text"))
@@ -1211,6 +1304,12 @@ module Aws::SecurityHub
1211
1304
 
1212
1305
  NumberFilterList.member = Shapes::ShapeRef.new(shape: NumberFilter)
1213
1306
 
1307
+ PortRange.add_member(:begin, Shapes::ShapeRef.new(shape: Integer, location_name: "Begin"))
1308
+ PortRange.add_member(:end, Shapes::ShapeRef.new(shape: Integer, location_name: "End"))
1309
+ PortRange.struct_class = Types::PortRange
1310
+
1311
+ PortRangeList.member = Shapes::ShapeRef.new(shape: PortRange)
1312
+
1214
1313
  ProcessDetails.add_member(:name, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Name"))
1215
1314
  ProcessDetails.add_member(:path, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Path"))
1216
1315
  ProcessDetails.add_member(:pid, Shapes::ShapeRef.new(shape: Integer, location_name: "Pid"))
@@ -1261,11 +1360,14 @@ module Aws::SecurityHub
1261
1360
  ResourceConflictException.add_member(:code, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Code"))
1262
1361
  ResourceConflictException.struct_class = Types::ResourceConflictException
1263
1362
 
1363
+ ResourceDetails.add_member(:aws_auto_scaling_auto_scaling_group, Shapes::ShapeRef.new(shape: AwsAutoScalingAutoScalingGroupDetails, location_name: "AwsAutoScalingAutoScalingGroup"))
1264
1364
  ResourceDetails.add_member(:aws_code_build_project, Shapes::ShapeRef.new(shape: AwsCodeBuildProjectDetails, location_name: "AwsCodeBuildProject"))
1265
1365
  ResourceDetails.add_member(:aws_cloud_front_distribution, Shapes::ShapeRef.new(shape: AwsCloudFrontDistributionDetails, location_name: "AwsCloudFrontDistribution"))
1266
1366
  ResourceDetails.add_member(:aws_ec2_instance, Shapes::ShapeRef.new(shape: AwsEc2InstanceDetails, location_name: "AwsEc2Instance"))
1267
1367
  ResourceDetails.add_member(:aws_ec2_network_interface, Shapes::ShapeRef.new(shape: AwsEc2NetworkInterfaceDetails, location_name: "AwsEc2NetworkInterface"))
1268
1368
  ResourceDetails.add_member(:aws_ec2_security_group, Shapes::ShapeRef.new(shape: AwsEc2SecurityGroupDetails, location_name: "AwsEc2SecurityGroup"))
1369
+ ResourceDetails.add_member(:aws_ec2_volume, Shapes::ShapeRef.new(shape: AwsEc2VolumeDetails, location_name: "AwsEc2Volume"))
1370
+ ResourceDetails.add_member(:aws_ec2_vpc, Shapes::ShapeRef.new(shape: AwsEc2VpcDetails, location_name: "AwsEc2Vpc"))
1269
1371
  ResourceDetails.add_member(:aws_elbv_2_load_balancer, Shapes::ShapeRef.new(shape: AwsElbv2LoadBalancerDetails, location_name: "AwsElbv2LoadBalancer"))
1270
1372
  ResourceDetails.add_member(:aws_elasticsearch_domain, Shapes::ShapeRef.new(shape: AwsElasticsearchDomainDetails, location_name: "AwsElasticsearchDomain"))
1271
1373
  ResourceDetails.add_member(:aws_s3_bucket, Shapes::ShapeRef.new(shape: AwsS3BucketDetails, location_name: "AwsS3Bucket"))
@@ -1308,6 +1410,15 @@ module Aws::SecurityHub
1308
1410
  SeverityUpdate.add_member(:label, Shapes::ShapeRef.new(shape: SeverityLabel, location_name: "Label"))
1309
1411
  SeverityUpdate.struct_class = Types::SeverityUpdate
1310
1412
 
1413
+ SoftwarePackage.add_member(:name, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Name"))
1414
+ SoftwarePackage.add_member(:version, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Version"))
1415
+ SoftwarePackage.add_member(:epoch, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Epoch"))
1416
+ SoftwarePackage.add_member(:release, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Release"))
1417
+ SoftwarePackage.add_member(:architecture, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Architecture"))
1418
+ SoftwarePackage.struct_class = Types::SoftwarePackage
1419
+
1420
+ SoftwarePackageList.member = Shapes::ShapeRef.new(shape: SoftwarePackage)
1421
+
1311
1422
  SortCriteria.member = Shapes::ShapeRef.new(shape: SortCriterion)
1312
1423
 
1313
1424
  SortCriterion.add_member(:field, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Field"))
@@ -1427,6 +1538,23 @@ module Aws::SecurityHub
1427
1538
 
1428
1539
  UpdateStandardsControlResponse.struct_class = Types::UpdateStandardsControlResponse
1429
1540
 
1541
+ Vulnerability.add_member(:id, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "Id"))
1542
+ Vulnerability.add_member(:vulnerable_packages, Shapes::ShapeRef.new(shape: SoftwarePackageList, location_name: "VulnerablePackages"))
1543
+ Vulnerability.add_member(:cvss, Shapes::ShapeRef.new(shape: CvssList, location_name: "Cvss"))
1544
+ Vulnerability.add_member(:related_vulnerabilities, Shapes::ShapeRef.new(shape: StringList, location_name: "RelatedVulnerabilities"))
1545
+ Vulnerability.add_member(:vendor, Shapes::ShapeRef.new(shape: VulnerabilityVendor, location_name: "Vendor"))
1546
+ Vulnerability.add_member(:reference_urls, Shapes::ShapeRef.new(shape: StringList, location_name: "ReferenceUrls"))
1547
+ Vulnerability.struct_class = Types::Vulnerability
1548
+
1549
+ VulnerabilityList.member = Shapes::ShapeRef.new(shape: Vulnerability)
1550
+
1551
+ VulnerabilityVendor.add_member(:name, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "Name"))
1552
+ VulnerabilityVendor.add_member(:url, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Url"))
1553
+ VulnerabilityVendor.add_member(:vendor_severity, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "VendorSeverity"))
1554
+ VulnerabilityVendor.add_member(:vendor_created_at, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "VendorCreatedAt"))
1555
+ VulnerabilityVendor.add_member(:vendor_updated_at, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "VendorUpdatedAt"))
1556
+ VulnerabilityVendor.struct_class = Types::VulnerabilityVendor
1557
+
1430
1558
  WafAction.add_member(:type, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Type"))
1431
1559
  WafAction.struct_class = Types::WafAction
1432
1560