aws-sdk-securityhub 1.54.0 → 1.58.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.
@@ -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.
@@ -441,6 +452,7 @@ module Aws::SecurityHub
441
452
  # resp.standards_subscriptions[0].standards_input #=> Hash
442
453
  # resp.standards_subscriptions[0].standards_input["NonEmptyString"] #=> String
443
454
  # resp.standards_subscriptions[0].standards_status #=> String, one of "PENDING", "READY", "FAILED", "DELETING", "INCOMPLETE"
455
+ # resp.standards_subscriptions[0].standards_status_reason.status_reason_code #=> String, one of "NO_AVAILABLE_CONFIGURATION_RECORDER", "INTERNAL_ERROR"
444
456
  #
445
457
  # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchDisableStandards AWS API Documentation
446
458
  #
@@ -489,6 +501,7 @@ module Aws::SecurityHub
489
501
  # resp.standards_subscriptions[0].standards_input #=> Hash
490
502
  # resp.standards_subscriptions[0].standards_input["NonEmptyString"] #=> String
491
503
  # resp.standards_subscriptions[0].standards_status #=> String, one of "PENDING", "READY", "FAILED", "DELETING", "INCOMPLETE"
504
+ # resp.standards_subscriptions[0].standards_status_reason.status_reason_code #=> String, one of "NO_AVAILABLE_CONFIGURATION_RECORDER", "INTERNAL_ERROR"
492
505
  #
493
506
  # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchEnableStandards AWS API Documentation
494
507
  #
@@ -499,10 +512,19 @@ module Aws::SecurityHub
499
512
  req.send_request(options)
500
513
  end
501
514
 
502
- # Imports security findings generated from an integrated product into
503
- # Security Hub. This action is requested by the integrated product to
515
+ # Imports security findings generated by a finding provider into
516
+ # Security Hub. This action is requested by the finding provider to
504
517
  # import its findings into Security Hub.
505
518
  #
519
+ # `BatchImportFindings` must be called by one of the following:
520
+ #
521
+ # * The account that is associated with the findings. The identifier of
522
+ # the associated account is the value of the `AwsAccountId` attribute
523
+ # for the finding.
524
+ #
525
+ # * An account that is allow-listed for an official Security Hub partner
526
+ # integration.
527
+ #
506
528
  # The maximum allowed size for a finding is 240 Kb. An error is returned
507
529
  # for any finding larger than 240 Kb.
508
530
  #
@@ -822,6 +844,34 @@ module Aws::SecurityHub
822
844
  # health_check_type: "NonEmptyString",
823
845
  # health_check_grace_period: 1,
824
846
  # created_time: "NonEmptyString",
847
+ # mixed_instances_policy: {
848
+ # instances_distribution: {
849
+ # on_demand_allocation_strategy: "NonEmptyString",
850
+ # on_demand_base_capacity: 1,
851
+ # on_demand_percentage_above_base_capacity: 1,
852
+ # spot_allocation_strategy: "NonEmptyString",
853
+ # spot_instance_pools: 1,
854
+ # spot_max_price: "NonEmptyString",
855
+ # },
856
+ # launch_template: {
857
+ # launch_template_specification: {
858
+ # launch_template_id: "NonEmptyString",
859
+ # launch_template_name: "NonEmptyString",
860
+ # version: "NonEmptyString",
861
+ # },
862
+ # overrides: [
863
+ # {
864
+ # instance_type: "NonEmptyString",
865
+ # weighted_capacity: "NonEmptyString",
866
+ # },
867
+ # ],
868
+ # },
869
+ # },
870
+ # availability_zones: [
871
+ # {
872
+ # value: "NonEmptyString",
873
+ # },
874
+ # ],
825
875
  # },
826
876
  # aws_code_build_project: {
827
877
  # encryption_key: "NonEmptyString",
@@ -1392,6 +1442,10 @@ module Aws::SecurityHub
1392
1442
  # },
1393
1443
  # ],
1394
1444
  # },
1445
+ # bucket_versioning_configuration: {
1446
+ # is_mfa_delete_enabled: false,
1447
+ # status: "NonEmptyString",
1448
+ # },
1395
1449
  # },
1396
1450
  # aws_s3_account_public_access_block: {
1397
1451
  # block_public_acls: false,
@@ -2806,6 +2860,11 @@ module Aws::SecurityHub
2806
2860
  # security_groups: ["NonEmptyString"],
2807
2861
  # spot_price: "NonEmptyString",
2808
2862
  # user_data: "NonEmptyString",
2863
+ # metadata_options: {
2864
+ # http_endpoint: "NonEmptyString",
2865
+ # http_put_response_hop_limit: 1,
2866
+ # http_tokens: "NonEmptyString",
2867
+ # },
2809
2868
  # },
2810
2869
  # aws_ec2_vpn_connection: {
2811
2870
  # vpn_connection_id: "NonEmptyString",
@@ -3015,6 +3074,157 @@ module Aws::SecurityHub
3015
3074
  # ],
3016
3075
  # },
3017
3076
  # },
3077
+ # aws_network_firewall_firewall_policy: {
3078
+ # firewall_policy: {
3079
+ # stateful_rule_group_references: [
3080
+ # {
3081
+ # resource_arn: "NonEmptyString",
3082
+ # },
3083
+ # ],
3084
+ # stateless_custom_actions: [
3085
+ # {
3086
+ # action_definition: {
3087
+ # publish_metric_action: {
3088
+ # dimensions: [
3089
+ # {
3090
+ # value: "NonEmptyString",
3091
+ # },
3092
+ # ],
3093
+ # },
3094
+ # },
3095
+ # action_name: "NonEmptyString",
3096
+ # },
3097
+ # ],
3098
+ # stateless_default_actions: ["NonEmptyString"],
3099
+ # stateless_fragment_default_actions: ["NonEmptyString"],
3100
+ # stateless_rule_group_references: [
3101
+ # {
3102
+ # priority: 1,
3103
+ # resource_arn: "NonEmptyString",
3104
+ # },
3105
+ # ],
3106
+ # },
3107
+ # firewall_policy_arn: "NonEmptyString",
3108
+ # firewall_policy_id: "NonEmptyString",
3109
+ # firewall_policy_name: "NonEmptyString",
3110
+ # description: "NonEmptyString",
3111
+ # },
3112
+ # aws_network_firewall_firewall: {
3113
+ # delete_protection: false,
3114
+ # description: "NonEmptyString",
3115
+ # firewall_arn: "NonEmptyString",
3116
+ # firewall_id: "NonEmptyString",
3117
+ # firewall_name: "NonEmptyString",
3118
+ # firewall_policy_arn: "NonEmptyString",
3119
+ # firewall_policy_change_protection: false,
3120
+ # subnet_change_protection: false,
3121
+ # subnet_mappings: [
3122
+ # {
3123
+ # subnet_id: "NonEmptyString",
3124
+ # },
3125
+ # ],
3126
+ # vpc_id: "NonEmptyString",
3127
+ # },
3128
+ # aws_network_firewall_rule_group: {
3129
+ # capacity: 1,
3130
+ # description: "NonEmptyString",
3131
+ # rule_group: {
3132
+ # rule_variables: {
3133
+ # ip_sets: {
3134
+ # definition: ["NonEmptyString"],
3135
+ # },
3136
+ # port_sets: {
3137
+ # definition: ["NonEmptyString"],
3138
+ # },
3139
+ # },
3140
+ # rules_source: {
3141
+ # rules_source_list: {
3142
+ # generated_rules_type: "NonEmptyString",
3143
+ # target_types: ["NonEmptyString"],
3144
+ # targets: ["NonEmptyString"],
3145
+ # },
3146
+ # rules_string: "NonEmptyString",
3147
+ # stateful_rules: [
3148
+ # {
3149
+ # action: "NonEmptyString",
3150
+ # header: {
3151
+ # destination: "NonEmptyString",
3152
+ # destination_port: "NonEmptyString",
3153
+ # direction: "NonEmptyString",
3154
+ # protocol: "NonEmptyString",
3155
+ # source: "NonEmptyString",
3156
+ # source_port: "NonEmptyString",
3157
+ # },
3158
+ # rule_options: [
3159
+ # {
3160
+ # keyword: "NonEmptyString",
3161
+ # settings: ["NonEmptyString"],
3162
+ # },
3163
+ # ],
3164
+ # },
3165
+ # ],
3166
+ # stateless_rules_and_custom_actions: {
3167
+ # custom_actions: [
3168
+ # {
3169
+ # action_definition: {
3170
+ # publish_metric_action: {
3171
+ # dimensions: [
3172
+ # {
3173
+ # value: "NonEmptyString",
3174
+ # },
3175
+ # ],
3176
+ # },
3177
+ # },
3178
+ # action_name: "NonEmptyString",
3179
+ # },
3180
+ # ],
3181
+ # stateless_rules: [
3182
+ # {
3183
+ # priority: 1,
3184
+ # rule_definition: {
3185
+ # actions: ["NonEmptyString"],
3186
+ # match_attributes: {
3187
+ # destination_ports: [
3188
+ # {
3189
+ # from_port: 1,
3190
+ # to_port: 1,
3191
+ # },
3192
+ # ],
3193
+ # destinations: [
3194
+ # {
3195
+ # address_definition: "NonEmptyString",
3196
+ # },
3197
+ # ],
3198
+ # protocols: [1],
3199
+ # source_ports: [
3200
+ # {
3201
+ # from_port: 1,
3202
+ # to_port: 1,
3203
+ # },
3204
+ # ],
3205
+ # sources: [
3206
+ # {
3207
+ # address_definition: "NonEmptyString",
3208
+ # },
3209
+ # ],
3210
+ # tcp_flags: [
3211
+ # {
3212
+ # flags: ["NonEmptyString"],
3213
+ # masks: ["NonEmptyString"],
3214
+ # },
3215
+ # ],
3216
+ # },
3217
+ # },
3218
+ # },
3219
+ # ],
3220
+ # },
3221
+ # },
3222
+ # },
3223
+ # rule_group_arn: "NonEmptyString",
3224
+ # rule_group_id: "NonEmptyString",
3225
+ # rule_group_name: "NonEmptyString",
3226
+ # type: "NonEmptyString",
3227
+ # },
3018
3228
  # },
3019
3229
  # },
3020
3230
  # ],
@@ -3454,6 +3664,80 @@ module Aws::SecurityHub
3454
3664
  req.send_request(options)
3455
3665
  end
3456
3666
 
3667
+ # Used to enable finding aggregation. Must be called from the
3668
+ # aggregation Region.
3669
+ #
3670
+ # For more details about cross-Region replication, see [Configuring
3671
+ # finding
3672
+ # aggregation](securityhub/latest/userguide/finding-aggregation.html) in
3673
+ # the *Security Hub User Guide*.
3674
+ #
3675
+ # @option params [required, String] :region_linking_mode
3676
+ # Indicates whether to aggregate findings from all of the available
3677
+ # Regions in the current partition. Also determines whether to
3678
+ # automatically aggregate findings from new Regions as Security Hub
3679
+ # supports them and you opt into them.
3680
+ #
3681
+ # The selected option also determines how to use the Regions provided in
3682
+ # the Regions list.
3683
+ #
3684
+ # The options are as follows:
3685
+ #
3686
+ # * `ALL_REGIONS` - Indicates to aggregate findings from all of the
3687
+ # Regions where Security Hub is enabled. When you choose this option,
3688
+ # Security Hub also automatically aggregates findings from new Regions
3689
+ # as Security Hub supports them and you opt into them.
3690
+ #
3691
+ # * `ALL_REGIONS_EXCEPT_SPECIFIED` - Indicates to aggregate findings
3692
+ # from all of the Regions where Security Hub is enabled, except for
3693
+ # the Regions listed in the `Regions` parameter. When you choose this
3694
+ # option, Security Hub also automatically aggregates findings from new
3695
+ # Regions as Security Hub supports them and you opt into them.
3696
+ #
3697
+ # * `SPECIFIED_REGIONS` - Indicates to aggregate findings only from the
3698
+ # Regions listed in the `Regions` parameter. Security Hub does not
3699
+ # automatically aggregate findings from new Regions.
3700
+ #
3701
+ # @option params [Array<String>] :regions
3702
+ # If `RegionLinkingMode` is `ALL_REGIONS_EXCEPT_SPECIFIED`, then this is
3703
+ # a comma-separated list of Regions that do not aggregate findings to
3704
+ # the aggregation Region.
3705
+ #
3706
+ # If `RegionLinkingMode` is `SPECIFIED_REGIONS`, then this is a
3707
+ # comma-separated list of Regions that do aggregate findings to the
3708
+ # aggregation Region.
3709
+ #
3710
+ # @return [Types::CreateFindingAggregatorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3711
+ #
3712
+ # * {Types::CreateFindingAggregatorResponse#finding_aggregator_arn #finding_aggregator_arn} => String
3713
+ # * {Types::CreateFindingAggregatorResponse#finding_aggregation_region #finding_aggregation_region} => String
3714
+ # * {Types::CreateFindingAggregatorResponse#region_linking_mode #region_linking_mode} => String
3715
+ # * {Types::CreateFindingAggregatorResponse#regions #regions} => Array&lt;String&gt;
3716
+ #
3717
+ # @example Request syntax with placeholder values
3718
+ #
3719
+ # resp = client.create_finding_aggregator({
3720
+ # region_linking_mode: "NonEmptyString", # required
3721
+ # regions: ["NonEmptyString"],
3722
+ # })
3723
+ #
3724
+ # @example Response structure
3725
+ #
3726
+ # resp.finding_aggregator_arn #=> String
3727
+ # resp.finding_aggregation_region #=> String
3728
+ # resp.region_linking_mode #=> String
3729
+ # resp.regions #=> Array
3730
+ # resp.regions[0] #=> String
3731
+ #
3732
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateFindingAggregator AWS API Documentation
3733
+ #
3734
+ # @overload create_finding_aggregator(params = {})
3735
+ # @param [Hash] params ({})
3736
+ def create_finding_aggregator(params = {}, options = {})
3737
+ req = build_request(:create_finding_aggregator, params)
3738
+ req.send_request(options)
3739
+ end
3740
+
3457
3741
  # Creates a custom insight in Security Hub. An insight is a
3458
3742
  # consolidation of findings that relate to a security issue that
3459
3743
  # requires attention or remediation.
@@ -4266,6 +4550,35 @@ module Aws::SecurityHub
4266
4550
  req.send_request(options)
4267
4551
  end
4268
4552
 
4553
+ # Deletes a finding aggregator. When you delete the finding aggregator,
4554
+ # you stop finding aggregation.
4555
+ #
4556
+ # When you stop finding aggregation, findings that were already
4557
+ # aggregated to the aggregation Region are still visible from the
4558
+ # aggregation Region. New findings and finding updates are not
4559
+ # aggregated.
4560
+ #
4561
+ # @option params [required, String] :finding_aggregator_arn
4562
+ # The ARN of the finding aggregator to delete. To obtain the ARN, use
4563
+ # `ListFindingAggregators`.
4564
+ #
4565
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4566
+ #
4567
+ # @example Request syntax with placeholder values
4568
+ #
4569
+ # resp = client.delete_finding_aggregator({
4570
+ # finding_aggregator_arn: "NonEmptyString", # required
4571
+ # })
4572
+ #
4573
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DeleteFindingAggregator AWS API Documentation
4574
+ #
4575
+ # @overload delete_finding_aggregator(params = {})
4576
+ # @param [Hash] params ({})
4577
+ def delete_finding_aggregator(params = {}, options = {})
4578
+ req = build_request(:delete_finding_aggregator, params)
4579
+ req.send_request(options)
4580
+ end
4581
+
4269
4582
  # Deletes the insight specified by the `InsightArn`.
4270
4583
  #
4271
4584
  # @option params [required, String] :insight_arn
@@ -4976,6 +5289,7 @@ module Aws::SecurityHub
4976
5289
  # resp.standards_subscriptions[0].standards_input #=> Hash
4977
5290
  # resp.standards_subscriptions[0].standards_input["NonEmptyString"] #=> String
4978
5291
  # resp.standards_subscriptions[0].standards_status #=> String, one of "PENDING", "READY", "FAILED", "DELETING", "INCOMPLETE"
5292
+ # resp.standards_subscriptions[0].standards_status_reason.status_reason_code #=> String, one of "NO_AVAILABLE_CONFIGURATION_RECORDER", "INTERNAL_ERROR"
4979
5293
  # resp.next_token #=> String
4980
5294
  #
4981
5295
  # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetEnabledStandards AWS API Documentation
@@ -4987,8 +5301,48 @@ module Aws::SecurityHub
4987
5301
  req.send_request(options)
4988
5302
  end
4989
5303
 
5304
+ # Returns the current finding aggregation configuration.
5305
+ #
5306
+ # @option params [required, String] :finding_aggregator_arn
5307
+ # The ARN of the finding aggregator to return details for. To obtain the
5308
+ # ARN, use `ListFindingAggregators`.
5309
+ #
5310
+ # @return [Types::GetFindingAggregatorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5311
+ #
5312
+ # * {Types::GetFindingAggregatorResponse#finding_aggregator_arn #finding_aggregator_arn} => String
5313
+ # * {Types::GetFindingAggregatorResponse#finding_aggregation_region #finding_aggregation_region} => String
5314
+ # * {Types::GetFindingAggregatorResponse#region_linking_mode #region_linking_mode} => String
5315
+ # * {Types::GetFindingAggregatorResponse#regions #regions} => Array&lt;String&gt;
5316
+ #
5317
+ # @example Request syntax with placeholder values
5318
+ #
5319
+ # resp = client.get_finding_aggregator({
5320
+ # finding_aggregator_arn: "NonEmptyString", # required
5321
+ # })
5322
+ #
5323
+ # @example Response structure
5324
+ #
5325
+ # resp.finding_aggregator_arn #=> String
5326
+ # resp.finding_aggregation_region #=> String
5327
+ # resp.region_linking_mode #=> String
5328
+ # resp.regions #=> Array
5329
+ # resp.regions[0] #=> String
5330
+ #
5331
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetFindingAggregator AWS API Documentation
5332
+ #
5333
+ # @overload get_finding_aggregator(params = {})
5334
+ # @param [Hash] params ({})
5335
+ def get_finding_aggregator(params = {}, options = {})
5336
+ req = build_request(:get_finding_aggregator, params)
5337
+ req.send_request(options)
5338
+ end
5339
+
4990
5340
  # Returns a list of findings that match the specified criteria.
4991
5341
  #
5342
+ # If finding aggregation is enabled, then when you call `GetFindings`
5343
+ # from the aggregation Region, the results include all of the matching
5344
+ # findings from both the aggregation Region and the linked Regions.
5345
+ #
4992
5346
  # @option params [Types::AwsSecurityFindingFilters] :filters
4993
5347
  # The finding attributes used to define a condition to filter the
4994
5348
  # returned findings.
@@ -5818,6 +6172,20 @@ module Aws::SecurityHub
5818
6172
  # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.health_check_type #=> String
5819
6173
  # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.health_check_grace_period #=> Integer
5820
6174
  # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.created_time #=> String
6175
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.mixed_instances_policy.instances_distribution.on_demand_allocation_strategy #=> String
6176
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.mixed_instances_policy.instances_distribution.on_demand_base_capacity #=> Integer
6177
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.mixed_instances_policy.instances_distribution.on_demand_percentage_above_base_capacity #=> Integer
6178
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.mixed_instances_policy.instances_distribution.spot_allocation_strategy #=> String
6179
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.mixed_instances_policy.instances_distribution.spot_instance_pools #=> Integer
6180
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.mixed_instances_policy.instances_distribution.spot_max_price #=> String
6181
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.mixed_instances_policy.launch_template.launch_template_specification.launch_template_id #=> String
6182
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.mixed_instances_policy.launch_template.launch_template_specification.launch_template_name #=> String
6183
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.mixed_instances_policy.launch_template.launch_template_specification.version #=> String
6184
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.mixed_instances_policy.launch_template.overrides #=> Array
6185
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.mixed_instances_policy.launch_template.overrides[0].instance_type #=> String
6186
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.mixed_instances_policy.launch_template.overrides[0].weighted_capacity #=> String
6187
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.availability_zones #=> Array
6188
+ # resp.findings[0].resources[0].details.aws_auto_scaling_auto_scaling_group.availability_zones[0].value #=> String
5821
6189
  # resp.findings[0].resources[0].details.aws_code_build_project.encryption_key #=> String
5822
6190
  # resp.findings[0].resources[0].details.aws_code_build_project.artifacts #=> Array
5823
6191
  # resp.findings[0].resources[0].details.aws_code_build_project.artifacts[0].artifact_identifier #=> String
@@ -6160,6 +6528,8 @@ module Aws::SecurityHub
6160
6528
  # resp.findings[0].resources[0].details.aws_s3_bucket.bucket_notification_configuration.configurations[0].filter.s3_key_filter.filter_rules[0].value #=> String
6161
6529
  # resp.findings[0].resources[0].details.aws_s3_bucket.bucket_notification_configuration.configurations[0].destination #=> String
6162
6530
  # resp.findings[0].resources[0].details.aws_s3_bucket.bucket_notification_configuration.configurations[0].type #=> String
6531
+ # resp.findings[0].resources[0].details.aws_s3_bucket.bucket_versioning_configuration.is_mfa_delete_enabled #=> Boolean
6532
+ # resp.findings[0].resources[0].details.aws_s3_bucket.bucket_versioning_configuration.status #=> String
6163
6533
  # resp.findings[0].resources[0].details.aws_s3_account_public_access_block.block_public_acls #=> Boolean
6164
6534
  # resp.findings[0].resources[0].details.aws_s3_account_public_access_block.block_public_policy #=> Boolean
6165
6535
  # resp.findings[0].resources[0].details.aws_s3_account_public_access_block.ignore_public_acls #=> Boolean
@@ -7149,6 +7519,9 @@ module Aws::SecurityHub
7149
7519
  # resp.findings[0].resources[0].details.aws_auto_scaling_launch_configuration.security_groups[0] #=> String
7150
7520
  # resp.findings[0].resources[0].details.aws_auto_scaling_launch_configuration.spot_price #=> String
7151
7521
  # resp.findings[0].resources[0].details.aws_auto_scaling_launch_configuration.user_data #=> String
7522
+ # resp.findings[0].resources[0].details.aws_auto_scaling_launch_configuration.metadata_options.http_endpoint #=> String
7523
+ # resp.findings[0].resources[0].details.aws_auto_scaling_launch_configuration.metadata_options.http_put_response_hop_limit #=> Integer
7524
+ # resp.findings[0].resources[0].details.aws_auto_scaling_launch_configuration.metadata_options.http_tokens #=> String
7152
7525
  # resp.findings[0].resources[0].details.aws_ec2_vpn_connection.vpn_connection_id #=> String
7153
7526
  # resp.findings[0].resources[0].details.aws_ec2_vpn_connection.state #=> String
7154
7527
  # resp.findings[0].resources[0].details.aws_ec2_vpn_connection.customer_gateway_id #=> String
@@ -7302,6 +7675,87 @@ module Aws::SecurityHub
7302
7675
  # resp.findings[0].resources[0].details.aws_eks_cluster.logging.cluster_logging[0].enabled #=> Boolean
7303
7676
  # resp.findings[0].resources[0].details.aws_eks_cluster.logging.cluster_logging[0].types #=> Array
7304
7677
  # resp.findings[0].resources[0].details.aws_eks_cluster.logging.cluster_logging[0].types[0] #=> String
7678
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy.stateful_rule_group_references #=> Array
7679
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy.stateful_rule_group_references[0].resource_arn #=> String
7680
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy.stateless_custom_actions #=> Array
7681
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy.stateless_custom_actions[0].action_definition.publish_metric_action.dimensions #=> Array
7682
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy.stateless_custom_actions[0].action_definition.publish_metric_action.dimensions[0].value #=> String
7683
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy.stateless_custom_actions[0].action_name #=> String
7684
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy.stateless_default_actions #=> Array
7685
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy.stateless_default_actions[0] #=> String
7686
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy.stateless_fragment_default_actions #=> Array
7687
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy.stateless_fragment_default_actions[0] #=> String
7688
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy.stateless_rule_group_references #=> Array
7689
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy.stateless_rule_group_references[0].priority #=> Integer
7690
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy.stateless_rule_group_references[0].resource_arn #=> String
7691
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy_arn #=> String
7692
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy_id #=> String
7693
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.firewall_policy_name #=> String
7694
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall_policy.description #=> String
7695
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall.delete_protection #=> Boolean
7696
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall.description #=> String
7697
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall.firewall_arn #=> String
7698
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall.firewall_id #=> String
7699
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall.firewall_name #=> String
7700
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall.firewall_policy_arn #=> String
7701
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall.firewall_policy_change_protection #=> Boolean
7702
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall.subnet_change_protection #=> Boolean
7703
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall.subnet_mappings #=> Array
7704
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall.subnet_mappings[0].subnet_id #=> String
7705
+ # resp.findings[0].resources[0].details.aws_network_firewall_firewall.vpc_id #=> String
7706
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.capacity #=> Integer
7707
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.description #=> String
7708
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rule_variables.ip_sets.definition #=> Array
7709
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rule_variables.ip_sets.definition[0] #=> String
7710
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rule_variables.port_sets.definition #=> Array
7711
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rule_variables.port_sets.definition[0] #=> String
7712
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.rules_source_list.generated_rules_type #=> String
7713
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.rules_source_list.target_types #=> Array
7714
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.rules_source_list.target_types[0] #=> String
7715
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.rules_source_list.targets #=> Array
7716
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.rules_source_list.targets[0] #=> String
7717
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.rules_string #=> String
7718
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateful_rules #=> Array
7719
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateful_rules[0].action #=> String
7720
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateful_rules[0].header.destination #=> String
7721
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateful_rules[0].header.destination_port #=> String
7722
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateful_rules[0].header.direction #=> String
7723
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateful_rules[0].header.protocol #=> String
7724
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateful_rules[0].header.source #=> String
7725
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateful_rules[0].header.source_port #=> String
7726
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateful_rules[0].rule_options #=> Array
7727
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateful_rules[0].rule_options[0].keyword #=> String
7728
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateful_rules[0].rule_options[0].settings #=> Array
7729
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateful_rules[0].rule_options[0].settings[0] #=> String
7730
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.custom_actions #=> Array
7731
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.custom_actions[0].action_definition.publish_metric_action.dimensions #=> Array
7732
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.custom_actions[0].action_definition.publish_metric_action.dimensions[0].value #=> String
7733
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.custom_actions[0].action_name #=> String
7734
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules #=> Array
7735
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].priority #=> Integer
7736
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.actions #=> Array
7737
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.actions[0] #=> String
7738
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.destination_ports #=> Array
7739
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.destination_ports[0].from_port #=> Integer
7740
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.destination_ports[0].to_port #=> Integer
7741
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.destinations #=> Array
7742
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.destinations[0].address_definition #=> String
7743
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.protocols #=> Array
7744
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.protocols[0] #=> Integer
7745
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.source_ports #=> Array
7746
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.source_ports[0].from_port #=> Integer
7747
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.source_ports[0].to_port #=> Integer
7748
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.sources #=> Array
7749
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.sources[0].address_definition #=> String
7750
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.tcp_flags #=> Array
7751
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.tcp_flags[0].flags #=> Array
7752
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.tcp_flags[0].flags[0] #=> String
7753
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.tcp_flags[0].masks #=> Array
7754
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group.rules_source.stateless_rules_and_custom_actions.stateless_rules[0].rule_definition.match_attributes.tcp_flags[0].masks[0] #=> String
7755
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group_arn #=> String
7756
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group_id #=> String
7757
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.rule_group_name #=> String
7758
+ # resp.findings[0].resources[0].details.aws_network_firewall_rule_group.type #=> String
7305
7759
  # resp.findings[0].compliance.status #=> String, one of "PASSED", "WARNING", "FAILED", "NOT_AVAILABLE"
7306
7760
  # resp.findings[0].compliance.related_requirements #=> Array
7307
7761
  # resp.findings[0].compliance.related_requirements[0] #=> String
@@ -8016,6 +8470,47 @@ module Aws::SecurityHub
8016
8470
  req.send_request(options)
8017
8471
  end
8018
8472
 
8473
+ # If finding aggregation is enabled, then `ListFindingAggregators`
8474
+ # returns the ARN of the finding aggregator. You can run this operation
8475
+ # from any Region.
8476
+ #
8477
+ # @option params [String] :next_token
8478
+ # The token returned with the previous set of results. Identifies the
8479
+ # next set of results to return.
8480
+ #
8481
+ # @option params [Integer] :max_results
8482
+ # The maximum number of results to return. This operation currently only
8483
+ # returns a single result.
8484
+ #
8485
+ # @return [Types::ListFindingAggregatorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8486
+ #
8487
+ # * {Types::ListFindingAggregatorsResponse#finding_aggregators #finding_aggregators} => Array&lt;Types::FindingAggregator&gt;
8488
+ # * {Types::ListFindingAggregatorsResponse#next_token #next_token} => String
8489
+ #
8490
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8491
+ #
8492
+ # @example Request syntax with placeholder values
8493
+ #
8494
+ # resp = client.list_finding_aggregators({
8495
+ # next_token: "NextToken",
8496
+ # max_results: 1,
8497
+ # })
8498
+ #
8499
+ # @example Response structure
8500
+ #
8501
+ # resp.finding_aggregators #=> Array
8502
+ # resp.finding_aggregators[0].finding_aggregator_arn #=> String
8503
+ # resp.next_token #=> String
8504
+ #
8505
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ListFindingAggregators AWS API Documentation
8506
+ #
8507
+ # @overload list_finding_aggregators(params = {})
8508
+ # @param [Hash] params ({})
8509
+ def list_finding_aggregators(params = {}, options = {})
8510
+ req = build_request(:list_finding_aggregators, params)
8511
+ req.send_request(options)
8512
+ end
8513
+
8019
8514
  # Lists all Security Hub membership invitations that were sent to the
8020
8515
  # current Amazon Web Services account.
8021
8516
  #
@@ -8292,6 +8787,84 @@ module Aws::SecurityHub
8292
8787
  req.send_request(options)
8293
8788
  end
8294
8789
 
8790
+ # Updates the finding aggregation configuration. Used to update the
8791
+ # Region linking mode and the list of included or excluded Regions. You
8792
+ # cannot use `UpdateFindingAggregator` to change the aggregation Region.
8793
+ #
8794
+ # You must run `UpdateFindingAggregator` from the current aggregation
8795
+ # Region.
8796
+ #
8797
+ # @option params [required, String] :finding_aggregator_arn
8798
+ # The ARN of the finding aggregator. To obtain the ARN, use
8799
+ # `ListFindingAggregators`.
8800
+ #
8801
+ # @option params [required, String] :region_linking_mode
8802
+ # Indicates whether to aggregate findings from all of the available
8803
+ # Regions in the current partition. Also determines whether to
8804
+ # automatically aggregate findings from new Regions as Security Hub
8805
+ # supports them and you opt into them.
8806
+ #
8807
+ # The selected option also determines how to use the Regions provided in
8808
+ # the Regions list.
8809
+ #
8810
+ # The options are as follows:
8811
+ #
8812
+ # * `ALL_REGIONS` - Indicates to aggregate findings from all of the
8813
+ # Regions where Security Hub is enabled. When you choose this option,
8814
+ # Security Hub also automatically aggregates findings from new Regions
8815
+ # as Security Hub supports them and you opt into them.
8816
+ #
8817
+ # * `ALL_REGIONS_EXCEPT_SPECIFIED` - Indicates to aggregate findings
8818
+ # from all of the Regions where Security Hub is enabled, except for
8819
+ # the Regions listed in the `Regions` parameter. When you choose this
8820
+ # option, Security Hub also automatically aggregates findings from new
8821
+ # Regions as Security Hub supports them and you opt into them.
8822
+ #
8823
+ # * `SPECIFIED_REGIONS` - Indicates to aggregate findings only from the
8824
+ # Regions listed in the `Regions` parameter. Security Hub does not
8825
+ # automatically aggregate findings from new Regions.
8826
+ #
8827
+ # @option params [Array<String>] :regions
8828
+ # If `RegionLinkingMode` is `ALL_REGIONS_EXCEPT_SPECIFIED`, then this is
8829
+ # a comma-separated list of Regions that do not aggregate findings to
8830
+ # the aggregation Region.
8831
+ #
8832
+ # If `RegionLinkingMode` is `SPECIFIED_REGIONS`, then this is a
8833
+ # comma-separated list of Regions that do aggregate findings to the
8834
+ # aggregation Region.
8835
+ #
8836
+ # @return [Types::UpdateFindingAggregatorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8837
+ #
8838
+ # * {Types::UpdateFindingAggregatorResponse#finding_aggregator_arn #finding_aggregator_arn} => String
8839
+ # * {Types::UpdateFindingAggregatorResponse#finding_aggregation_region #finding_aggregation_region} => String
8840
+ # * {Types::UpdateFindingAggregatorResponse#region_linking_mode #region_linking_mode} => String
8841
+ # * {Types::UpdateFindingAggregatorResponse#regions #regions} => Array&lt;String&gt;
8842
+ #
8843
+ # @example Request syntax with placeholder values
8844
+ #
8845
+ # resp = client.update_finding_aggregator({
8846
+ # finding_aggregator_arn: "NonEmptyString", # required
8847
+ # region_linking_mode: "NonEmptyString", # required
8848
+ # regions: ["NonEmptyString"],
8849
+ # })
8850
+ #
8851
+ # @example Response structure
8852
+ #
8853
+ # resp.finding_aggregator_arn #=> String
8854
+ # resp.finding_aggregation_region #=> String
8855
+ # resp.region_linking_mode #=> String
8856
+ # resp.regions #=> Array
8857
+ # resp.regions[0] #=> String
8858
+ #
8859
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateFindingAggregator AWS API Documentation
8860
+ #
8861
+ # @overload update_finding_aggregator(params = {})
8862
+ # @param [Hash] params ({})
8863
+ def update_finding_aggregator(params = {}, options = {})
8864
+ req = build_request(:update_finding_aggregator, params)
8865
+ req.send_request(options)
8866
+ end
8867
+
8295
8868
  # `UpdateFindings` is deprecated. Instead of `UpdateFindings`, use
8296
8869
  # `BatchUpdateFindings`.
8297
8870
  #
@@ -9700,7 +10273,7 @@ module Aws::SecurityHub
9700
10273
  params: params,
9701
10274
  config: config)
9702
10275
  context[:gem_name] = 'aws-sdk-securityhub'
9703
- context[:gem_version] = '1.54.0'
10276
+ context[:gem_version] = '1.58.0'
9704
10277
  Seahorse::Client::Request.new(handlers, context)
9705
10278
  end
9706
10279