aws-sdk-securityhub 1.53.0 → 1.57.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: 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