aws-sdk-securityhub 1.53.0 → 1.57.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 75432a4d2c16f391afc00f92fd5e3a19ca4dbad99560e4458bddcd3126db38e4
4
- data.tar.gz: 6ebb8cf9b50621d956ab71f610378c42e676dd7b4478d1ffc28d5d8677efe23d
3
+ metadata.gz: 210ca47bffe7e7884ed20eced933d907a9e3a1478f22f714ed8f4e3090221573
4
+ data.tar.gz: c0be74be7b1d76c7ff2264a0197ae57ad6ea43a1c5dd9eebce004b20a4b0e257
5
5
  SHA512:
6
- metadata.gz: 5f4e8b42138a678a79eb82bd4d2cdc45717edcdc620d129a78d1b13ef38d12064efbc613edfefc4a236807bb5f3447eda6221901ce7876e0a2ed14b4d2e1988c
7
- data.tar.gz: 904c80affb9439c9556a9835cef5954c61e738d260468516d0415ab74958cc8df57722c4d1b6b21aa385fd357de0201e2c1b54b09f5617fcc133329e0aba3eff
6
+ metadata.gz: 2f896fa98c561bb2e759ff44a26dedfb6cb4c7bb60f0205a9d04ab57069a403d6c0962d5ab052bf35a984d51ee74cef12a4dbc83243521c5fe29d5908f627593
7
+ data.tar.gz: 4466d4afcaf4d4c2ac15397f3a38af42c6c17fbcc86237fc5f562089be2ed3f1dda2fbb5b65950be01b39ca20f0375409fc0978e2e18577b733e19e062cc9b77
data/CHANGELOG.md CHANGED
@@ -1,6 +1,26 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.57.0 (2021-11-30)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.56.0 (2021-11-04)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
14
+ 1.55.0 (2021-10-20)
15
+ ------------------
16
+
17
+ * Feature - Added support for cross-Region finding aggregation, which replicates findings from linked Regions to a single aggregation Region. Added operations to view, enable, update, and delete the finding aggregation.
18
+
19
+ 1.54.0 (2021-10-18)
20
+ ------------------
21
+
22
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
23
+
4
24
  1.53.0 (2021-10-08)
5
25
  ------------------
6
26
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.53.0
1
+ 1.57.0
@@ -119,7 +119,9 @@ module Aws::SecurityHub
119
119
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
120
  # are very aggressive. Construct and pass an instance of
121
121
  # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
- # enable retries and extended timeouts.
122
+ # enable retries and extended timeouts. Instance profile credential
123
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
124
+ # to true.
123
125
  #
124
126
  # @option options [required, String] :region
125
127
  # The AWS region to connect to. The configured `:region` is
@@ -275,6 +277,15 @@ module Aws::SecurityHub
275
277
  # ** Please note ** When response stubbing is enabled, no HTTP
276
278
  # requests are made, and retries are disabled.
277
279
  #
280
+ # @option options [Boolean] :use_dualstack_endpoint
281
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
282
+ # will be used if available.
283
+ #
284
+ # @option options [Boolean] :use_fips_endpoint
285
+ # When set to `true`, fips compatible endpoints will be used if available.
286
+ # When a `fips` region is used, the region is normalized and this config
287
+ # is set to `true`.
288
+ #
278
289
  # @option options [Boolean] :validate_params (true)
279
290
  # When `true`, request parameters are validated before
280
291
  # sending the request.
@@ -3454,6 +3465,80 @@ module Aws::SecurityHub
3454
3465
  req.send_request(options)
3455
3466
  end
3456
3467
 
3468
+ # Used to enable finding aggregation. Must be called from the
3469
+ # aggregation Region.
3470
+ #
3471
+ # For more details about cross-Region replication, see [Configuring
3472
+ # finding
3473
+ # aggregation](securityhub/latest/userguide/finding-aggregation.html) in
3474
+ # the *Security Hub User Guide*.
3475
+ #
3476
+ # @option params [required, String] :region_linking_mode
3477
+ # Indicates whether to aggregate findings from all of the available
3478
+ # Regions in the current partition. Also determines whether to
3479
+ # automatically aggregate findings from new Regions as Security Hub
3480
+ # supports them and you opt into them.
3481
+ #
3482
+ # The selected option also determines how to use the Regions provided in
3483
+ # the Regions list.
3484
+ #
3485
+ # The options are as follows:
3486
+ #
3487
+ # * `ALL_REGIONS` - Indicates to aggregate findings from all of the
3488
+ # Regions where Security Hub is enabled. When you choose this option,
3489
+ # Security Hub also automatically aggregates findings from new Regions
3490
+ # as Security Hub supports them and you opt into them.
3491
+ #
3492
+ # * `ALL_REGIONS_EXCEPT_SPECIFIED` - Indicates to aggregate findings
3493
+ # from all of the Regions where Security Hub is enabled, except for
3494
+ # the Regions listed in the `Regions` parameter. When you choose this
3495
+ # option, Security Hub also automatically aggregates findings from new
3496
+ # Regions as Security Hub supports them and you opt into them.
3497
+ #
3498
+ # * `SPECIFIED_REGIONS` - Indicates to aggregate findings only from the
3499
+ # Regions listed in the `Regions` parameter. Security Hub does not
3500
+ # automatically aggregate findings from new Regions.
3501
+ #
3502
+ # @option params [Array<String>] :regions
3503
+ # If `RegionLinkingMode` is `ALL_REGIONS_EXCEPT_SPECIFIED`, then this is
3504
+ # a comma-separated list of Regions that do not aggregate findings to
3505
+ # the aggregation Region.
3506
+ #
3507
+ # If `RegionLinkingMode` is `SPECIFIED_REGIONS`, then this is a
3508
+ # comma-separated list of Regions that do aggregate findings to the
3509
+ # aggregation Region.
3510
+ #
3511
+ # @return [Types::CreateFindingAggregatorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3512
+ #
3513
+ # * {Types::CreateFindingAggregatorResponse#finding_aggregator_arn #finding_aggregator_arn} => String
3514
+ # * {Types::CreateFindingAggregatorResponse#finding_aggregation_region #finding_aggregation_region} => String
3515
+ # * {Types::CreateFindingAggregatorResponse#region_linking_mode #region_linking_mode} => String
3516
+ # * {Types::CreateFindingAggregatorResponse#regions #regions} => Array&lt;String&gt;
3517
+ #
3518
+ # @example Request syntax with placeholder values
3519
+ #
3520
+ # resp = client.create_finding_aggregator({
3521
+ # region_linking_mode: "NonEmptyString", # required
3522
+ # regions: ["NonEmptyString"],
3523
+ # })
3524
+ #
3525
+ # @example Response structure
3526
+ #
3527
+ # resp.finding_aggregator_arn #=> String
3528
+ # resp.finding_aggregation_region #=> String
3529
+ # resp.region_linking_mode #=> String
3530
+ # resp.regions #=> Array
3531
+ # resp.regions[0] #=> String
3532
+ #
3533
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateFindingAggregator AWS API Documentation
3534
+ #
3535
+ # @overload create_finding_aggregator(params = {})
3536
+ # @param [Hash] params ({})
3537
+ def create_finding_aggregator(params = {}, options = {})
3538
+ req = build_request(:create_finding_aggregator, params)
3539
+ req.send_request(options)
3540
+ end
3541
+
3457
3542
  # Creates a custom insight in Security Hub. An insight is a
3458
3543
  # consolidation of findings that relate to a security issue that
3459
3544
  # requires attention or remediation.
@@ -4266,6 +4351,35 @@ module Aws::SecurityHub
4266
4351
  req.send_request(options)
4267
4352
  end
4268
4353
 
4354
+ # Deletes a finding aggregator. When you delete the finding aggregator,
4355
+ # you stop finding aggregation.
4356
+ #
4357
+ # When you stop finding aggregation, findings that were already
4358
+ # aggregated to the aggregation Region are still visible from the
4359
+ # aggregation Region. New findings and finding updates are not
4360
+ # aggregated.
4361
+ #
4362
+ # @option params [required, String] :finding_aggregator_arn
4363
+ # The ARN of the finding aggregator to delete. To obtain the ARN, use
4364
+ # `ListFindingAggregators`.
4365
+ #
4366
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4367
+ #
4368
+ # @example Request syntax with placeholder values
4369
+ #
4370
+ # resp = client.delete_finding_aggregator({
4371
+ # finding_aggregator_arn: "NonEmptyString", # required
4372
+ # })
4373
+ #
4374
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DeleteFindingAggregator AWS API Documentation
4375
+ #
4376
+ # @overload delete_finding_aggregator(params = {})
4377
+ # @param [Hash] params ({})
4378
+ def delete_finding_aggregator(params = {}, options = {})
4379
+ req = build_request(:delete_finding_aggregator, params)
4380
+ req.send_request(options)
4381
+ end
4382
+
4269
4383
  # Deletes the insight specified by the `InsightArn`.
4270
4384
  #
4271
4385
  # @option params [required, String] :insight_arn
@@ -4987,8 +5101,48 @@ module Aws::SecurityHub
4987
5101
  req.send_request(options)
4988
5102
  end
4989
5103
 
5104
+ # Returns the current finding aggregation configuration.
5105
+ #
5106
+ # @option params [required, String] :finding_aggregator_arn
5107
+ # The ARN of the finding aggregator to return details for. To obtain the
5108
+ # ARN, use `ListFindingAggregators`.
5109
+ #
5110
+ # @return [Types::GetFindingAggregatorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5111
+ #
5112
+ # * {Types::GetFindingAggregatorResponse#finding_aggregator_arn #finding_aggregator_arn} => String
5113
+ # * {Types::GetFindingAggregatorResponse#finding_aggregation_region #finding_aggregation_region} => String
5114
+ # * {Types::GetFindingAggregatorResponse#region_linking_mode #region_linking_mode} => String
5115
+ # * {Types::GetFindingAggregatorResponse#regions #regions} => Array&lt;String&gt;
5116
+ #
5117
+ # @example Request syntax with placeholder values
5118
+ #
5119
+ # resp = client.get_finding_aggregator({
5120
+ # finding_aggregator_arn: "NonEmptyString", # required
5121
+ # })
5122
+ #
5123
+ # @example Response structure
5124
+ #
5125
+ # resp.finding_aggregator_arn #=> String
5126
+ # resp.finding_aggregation_region #=> String
5127
+ # resp.region_linking_mode #=> String
5128
+ # resp.regions #=> Array
5129
+ # resp.regions[0] #=> String
5130
+ #
5131
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetFindingAggregator AWS API Documentation
5132
+ #
5133
+ # @overload get_finding_aggregator(params = {})
5134
+ # @param [Hash] params ({})
5135
+ def get_finding_aggregator(params = {}, options = {})
5136
+ req = build_request(:get_finding_aggregator, params)
5137
+ req.send_request(options)
5138
+ end
5139
+
4990
5140
  # Returns a list of findings that match the specified criteria.
4991
5141
  #
5142
+ # If finding aggregation is enabled, then when you call `GetFindings`
5143
+ # from the aggregation Region, the results include all of the matching
5144
+ # findings from both the aggregation Region and the linked Regions.
5145
+ #
4992
5146
  # @option params [Types::AwsSecurityFindingFilters] :filters
4993
5147
  # The finding attributes used to define a condition to filter the
4994
5148
  # returned findings.
@@ -8016,6 +8170,47 @@ module Aws::SecurityHub
8016
8170
  req.send_request(options)
8017
8171
  end
8018
8172
 
8173
+ # If finding aggregation is enabled, then `ListFindingAggregators`
8174
+ # returns the ARN of the finding aggregator. You can run this operation
8175
+ # from any Region.
8176
+ #
8177
+ # @option params [String] :next_token
8178
+ # The token returned with the previous set of results. Identifies the
8179
+ # next set of results to return.
8180
+ #
8181
+ # @option params [Integer] :max_results
8182
+ # The maximum number of results to return. This operation currently only
8183
+ # returns a single result.
8184
+ #
8185
+ # @return [Types::ListFindingAggregatorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8186
+ #
8187
+ # * {Types::ListFindingAggregatorsResponse#finding_aggregators #finding_aggregators} => Array&lt;Types::FindingAggregator&gt;
8188
+ # * {Types::ListFindingAggregatorsResponse#next_token #next_token} => String
8189
+ #
8190
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8191
+ #
8192
+ # @example Request syntax with placeholder values
8193
+ #
8194
+ # resp = client.list_finding_aggregators({
8195
+ # next_token: "NextToken",
8196
+ # max_results: 1,
8197
+ # })
8198
+ #
8199
+ # @example Response structure
8200
+ #
8201
+ # resp.finding_aggregators #=> Array
8202
+ # resp.finding_aggregators[0].finding_aggregator_arn #=> String
8203
+ # resp.next_token #=> String
8204
+ #
8205
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ListFindingAggregators AWS API Documentation
8206
+ #
8207
+ # @overload list_finding_aggregators(params = {})
8208
+ # @param [Hash] params ({})
8209
+ def list_finding_aggregators(params = {}, options = {})
8210
+ req = build_request(:list_finding_aggregators, params)
8211
+ req.send_request(options)
8212
+ end
8213
+
8019
8214
  # Lists all Security Hub membership invitations that were sent to the
8020
8215
  # current Amazon Web Services account.
8021
8216
  #
@@ -8292,6 +8487,84 @@ module Aws::SecurityHub
8292
8487
  req.send_request(options)
8293
8488
  end
8294
8489
 
8490
+ # Updates the finding aggregation configuration. Used to update the
8491
+ # Region linking mode and the list of included or excluded Regions. You
8492
+ # cannot use `UpdateFindingAggregator` to change the aggregation Region.
8493
+ #
8494
+ # You must run `UpdateFindingAggregator` from the current aggregation
8495
+ # Region.
8496
+ #
8497
+ # @option params [required, String] :finding_aggregator_arn
8498
+ # The ARN of the finding aggregator. To obtain the ARN, use
8499
+ # `ListFindingAggregators`.
8500
+ #
8501
+ # @option params [required, String] :region_linking_mode
8502
+ # Indicates whether to aggregate findings from all of the available
8503
+ # Regions in the current partition. Also determines whether to
8504
+ # automatically aggregate findings from new Regions as Security Hub
8505
+ # supports them and you opt into them.
8506
+ #
8507
+ # The selected option also determines how to use the Regions provided in
8508
+ # the Regions list.
8509
+ #
8510
+ # The options are as follows:
8511
+ #
8512
+ # * `ALL_REGIONS` - Indicates to aggregate findings from all of the
8513
+ # Regions where Security Hub is enabled. When you choose this option,
8514
+ # Security Hub also automatically aggregates findings from new Regions
8515
+ # as Security Hub supports them and you opt into them.
8516
+ #
8517
+ # * `ALL_REGIONS_EXCEPT_SPECIFIED` - Indicates to aggregate findings
8518
+ # from all of the Regions where Security Hub is enabled, except for
8519
+ # the Regions listed in the `Regions` parameter. When you choose this
8520
+ # option, Security Hub also automatically aggregates findings from new
8521
+ # Regions as Security Hub supports them and you opt into them.
8522
+ #
8523
+ # * `SPECIFIED_REGIONS` - Indicates to aggregate findings only from the
8524
+ # Regions listed in the `Regions` parameter. Security Hub does not
8525
+ # automatically aggregate findings from new Regions.
8526
+ #
8527
+ # @option params [Array<String>] :regions
8528
+ # If `RegionLinkingMode` is `ALL_REGIONS_EXCEPT_SPECIFIED`, then this is
8529
+ # a comma-separated list of Regions that do not aggregate findings to
8530
+ # the aggregation Region.
8531
+ #
8532
+ # If `RegionLinkingMode` is `SPECIFIED_REGIONS`, then this is a
8533
+ # comma-separated list of Regions that do aggregate findings to the
8534
+ # aggregation Region.
8535
+ #
8536
+ # @return [Types::UpdateFindingAggregatorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8537
+ #
8538
+ # * {Types::UpdateFindingAggregatorResponse#finding_aggregator_arn #finding_aggregator_arn} => String
8539
+ # * {Types::UpdateFindingAggregatorResponse#finding_aggregation_region #finding_aggregation_region} => String
8540
+ # * {Types::UpdateFindingAggregatorResponse#region_linking_mode #region_linking_mode} => String
8541
+ # * {Types::UpdateFindingAggregatorResponse#regions #regions} => Array&lt;String&gt;
8542
+ #
8543
+ # @example Request syntax with placeholder values
8544
+ #
8545
+ # resp = client.update_finding_aggregator({
8546
+ # finding_aggregator_arn: "NonEmptyString", # required
8547
+ # region_linking_mode: "NonEmptyString", # required
8548
+ # regions: ["NonEmptyString"],
8549
+ # })
8550
+ #
8551
+ # @example Response structure
8552
+ #
8553
+ # resp.finding_aggregator_arn #=> String
8554
+ # resp.finding_aggregation_region #=> String
8555
+ # resp.region_linking_mode #=> String
8556
+ # resp.regions #=> Array
8557
+ # resp.regions[0] #=> String
8558
+ #
8559
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateFindingAggregator AWS API Documentation
8560
+ #
8561
+ # @overload update_finding_aggregator(params = {})
8562
+ # @param [Hash] params ({})
8563
+ def update_finding_aggregator(params = {}, options = {})
8564
+ req = build_request(:update_finding_aggregator, params)
8565
+ req.send_request(options)
8566
+ end
8567
+
8295
8568
  # `UpdateFindings` is deprecated. Instead of `UpdateFindings`, use
8296
8569
  # `BatchUpdateFindings`.
8297
8570
  #
@@ -9700,7 +9973,7 @@ module Aws::SecurityHub
9700
9973
  params: params,
9701
9974
  config: config)
9702
9975
  context[:gem_name] = 'aws-sdk-securityhub'
9703
- context[:gem_version] = '1.53.0'
9976
+ context[:gem_version] = '1.57.0'
9704
9977
  Seahorse::Client::Request.new(handlers, context)
9705
9978
  end
9706
9979
 
@@ -472,6 +472,8 @@ module Aws::SecurityHub
472
472
  Country = Shapes::StructureShape.new(name: 'Country')
473
473
  CreateActionTargetRequest = Shapes::StructureShape.new(name: 'CreateActionTargetRequest')
474
474
  CreateActionTargetResponse = Shapes::StructureShape.new(name: 'CreateActionTargetResponse')
475
+ CreateFindingAggregatorRequest = Shapes::StructureShape.new(name: 'CreateFindingAggregatorRequest')
476
+ CreateFindingAggregatorResponse = Shapes::StructureShape.new(name: 'CreateFindingAggregatorResponse')
475
477
  CreateInsightRequest = Shapes::StructureShape.new(name: 'CreateInsightRequest')
476
478
  CreateInsightResponse = Shapes::StructureShape.new(name: 'CreateInsightResponse')
477
479
  CreateMembersRequest = Shapes::StructureShape.new(name: 'CreateMembersRequest')
@@ -491,6 +493,8 @@ module Aws::SecurityHub
491
493
  DeclineInvitationsResponse = Shapes::StructureShape.new(name: 'DeclineInvitationsResponse')
492
494
  DeleteActionTargetRequest = Shapes::StructureShape.new(name: 'DeleteActionTargetRequest')
493
495
  DeleteActionTargetResponse = Shapes::StructureShape.new(name: 'DeleteActionTargetResponse')
496
+ DeleteFindingAggregatorRequest = Shapes::StructureShape.new(name: 'DeleteFindingAggregatorRequest')
497
+ DeleteFindingAggregatorResponse = Shapes::StructureShape.new(name: 'DeleteFindingAggregatorResponse')
494
498
  DeleteInsightRequest = Shapes::StructureShape.new(name: 'DeleteInsightRequest')
495
499
  DeleteInsightResponse = Shapes::StructureShape.new(name: 'DeleteInsightResponse')
496
500
  DeleteInvitationsRequest = Shapes::StructureShape.new(name: 'DeleteInvitationsRequest')
@@ -530,6 +534,8 @@ module Aws::SecurityHub
530
534
  EnableSecurityHubRequest = Shapes::StructureShape.new(name: 'EnableSecurityHubRequest')
531
535
  EnableSecurityHubResponse = Shapes::StructureShape.new(name: 'EnableSecurityHubResponse')
532
536
  FieldMap = Shapes::MapShape.new(name: 'FieldMap')
537
+ FindingAggregator = Shapes::StructureShape.new(name: 'FindingAggregator')
538
+ FindingAggregatorList = Shapes::ListShape.new(name: 'FindingAggregatorList')
533
539
  FindingProviderFields = Shapes::StructureShape.new(name: 'FindingProviderFields')
534
540
  FindingProviderSeverity = Shapes::StructureShape.new(name: 'FindingProviderSeverity')
535
541
  GeoLocation = Shapes::StructureShape.new(name: 'GeoLocation')
@@ -537,6 +543,8 @@ module Aws::SecurityHub
537
543
  GetAdministratorAccountResponse = Shapes::StructureShape.new(name: 'GetAdministratorAccountResponse')
538
544
  GetEnabledStandardsRequest = Shapes::StructureShape.new(name: 'GetEnabledStandardsRequest')
539
545
  GetEnabledStandardsResponse = Shapes::StructureShape.new(name: 'GetEnabledStandardsResponse')
546
+ GetFindingAggregatorRequest = Shapes::StructureShape.new(name: 'GetFindingAggregatorRequest')
547
+ GetFindingAggregatorResponse = Shapes::StructureShape.new(name: 'GetFindingAggregatorResponse')
540
548
  GetFindingsRequest = Shapes::StructureShape.new(name: 'GetFindingsRequest')
541
549
  GetFindingsResponse = Shapes::StructureShape.new(name: 'GetFindingsResponse')
542
550
  GetInsightResultsRequest = Shapes::StructureShape.new(name: 'GetInsightResultsRequest')
@@ -578,6 +586,8 @@ module Aws::SecurityHub
578
586
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
579
587
  ListEnabledProductsForImportRequest = Shapes::StructureShape.new(name: 'ListEnabledProductsForImportRequest')
580
588
  ListEnabledProductsForImportResponse = Shapes::StructureShape.new(name: 'ListEnabledProductsForImportResponse')
589
+ ListFindingAggregatorsRequest = Shapes::StructureShape.new(name: 'ListFindingAggregatorsRequest')
590
+ ListFindingAggregatorsResponse = Shapes::StructureShape.new(name: 'ListFindingAggregatorsResponse')
581
591
  ListInvitationsRequest = Shapes::StructureShape.new(name: 'ListInvitationsRequest')
582
592
  ListInvitationsResponse = Shapes::StructureShape.new(name: 'ListInvitationsResponse')
583
593
  ListMembersRequest = Shapes::StructureShape.new(name: 'ListMembersRequest')
@@ -694,6 +704,8 @@ module Aws::SecurityHub
694
704
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
695
705
  UpdateActionTargetRequest = Shapes::StructureShape.new(name: 'UpdateActionTargetRequest')
696
706
  UpdateActionTargetResponse = Shapes::StructureShape.new(name: 'UpdateActionTargetResponse')
707
+ UpdateFindingAggregatorRequest = Shapes::StructureShape.new(name: 'UpdateFindingAggregatorRequest')
708
+ UpdateFindingAggregatorResponse = Shapes::StructureShape.new(name: 'UpdateFindingAggregatorResponse')
697
709
  UpdateFindingsRequest = Shapes::StructureShape.new(name: 'UpdateFindingsRequest')
698
710
  UpdateFindingsResponse = Shapes::StructureShape.new(name: 'UpdateFindingsResponse')
699
711
  UpdateInsightRequest = Shapes::StructureShape.new(name: 'UpdateInsightRequest')
@@ -3285,6 +3297,16 @@ module Aws::SecurityHub
3285
3297
  CreateActionTargetResponse.add_member(:action_target_arn, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "ActionTargetArn"))
3286
3298
  CreateActionTargetResponse.struct_class = Types::CreateActionTargetResponse
3287
3299
 
3300
+ CreateFindingAggregatorRequest.add_member(:region_linking_mode, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "RegionLinkingMode"))
3301
+ CreateFindingAggregatorRequest.add_member(:regions, Shapes::ShapeRef.new(shape: StringList, location_name: "Regions"))
3302
+ CreateFindingAggregatorRequest.struct_class = Types::CreateFindingAggregatorRequest
3303
+
3304
+ CreateFindingAggregatorResponse.add_member(:finding_aggregator_arn, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "FindingAggregatorArn"))
3305
+ CreateFindingAggregatorResponse.add_member(:finding_aggregation_region, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "FindingAggregationRegion"))
3306
+ CreateFindingAggregatorResponse.add_member(:region_linking_mode, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "RegionLinkingMode"))
3307
+ CreateFindingAggregatorResponse.add_member(:regions, Shapes::ShapeRef.new(shape: StringList, location_name: "Regions"))
3308
+ CreateFindingAggregatorResponse.struct_class = Types::CreateFindingAggregatorResponse
3309
+
3288
3310
  CreateInsightRequest.add_member(:name, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "Name"))
3289
3311
  CreateInsightRequest.add_member(:filters, Shapes::ShapeRef.new(shape: AwsSecurityFindingFilters, required: true, location_name: "Filters"))
3290
3312
  CreateInsightRequest.add_member(:group_by_attribute, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "GroupByAttribute"))
@@ -3347,6 +3369,11 @@ module Aws::SecurityHub
3347
3369
  DeleteActionTargetResponse.add_member(:action_target_arn, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "ActionTargetArn"))
3348
3370
  DeleteActionTargetResponse.struct_class = Types::DeleteActionTargetResponse
3349
3371
 
3372
+ DeleteFindingAggregatorRequest.add_member(:finding_aggregator_arn, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location: "uri", location_name: "FindingAggregatorArn"))
3373
+ DeleteFindingAggregatorRequest.struct_class = Types::DeleteFindingAggregatorRequest
3374
+
3375
+ DeleteFindingAggregatorResponse.struct_class = Types::DeleteFindingAggregatorResponse
3376
+
3350
3377
  DeleteInsightRequest.add_member(:insight_arn, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location: "uri", location_name: "InsightArn"))
3351
3378
  DeleteInsightRequest.struct_class = Types::DeleteInsightRequest
3352
3379
 
@@ -3466,6 +3493,11 @@ module Aws::SecurityHub
3466
3493
  FieldMap.key = Shapes::ShapeRef.new(shape: NonEmptyString)
3467
3494
  FieldMap.value = Shapes::ShapeRef.new(shape: NonEmptyString)
3468
3495
 
3496
+ FindingAggregator.add_member(:finding_aggregator_arn, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "FindingAggregatorArn"))
3497
+ FindingAggregator.struct_class = Types::FindingAggregator
3498
+
3499
+ FindingAggregatorList.member = Shapes::ShapeRef.new(shape: FindingAggregator)
3500
+
3469
3501
  FindingProviderFields.add_member(:confidence, Shapes::ShapeRef.new(shape: RatioScale, location_name: "Confidence"))
3470
3502
  FindingProviderFields.add_member(:criticality, Shapes::ShapeRef.new(shape: RatioScale, location_name: "Criticality"))
3471
3503
  FindingProviderFields.add_member(:related_findings, Shapes::ShapeRef.new(shape: RelatedFindingList, location_name: "RelatedFindings"))
@@ -3495,6 +3527,15 @@ module Aws::SecurityHub
3495
3527
  GetEnabledStandardsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
3496
3528
  GetEnabledStandardsResponse.struct_class = Types::GetEnabledStandardsResponse
3497
3529
 
3530
+ GetFindingAggregatorRequest.add_member(:finding_aggregator_arn, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location: "uri", location_name: "FindingAggregatorArn"))
3531
+ GetFindingAggregatorRequest.struct_class = Types::GetFindingAggregatorRequest
3532
+
3533
+ GetFindingAggregatorResponse.add_member(:finding_aggregator_arn, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "FindingAggregatorArn"))
3534
+ GetFindingAggregatorResponse.add_member(:finding_aggregation_region, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "FindingAggregationRegion"))
3535
+ GetFindingAggregatorResponse.add_member(:region_linking_mode, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "RegionLinkingMode"))
3536
+ GetFindingAggregatorResponse.add_member(:regions, Shapes::ShapeRef.new(shape: StringList, location_name: "Regions"))
3537
+ GetFindingAggregatorResponse.struct_class = Types::GetFindingAggregatorResponse
3538
+
3498
3539
  GetFindingsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: AwsSecurityFindingFilters, location_name: "Filters"))
3499
3540
  GetFindingsRequest.add_member(:sort_criteria, Shapes::ShapeRef.new(shape: SortCriteria, location_name: "SortCriteria"))
3500
3541
  GetFindingsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
@@ -3632,6 +3673,14 @@ module Aws::SecurityHub
3632
3673
  ListEnabledProductsForImportResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
3633
3674
  ListEnabledProductsForImportResponse.struct_class = Types::ListEnabledProductsForImportResponse
3634
3675
 
3676
+ ListFindingAggregatorsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "NextToken"))
3677
+ ListFindingAggregatorsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "MaxResults"))
3678
+ ListFindingAggregatorsRequest.struct_class = Types::ListFindingAggregatorsRequest
3679
+
3680
+ ListFindingAggregatorsResponse.add_member(:finding_aggregators, Shapes::ShapeRef.new(shape: FindingAggregatorList, location_name: "FindingAggregators"))
3681
+ ListFindingAggregatorsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
3682
+ ListFindingAggregatorsResponse.struct_class = Types::ListFindingAggregatorsResponse
3683
+
3635
3684
  ListInvitationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: CrossAccountMaxResults, location: "querystring", location_name: "MaxResults"))
3636
3685
  ListInvitationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "NextToken"))
3637
3686
  ListInvitationsRequest.struct_class = Types::ListInvitationsRequest
@@ -4071,6 +4120,17 @@ module Aws::SecurityHub
4071
4120
 
4072
4121
  UpdateActionTargetResponse.struct_class = Types::UpdateActionTargetResponse
4073
4122
 
4123
+ UpdateFindingAggregatorRequest.add_member(:finding_aggregator_arn, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "FindingAggregatorArn"))
4124
+ UpdateFindingAggregatorRequest.add_member(:region_linking_mode, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "RegionLinkingMode"))
4125
+ UpdateFindingAggregatorRequest.add_member(:regions, Shapes::ShapeRef.new(shape: StringList, location_name: "Regions"))
4126
+ UpdateFindingAggregatorRequest.struct_class = Types::UpdateFindingAggregatorRequest
4127
+
4128
+ UpdateFindingAggregatorResponse.add_member(:finding_aggregator_arn, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "FindingAggregatorArn"))
4129
+ UpdateFindingAggregatorResponse.add_member(:finding_aggregation_region, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "FindingAggregationRegion"))
4130
+ UpdateFindingAggregatorResponse.add_member(:region_linking_mode, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "RegionLinkingMode"))
4131
+ UpdateFindingAggregatorResponse.add_member(:regions, Shapes::ShapeRef.new(shape: StringList, location_name: "Regions"))
4132
+ UpdateFindingAggregatorResponse.struct_class = Types::UpdateFindingAggregatorResponse
4133
+
4074
4134
  UpdateFindingsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: AwsSecurityFindingFilters, required: true, location_name: "Filters"))
4075
4135
  UpdateFindingsRequest.add_member(:note, Shapes::ShapeRef.new(shape: NoteUpdate, location_name: "Note"))
4076
4136
  UpdateFindingsRequest.add_member(:record_state, Shapes::ShapeRef.new(shape: RecordState, location_name: "RecordState"))
@@ -4243,6 +4303,19 @@ module Aws::SecurityHub
4243
4303
  o.errors << Shapes::ShapeRef.new(shape: ResourceConflictException)
4244
4304
  end)
4245
4305
 
4306
+ api.add_operation(:create_finding_aggregator, Seahorse::Model::Operation.new.tap do |o|
4307
+ o.name = "CreateFindingAggregator"
4308
+ o.http_method = "POST"
4309
+ o.http_request_uri = "/findingAggregator/create"
4310
+ o.input = Shapes::ShapeRef.new(shape: CreateFindingAggregatorRequest)
4311
+ o.output = Shapes::ShapeRef.new(shape: CreateFindingAggregatorResponse)
4312
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
4313
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
4314
+ o.errors << Shapes::ShapeRef.new(shape: InvalidAccessException)
4315
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
4316
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
4317
+ end)
4318
+
4246
4319
  api.add_operation(:create_insight, Seahorse::Model::Operation.new.tap do |o|
4247
4320
  o.name = "CreateInsight"
4248
4321
  o.http_method = "POST"
@@ -4293,6 +4366,20 @@ module Aws::SecurityHub
4293
4366
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
4294
4367
  end)
4295
4368
 
4369
+ api.add_operation(:delete_finding_aggregator, Seahorse::Model::Operation.new.tap do |o|
4370
+ o.name = "DeleteFindingAggregator"
4371
+ o.http_method = "DELETE"
4372
+ o.http_request_uri = "/findingAggregator/delete/{FindingAggregatorArn+}"
4373
+ o.input = Shapes::ShapeRef.new(shape: DeleteFindingAggregatorRequest)
4374
+ o.output = Shapes::ShapeRef.new(shape: DeleteFindingAggregatorResponse)
4375
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
4376
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
4377
+ o.errors << Shapes::ShapeRef.new(shape: InvalidAccessException)
4378
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
4379
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
4380
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
4381
+ end)
4382
+
4296
4383
  api.add_operation(:delete_insight, Seahorse::Model::Operation.new.tap do |o|
4297
4384
  o.name = "DeleteInsight"
4298
4385
  o.http_method = "DELETE"
@@ -4574,6 +4661,20 @@ module Aws::SecurityHub
4574
4661
  )
4575
4662
  end)
4576
4663
 
4664
+ api.add_operation(:get_finding_aggregator, Seahorse::Model::Operation.new.tap do |o|
4665
+ o.name = "GetFindingAggregator"
4666
+ o.http_method = "GET"
4667
+ o.http_request_uri = "/findingAggregator/get/{FindingAggregatorArn+}"
4668
+ o.input = Shapes::ShapeRef.new(shape: GetFindingAggregatorRequest)
4669
+ o.output = Shapes::ShapeRef.new(shape: GetFindingAggregatorResponse)
4670
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
4671
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
4672
+ o.errors << Shapes::ShapeRef.new(shape: InvalidAccessException)
4673
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
4674
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
4675
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
4676
+ end)
4677
+
4577
4678
  api.add_operation(:get_findings, Seahorse::Model::Operation.new.tap do |o|
4578
4679
  o.name = "GetFindings"
4579
4680
  o.http_method = "POST"
@@ -4693,6 +4794,25 @@ module Aws::SecurityHub
4693
4794
  )
4694
4795
  end)
4695
4796
 
4797
+ api.add_operation(:list_finding_aggregators, Seahorse::Model::Operation.new.tap do |o|
4798
+ o.name = "ListFindingAggregators"
4799
+ o.http_method = "GET"
4800
+ o.http_request_uri = "/findingAggregator/list"
4801
+ o.input = Shapes::ShapeRef.new(shape: ListFindingAggregatorsRequest)
4802
+ o.output = Shapes::ShapeRef.new(shape: ListFindingAggregatorsResponse)
4803
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
4804
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
4805
+ o.errors << Shapes::ShapeRef.new(shape: InvalidAccessException)
4806
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
4807
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
4808
+ o[:pager] = Aws::Pager.new(
4809
+ limit_key: "max_results",
4810
+ tokens: {
4811
+ "next_token" => "next_token"
4812
+ }
4813
+ )
4814
+ end)
4815
+
4696
4816
  api.add_operation(:list_invitations, Seahorse::Model::Operation.new.tap do |o|
4697
4817
  o.name = "ListInvitations"
4698
4818
  o.http_method = "GET"
@@ -4793,6 +4913,20 @@ module Aws::SecurityHub
4793
4913
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
4794
4914
  end)
4795
4915
 
4916
+ api.add_operation(:update_finding_aggregator, Seahorse::Model::Operation.new.tap do |o|
4917
+ o.name = "UpdateFindingAggregator"
4918
+ o.http_method = "PATCH"
4919
+ o.http_request_uri = "/findingAggregator/update"
4920
+ o.input = Shapes::ShapeRef.new(shape: UpdateFindingAggregatorRequest)
4921
+ o.output = Shapes::ShapeRef.new(shape: UpdateFindingAggregatorResponse)
4922
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
4923
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
4924
+ o.errors << Shapes::ShapeRef.new(shape: InvalidAccessException)
4925
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
4926
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
4927
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
4928
+ end)
4929
+
4796
4930
  api.add_operation(:update_findings, Seahorse::Model::Operation.new.tap do |o|
4797
4931
  o.name = "UpdateFindings"
4798
4932
  o.http_method = "PATCH"
@@ -25203,6 +25203,90 @@ module Aws::SecurityHub
25203
25203
  include Aws::Structure
25204
25204
  end
25205
25205
 
25206
+ # @note When making an API call, you may pass CreateFindingAggregatorRequest
25207
+ # data as a hash:
25208
+ #
25209
+ # {
25210
+ # region_linking_mode: "NonEmptyString", # required
25211
+ # regions: ["NonEmptyString"],
25212
+ # }
25213
+ #
25214
+ # @!attribute [rw] region_linking_mode
25215
+ # Indicates whether to aggregate findings from all of the available
25216
+ # Regions in the current partition. Also determines whether to
25217
+ # automatically aggregate findings from new Regions as Security Hub
25218
+ # supports them and you opt into them.
25219
+ #
25220
+ # The selected option also determines how to use the Regions provided
25221
+ # in the Regions list.
25222
+ #
25223
+ # The options are as follows:
25224
+ #
25225
+ # * `ALL_REGIONS` - Indicates to aggregate findings from all of the
25226
+ # Regions where Security Hub is enabled. When you choose this
25227
+ # option, Security Hub also automatically aggregates findings from
25228
+ # new Regions as Security Hub supports them and you opt into them.
25229
+ #
25230
+ # * `ALL_REGIONS_EXCEPT_SPECIFIED` - Indicates to aggregate findings
25231
+ # from all of the Regions where Security Hub is enabled, except for
25232
+ # the Regions listed in the `Regions` parameter. When you choose
25233
+ # this option, Security Hub also automatically aggregates findings
25234
+ # from new Regions as Security Hub supports them and you opt into
25235
+ # them.
25236
+ #
25237
+ # * `SPECIFIED_REGIONS` - Indicates to aggregate findings only from
25238
+ # the Regions listed in the `Regions` parameter. Security Hub does
25239
+ # not automatically aggregate findings from new Regions.
25240
+ # @return [String]
25241
+ #
25242
+ # @!attribute [rw] regions
25243
+ # If `RegionLinkingMode` is `ALL_REGIONS_EXCEPT_SPECIFIED`, then this
25244
+ # is a comma-separated list of Regions that do not aggregate findings
25245
+ # to the aggregation Region.
25246
+ #
25247
+ # If `RegionLinkingMode` is `SPECIFIED_REGIONS`, then this is a
25248
+ # comma-separated list of Regions that do aggregate findings to the
25249
+ # aggregation Region.
25250
+ # @return [Array<String>]
25251
+ #
25252
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateFindingAggregatorRequest AWS API Documentation
25253
+ #
25254
+ class CreateFindingAggregatorRequest < Struct.new(
25255
+ :region_linking_mode,
25256
+ :regions)
25257
+ SENSITIVE = []
25258
+ include Aws::Structure
25259
+ end
25260
+
25261
+ # @!attribute [rw] finding_aggregator_arn
25262
+ # The ARN of the finding aggregator. You use the finding aggregator
25263
+ # ARN to retrieve details for, update, and stop finding aggregation.
25264
+ # @return [String]
25265
+ #
25266
+ # @!attribute [rw] finding_aggregation_region
25267
+ # The aggregation Region.
25268
+ # @return [String]
25269
+ #
25270
+ # @!attribute [rw] region_linking_mode
25271
+ # Indicates whether to link all Regions, all Regions except for a list
25272
+ # of excluded Regions, or a list of included Regions.
25273
+ # @return [String]
25274
+ #
25275
+ # @!attribute [rw] regions
25276
+ # The list of excluded Regions or included Regions.
25277
+ # @return [Array<String>]
25278
+ #
25279
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateFindingAggregatorResponse AWS API Documentation
25280
+ #
25281
+ class CreateFindingAggregatorResponse < Struct.new(
25282
+ :finding_aggregator_arn,
25283
+ :finding_aggregation_region,
25284
+ :region_linking_mode,
25285
+ :regions)
25286
+ SENSITIVE = []
25287
+ include Aws::Structure
25288
+ end
25289
+
25206
25290
  # @note When making an API call, you may pass CreateInsightRequest
25207
25291
  # data as a hash:
25208
25292
  #
@@ -26398,6 +26482,30 @@ module Aws::SecurityHub
26398
26482
  include Aws::Structure
26399
26483
  end
26400
26484
 
26485
+ # @note When making an API call, you may pass DeleteFindingAggregatorRequest
26486
+ # data as a hash:
26487
+ #
26488
+ # {
26489
+ # finding_aggregator_arn: "NonEmptyString", # required
26490
+ # }
26491
+ #
26492
+ # @!attribute [rw] finding_aggregator_arn
26493
+ # The ARN of the finding aggregator to delete. To obtain the ARN, use
26494
+ # `ListFindingAggregators`.
26495
+ # @return [String]
26496
+ #
26497
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DeleteFindingAggregatorRequest AWS API Documentation
26498
+ #
26499
+ class DeleteFindingAggregatorRequest < Struct.new(
26500
+ :finding_aggregator_arn)
26501
+ SENSITIVE = []
26502
+ include Aws::Structure
26503
+ end
26504
+
26505
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DeleteFindingAggregatorResponse AWS API Documentation
26506
+ #
26507
+ class DeleteFindingAggregatorResponse < Aws::EmptyStructure; end
26508
+
26401
26509
  # @note When making an API call, you may pass DeleteInsightRequest
26402
26510
  # data as a hash:
26403
26511
  #
@@ -27010,6 +27118,23 @@ module Aws::SecurityHub
27010
27118
  #
27011
27119
  class EnableSecurityHubResponse < Aws::EmptyStructure; end
27012
27120
 
27121
+ # A finding aggregator. A finding aggregator contains the configuration
27122
+ # for finding aggregation.
27123
+ #
27124
+ # @!attribute [rw] finding_aggregator_arn
27125
+ # The ARN of the finding aggregator. You use the finding aggregator
27126
+ # ARN to retrieve details for, update, and delete the finding
27127
+ # aggregator.
27128
+ # @return [String]
27129
+ #
27130
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/FindingAggregator AWS API Documentation
27131
+ #
27132
+ class FindingAggregator < Struct.new(
27133
+ :finding_aggregator_arn)
27134
+ SENSITIVE = []
27135
+ include Aws::Structure
27136
+ end
27137
+
27013
27138
  # In a `BatchImportFindings` request, finding providers use
27014
27139
  # `FindingProviderFields` to provide and update values for confidence,
27015
27140
  # criticality, related findings, severity, and types.
@@ -27208,6 +27333,54 @@ module Aws::SecurityHub
27208
27333
  include Aws::Structure
27209
27334
  end
27210
27335
 
27336
+ # @note When making an API call, you may pass GetFindingAggregatorRequest
27337
+ # data as a hash:
27338
+ #
27339
+ # {
27340
+ # finding_aggregator_arn: "NonEmptyString", # required
27341
+ # }
27342
+ #
27343
+ # @!attribute [rw] finding_aggregator_arn
27344
+ # The ARN of the finding aggregator to return details for. To obtain
27345
+ # the ARN, use `ListFindingAggregators`.
27346
+ # @return [String]
27347
+ #
27348
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetFindingAggregatorRequest AWS API Documentation
27349
+ #
27350
+ class GetFindingAggregatorRequest < Struct.new(
27351
+ :finding_aggregator_arn)
27352
+ SENSITIVE = []
27353
+ include Aws::Structure
27354
+ end
27355
+
27356
+ # @!attribute [rw] finding_aggregator_arn
27357
+ # The ARN of the finding aggregator.
27358
+ # @return [String]
27359
+ #
27360
+ # @!attribute [rw] finding_aggregation_region
27361
+ # The aggregation Region.
27362
+ # @return [String]
27363
+ #
27364
+ # @!attribute [rw] region_linking_mode
27365
+ # Indicates whether to link all Regions, all Regions except for a list
27366
+ # of excluded Regions, or a list of included Regions.
27367
+ # @return [String]
27368
+ #
27369
+ # @!attribute [rw] regions
27370
+ # The list of excluded Regions or included Regions.
27371
+ # @return [Array<String>]
27372
+ #
27373
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetFindingAggregatorResponse AWS API Documentation
27374
+ #
27375
+ class GetFindingAggregatorResponse < Struct.new(
27376
+ :finding_aggregator_arn,
27377
+ :finding_aggregation_region,
27378
+ :region_linking_mode,
27379
+ :regions)
27380
+ SENSITIVE = []
27381
+ include Aws::Structure
27382
+ end
27383
+
27211
27384
  # @note When making an API call, you may pass GetFindingsRequest
27212
27385
  # data as a hash:
27213
27386
  #
@@ -28500,6 +28673,54 @@ module Aws::SecurityHub
28500
28673
  include Aws::Structure
28501
28674
  end
28502
28675
 
28676
+ # @note When making an API call, you may pass ListFindingAggregatorsRequest
28677
+ # data as a hash:
28678
+ #
28679
+ # {
28680
+ # next_token: "NextToken",
28681
+ # max_results: 1,
28682
+ # }
28683
+ #
28684
+ # @!attribute [rw] next_token
28685
+ # The token returned with the previous set of results. Identifies the
28686
+ # next set of results to return.
28687
+ # @return [String]
28688
+ #
28689
+ # @!attribute [rw] max_results
28690
+ # The maximum number of results to return. This operation currently
28691
+ # only returns a single result.
28692
+ # @return [Integer]
28693
+ #
28694
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ListFindingAggregatorsRequest AWS API Documentation
28695
+ #
28696
+ class ListFindingAggregatorsRequest < Struct.new(
28697
+ :next_token,
28698
+ :max_results)
28699
+ SENSITIVE = []
28700
+ include Aws::Structure
28701
+ end
28702
+
28703
+ # @!attribute [rw] finding_aggregators
28704
+ # The list of finding aggregators. This operation currently only
28705
+ # returns a single result.
28706
+ # @return [Array<Types::FindingAggregator>]
28707
+ #
28708
+ # @!attribute [rw] next_token
28709
+ # If there are more results, this is the token to provide in the next
28710
+ # call to `ListFindingAggregators`.
28711
+ #
28712
+ # This operation currently only returns a single result.
28713
+ # @return [String]
28714
+ #
28715
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ListFindingAggregatorsResponse AWS API Documentation
28716
+ #
28717
+ class ListFindingAggregatorsResponse < Struct.new(
28718
+ :finding_aggregators,
28719
+ :next_token)
28720
+ SENSITIVE = []
28721
+ include Aws::Structure
28722
+ end
28723
+
28503
28724
  # @note When making an API call, you may pass ListInvitationsRequest
28504
28725
  # data as a hash:
28505
28726
  #
@@ -35903,6 +36124,96 @@ module Aws::SecurityHub
35903
36124
  #
35904
36125
  class UpdateActionTargetResponse < Aws::EmptyStructure; end
35905
36126
 
36127
+ # @note When making an API call, you may pass UpdateFindingAggregatorRequest
36128
+ # data as a hash:
36129
+ #
36130
+ # {
36131
+ # finding_aggregator_arn: "NonEmptyString", # required
36132
+ # region_linking_mode: "NonEmptyString", # required
36133
+ # regions: ["NonEmptyString"],
36134
+ # }
36135
+ #
36136
+ # @!attribute [rw] finding_aggregator_arn
36137
+ # The ARN of the finding aggregator. To obtain the ARN, use
36138
+ # `ListFindingAggregators`.
36139
+ # @return [String]
36140
+ #
36141
+ # @!attribute [rw] region_linking_mode
36142
+ # Indicates whether to aggregate findings from all of the available
36143
+ # Regions in the current partition. Also determines whether to
36144
+ # automatically aggregate findings from new Regions as Security Hub
36145
+ # supports them and you opt into them.
36146
+ #
36147
+ # The selected option also determines how to use the Regions provided
36148
+ # in the Regions list.
36149
+ #
36150
+ # The options are as follows:
36151
+ #
36152
+ # * `ALL_REGIONS` - Indicates to aggregate findings from all of the
36153
+ # Regions where Security Hub is enabled. When you choose this
36154
+ # option, Security Hub also automatically aggregates findings from
36155
+ # new Regions as Security Hub supports them and you opt into them.
36156
+ #
36157
+ # * `ALL_REGIONS_EXCEPT_SPECIFIED` - Indicates to aggregate findings
36158
+ # from all of the Regions where Security Hub is enabled, except for
36159
+ # the Regions listed in the `Regions` parameter. When you choose
36160
+ # this option, Security Hub also automatically aggregates findings
36161
+ # from new Regions as Security Hub supports them and you opt into
36162
+ # them.
36163
+ #
36164
+ # * `SPECIFIED_REGIONS` - Indicates to aggregate findings only from
36165
+ # the Regions listed in the `Regions` parameter. Security Hub does
36166
+ # not automatically aggregate findings from new Regions.
36167
+ # @return [String]
36168
+ #
36169
+ # @!attribute [rw] regions
36170
+ # If `RegionLinkingMode` is `ALL_REGIONS_EXCEPT_SPECIFIED`, then this
36171
+ # is a comma-separated list of Regions that do not aggregate findings
36172
+ # to the aggregation Region.
36173
+ #
36174
+ # If `RegionLinkingMode` is `SPECIFIED_REGIONS`, then this is a
36175
+ # comma-separated list of Regions that do aggregate findings to the
36176
+ # aggregation Region.
36177
+ # @return [Array<String>]
36178
+ #
36179
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateFindingAggregatorRequest AWS API Documentation
36180
+ #
36181
+ class UpdateFindingAggregatorRequest < Struct.new(
36182
+ :finding_aggregator_arn,
36183
+ :region_linking_mode,
36184
+ :regions)
36185
+ SENSITIVE = []
36186
+ include Aws::Structure
36187
+ end
36188
+
36189
+ # @!attribute [rw] finding_aggregator_arn
36190
+ # The ARN of the finding aggregator.
36191
+ # @return [String]
36192
+ #
36193
+ # @!attribute [rw] finding_aggregation_region
36194
+ # The aggregation Region.
36195
+ # @return [String]
36196
+ #
36197
+ # @!attribute [rw] region_linking_mode
36198
+ # Indicates whether to link all Regions, all Regions except for a list
36199
+ # of excluded Regions, or a list of included Regions.
36200
+ # @return [String]
36201
+ #
36202
+ # @!attribute [rw] regions
36203
+ # The list of excluded Regions or included Regions.
36204
+ # @return [Array<String>]
36205
+ #
36206
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateFindingAggregatorResponse AWS API Documentation
36207
+ #
36208
+ class UpdateFindingAggregatorResponse < Struct.new(
36209
+ :finding_aggregator_arn,
36210
+ :finding_aggregation_region,
36211
+ :region_linking_mode,
36212
+ :regions)
36213
+ SENSITIVE = []
36214
+ include Aws::Structure
36215
+ end
36216
+
35906
36217
  # @note When making an API call, you may pass UpdateFindingsRequest
35907
36218
  # data as a hash:
35908
36219
  #
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-securityhub/customizations'
48
48
  # @!group service
49
49
  module Aws::SecurityHub
50
50
 
51
- GEM_VERSION = '1.53.0'
51
+ GEM_VERSION = '1.57.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-securityhub
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.53.0
4
+ version: 1.57.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-10-08 00:00:00.000000000 Z
11
+ date: 2021-11-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.120.0
22
+ version: 3.122.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.120.0
32
+ version: 3.122.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement