aws-sdk-inspector2 1.3.0 → 1.6.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: 48d46783fa66d3d1277c77f0c16d2b3b9d3998dbbc1c284959737479d70e5b49
4
- data.tar.gz: f857c9502fc74d9ae4d0578ea57bf63c3e4fc7604f25e3bb51d256ca02bcfe39
3
+ metadata.gz: 00400b1d34037d79d1d4be4f85988cdb68a62e9700002f107d87eea858ad3d87
4
+ data.tar.gz: 7d9b4d3ea45361c2b3d3c70c620c70b18ba3ba246564f944d705c50b729a5d12
5
5
  SHA512:
6
- metadata.gz: 28b4560696a054fd957a3bc96b8b354655603cd804f2a6dc472a318f4aa75f64f1d8f25f1b5abcdae7157f2e8318f0b569771dccd86bf19f0ab4011e7ea275d9
7
- data.tar.gz: 29d22e7a796b2e17dc14182ad6a0d97d7302b97eb24c7aa2bee34316e6076c8ea652bc3c33815a12962629f9c2a21e69010cea02a6694a55a1caeccc69151ae1
6
+ metadata.gz: 044b734f489b8a6bd2a238c433ea656650c94f78a3ce31460a16052cf51838317ef9986ae2795b4fd6b4e26bdd72161adb272ec903e0441c010b139514722103
7
+ data.tar.gz: cdc27c6ab5d5206fbd068a676bad976e0ef16a135cd216de7242af946b07b20c645d8175fe755afefe17c59f8b0975a08715ac1dce0bede2f79f2720adcb3abe
data/CHANGELOG.md CHANGED
@@ -1,6 +1,21 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.6.0 (2022-09-07)
5
+ ------------------
6
+
7
+ * Feature - This release adds new fields like fixAvailable, fixedInVersion and remediation to the finding model. The requirement to have vulnerablePackages in the finding model has also been removed. The documentation has been updated to reflect these changes.
8
+
9
+ 1.5.0 (2022-07-14)
10
+ ------------------
11
+
12
+ * Feature - This release adds support for Inspector V2 scan configurations through the get and update configuration APIs. Currently this allows configuring ECR automated re-scan duration to lifetime or 180 days or 30 days.
13
+
14
+ 1.4.0 (2022-02-24)
15
+ ------------------
16
+
17
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
18
+
4
19
  1.3.0 (2022-02-03)
5
20
  ------------------
6
21
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.3.0
1
+ 1.6.0
@@ -27,6 +27,7 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
30
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
31
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
32
33
  require 'aws-sdk-core/plugins/signature_v4.rb'
@@ -75,6 +76,7 @@ module Aws::Inspector2
75
76
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
76
77
  add_plugin(Aws::Plugins::TransferEncoding)
77
78
  add_plugin(Aws::Plugins::HttpChecksum)
79
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
78
80
  add_plugin(Aws::Plugins::DefaultsMode)
79
81
  add_plugin(Aws::Plugins::RecursionDetection)
80
82
  add_plugin(Aws::Plugins::SignatureV4)
@@ -401,18 +403,18 @@ module Aws::Inspector2
401
403
  #
402
404
  # resp.accounts #=> Array
403
405
  # resp.accounts[0].account_id #=> String
404
- # resp.accounts[0].resource_state.ec2.error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS"
406
+ # resp.accounts[0].resource_state.ec2.error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS", "ACCOUNT_IS_ISOLATED"
405
407
  # resp.accounts[0].resource_state.ec2.error_message #=> String
406
408
  # resp.accounts[0].resource_state.ec2.status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
407
- # resp.accounts[0].resource_state.ecr.error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS"
409
+ # resp.accounts[0].resource_state.ecr.error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS", "ACCOUNT_IS_ISOLATED"
408
410
  # resp.accounts[0].resource_state.ecr.error_message #=> String
409
411
  # resp.accounts[0].resource_state.ecr.status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
410
- # resp.accounts[0].state.error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS"
412
+ # resp.accounts[0].state.error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS", "ACCOUNT_IS_ISOLATED"
411
413
  # resp.accounts[0].state.error_message #=> String
412
414
  # resp.accounts[0].state.status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
413
415
  # resp.failed_accounts #=> Array
414
416
  # resp.failed_accounts[0].account_id #=> String
415
- # resp.failed_accounts[0].error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS"
417
+ # resp.failed_accounts[0].error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS", "ACCOUNT_IS_ISOLATED"
416
418
  # resp.failed_accounts[0].error_message #=> String
417
419
  # resp.failed_accounts[0].resource_status.ec2 #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
418
420
  # resp.failed_accounts[0].resource_status.ecr #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
@@ -511,6 +513,9 @@ module Aws::Inspector2
511
513
  # Valid characters include alphanumeric characters, dot (.), underscore
512
514
  # (\_), and dash (-). Spaces are not allowed.
513
515
  #
516
+ # @option params [String] :reason
517
+ # The reason for creating the filter.
518
+ #
514
519
  # @option params [Hash<String,String>] :tags
515
520
  # A list of tags for the filter.
516
521
  #
@@ -620,6 +625,12 @@ module Aws::Inspector2
620
625
  # start_inclusive: Time.now,
621
626
  # },
622
627
  # ],
628
+ # fix_available: [
629
+ # {
630
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
631
+ # value: "StringInput", # required
632
+ # },
633
+ # ],
623
634
  # inspector_score: [
624
635
  # {
625
636
  # lower_inclusive: 1.0,
@@ -735,6 +746,7 @@ module Aws::Inspector2
735
746
  # ],
736
747
  # },
737
748
  # name: "FilterName", # required
749
+ # reason: "FilterReason",
738
750
  # tags: {
739
751
  # "MapKey" => "MapValue",
740
752
  # },
@@ -868,6 +880,12 @@ module Aws::Inspector2
868
880
  # start_inclusive: Time.now,
869
881
  # },
870
882
  # ],
883
+ # fix_available: [
884
+ # {
885
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
886
+ # value: "StringInput", # required
887
+ # },
888
+ # ],
871
889
  # inspector_score: [
872
890
  # {
873
891
  # lower_inclusive: 1.0,
@@ -1086,7 +1104,7 @@ module Aws::Inspector2
1086
1104
  # resp.accounts[0].status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
1087
1105
  # resp.failed_accounts #=> Array
1088
1106
  # resp.failed_accounts[0].account_id #=> String
1089
- # resp.failed_accounts[0].error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS"
1107
+ # resp.failed_accounts[0].error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS", "ACCOUNT_IS_ISOLATED"
1090
1108
  # resp.failed_accounts[0].error_message #=> String
1091
1109
  # resp.failed_accounts[0].resource_status.ec2 #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
1092
1110
  # resp.failed_accounts[0].resource_status.ecr #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
@@ -1198,7 +1216,7 @@ module Aws::Inspector2
1198
1216
  # resp.accounts[0].status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
1199
1217
  # resp.failed_accounts #=> Array
1200
1218
  # resp.failed_accounts[0].account_id #=> String
1201
- # resp.failed_accounts[0].error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS"
1219
+ # resp.failed_accounts[0].error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS", "ACCOUNT_IS_ISOLATED"
1202
1220
  # resp.failed_accounts[0].error_message #=> String
1203
1221
  # resp.failed_accounts[0].resource_status.ec2 #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
1204
1222
  # resp.failed_accounts[0].resource_status.ecr #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
@@ -1250,6 +1268,27 @@ module Aws::Inspector2
1250
1268
  req.send_request(options)
1251
1269
  end
1252
1270
 
1271
+ # Retrieves setting configurations for Inspector scans.
1272
+ #
1273
+ # @return [Types::GetConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1274
+ #
1275
+ # * {Types::GetConfigurationResponse#ecr_configuration #ecr_configuration} => Types::EcrConfigurationState
1276
+ #
1277
+ # @example Response structure
1278
+ #
1279
+ # resp.ecr_configuration.rescan_duration_state.rescan_duration #=> String, one of "LIFETIME", "DAYS_30", "DAYS_180"
1280
+ # resp.ecr_configuration.rescan_duration_state.status #=> String, one of "SUCCESS", "PENDING", "FAILED"
1281
+ # resp.ecr_configuration.rescan_duration_state.updated_at #=> Time
1282
+ #
1283
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/GetConfiguration AWS API Documentation
1284
+ #
1285
+ # @overload get_configuration(params = {})
1286
+ # @param [Hash] params ({})
1287
+ def get_configuration(params = {}, options = {})
1288
+ req = build_request(:get_configuration, params)
1289
+ req.send_request(options)
1290
+ end
1291
+
1253
1292
  # Retrieves information about the Amazon Inspector delegated
1254
1293
  # administrator for your organization.
1255
1294
  #
@@ -1296,7 +1335,7 @@ module Aws::Inspector2
1296
1335
  # resp.destination.bucket_name #=> String
1297
1336
  # resp.destination.key_prefix #=> String
1298
1337
  # resp.destination.kms_key_arn #=> String
1299
- # resp.error_code #=> String, one of "INTERNAL_ERROR", "INVALID_PERMISSIONS"
1338
+ # resp.error_code #=> String, one of "INTERNAL_ERROR", "INVALID_PERMISSIONS", "NO_FINDINGS_FOUND", "BUCKET_NOT_FOUND", "INCOMPATIBLE_BUCKET_REGION", "MALFORMED_KMS_KEY"
1300
1339
  # resp.error_message #=> String
1301
1340
  # resp.filter_criteria.aws_account_id #=> Array
1302
1341
  # resp.filter_criteria.aws_account_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
@@ -1346,6 +1385,9 @@ module Aws::Inspector2
1346
1385
  # resp.filter_criteria.first_observed_at #=> Array
1347
1386
  # resp.filter_criteria.first_observed_at[0].end_inclusive #=> Time
1348
1387
  # resp.filter_criteria.first_observed_at[0].start_inclusive #=> Time
1388
+ # resp.filter_criteria.fix_available #=> Array
1389
+ # resp.filter_criteria.fix_available[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
1390
+ # resp.filter_criteria.fix_available[0].value #=> String
1349
1391
  # resp.filter_criteria.inspector_score #=> Array
1350
1392
  # resp.filter_criteria.inspector_score[0].lower_inclusive #=> Float
1351
1393
  # resp.filter_criteria.inspector_score[0].upper_inclusive #=> Float
@@ -1593,7 +1635,7 @@ module Aws::Inspector2
1593
1635
  # resp.covered_resources[0].resource_metadata.ecr_repository.name #=> String
1594
1636
  # resp.covered_resources[0].resource_metadata.ecr_repository.scan_frequency #=> String, one of "MANUAL", "SCAN_ON_PUSH", "CONTINUOUS_SCAN"
1595
1637
  # resp.covered_resources[0].resource_type #=> String, one of "AWS_EC2_INSTANCE", "AWS_ECR_CONTAINER_IMAGE", "AWS_ECR_REPOSITORY"
1596
- # resp.covered_resources[0].scan_status.reason #=> String, one of "PENDING_INITIAL_SCAN", "ACCESS_DENIED", "INTERNAL_ERROR", "UNMANAGED_EC2_INSTANCE", "UNSUPPORTED_OS", "SCAN_ELIGIBILITY_EXPIRED", "RESOURCE_TERMINATED", "SUCCESSFUL", "NO_RESOURCES_FOUND", "IMAGE_SIZE_EXCEEDED", "SCAN_FREQUENCY_MANUAL", "SCAN_FREQUENCY_SCAN_ON_PUSH", "EC2_INSTANCE_STOPPED"
1638
+ # resp.covered_resources[0].scan_status.reason #=> String, one of "PENDING_INITIAL_SCAN", "ACCESS_DENIED", "INTERNAL_ERROR", "UNMANAGED_EC2_INSTANCE", "UNSUPPORTED_OS", "SCAN_ELIGIBILITY_EXPIRED", "RESOURCE_TERMINATED", "SUCCESSFUL", "NO_RESOURCES_FOUND", "IMAGE_SIZE_EXCEEDED", "SCAN_FREQUENCY_MANUAL", "SCAN_FREQUENCY_SCAN_ON_PUSH", "EC2_INSTANCE_STOPPED", "PENDING_DISABLE", "NO_INVENTORY", "STALE_INVENTORY"
1597
1639
  # resp.covered_resources[0].scan_status.status_code #=> String, one of "ACTIVE", "INACTIVE"
1598
1640
  # resp.covered_resources[0].scan_type #=> String, one of "NETWORK", "PACKAGE"
1599
1641
  # resp.next_token #=> String
@@ -1843,6 +1885,9 @@ module Aws::Inspector2
1843
1885
  # resp.filters[0].criteria.first_observed_at #=> Array
1844
1886
  # resp.filters[0].criteria.first_observed_at[0].end_inclusive #=> Time
1845
1887
  # resp.filters[0].criteria.first_observed_at[0].start_inclusive #=> Time
1888
+ # resp.filters[0].criteria.fix_available #=> Array
1889
+ # resp.filters[0].criteria.fix_available[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
1890
+ # resp.filters[0].criteria.fix_available[0].value #=> String
1846
1891
  # resp.filters[0].criteria.inspector_score #=> Array
1847
1892
  # resp.filters[0].criteria.inspector_score[0].lower_inclusive #=> Float
1848
1893
  # resp.filters[0].criteria.inspector_score[0].upper_inclusive #=> Float
@@ -2316,6 +2361,12 @@ module Aws::Inspector2
2316
2361
  # start_inclusive: Time.now,
2317
2362
  # },
2318
2363
  # ],
2364
+ # fix_available: [
2365
+ # {
2366
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2367
+ # value: "StringInput", # required
2368
+ # },
2369
+ # ],
2319
2370
  # inspector_score: [
2320
2371
  # {
2321
2372
  # lower_inclusive: 1.0,
@@ -2445,6 +2496,7 @@ module Aws::Inspector2
2445
2496
  # resp.findings[0].description #=> String
2446
2497
  # resp.findings[0].finding_arn #=> String
2447
2498
  # resp.findings[0].first_observed_at #=> Time
2499
+ # resp.findings[0].fix_available #=> String, one of "YES", "NO", "PARTIAL"
2448
2500
  # resp.findings[0].inspector_score #=> Float
2449
2501
  # resp.findings[0].inspector_score_details.adjusted_cvss.adjustments #=> Array
2450
2502
  # resp.findings[0].inspector_score_details.adjusted_cvss.adjustments[0].metric #=> String
@@ -2482,8 +2534,9 @@ module Aws::Inspector2
2482
2534
  # resp.findings[0].package_vulnerability_details.vulnerable_packages[0].file_path #=> String
2483
2535
  # resp.findings[0].package_vulnerability_details.vulnerable_packages[0].fixed_in_version #=> String
2484
2536
  # resp.findings[0].package_vulnerability_details.vulnerable_packages[0].name #=> String
2485
- # resp.findings[0].package_vulnerability_details.vulnerable_packages[0].package_manager #=> String, one of "BUNDLER", "CARGO", "COMPOSER", "NPM", "NUGET", "PIPENV", "POETRY", "YARN", "GOBINARY", "GOMOD", "JAR", "OS"
2537
+ # resp.findings[0].package_vulnerability_details.vulnerable_packages[0].package_manager #=> String, one of "BUNDLER", "CARGO", "COMPOSER", "NPM", "NUGET", "PIPENV", "POETRY", "YARN", "GOBINARY", "GOMOD", "JAR", "OS", "PIP", "PYTHONPKG", "NODEPKG", "POM"
2486
2538
  # resp.findings[0].package_vulnerability_details.vulnerable_packages[0].release #=> String
2539
+ # resp.findings[0].package_vulnerability_details.vulnerable_packages[0].remediation #=> String
2487
2540
  # resp.findings[0].package_vulnerability_details.vulnerable_packages[0].source_layer_hash #=> String
2488
2541
  # resp.findings[0].package_vulnerability_details.vulnerable_packages[0].version #=> String
2489
2542
  # resp.findings[0].remediation.recommendation.url #=> String
@@ -2715,6 +2768,34 @@ module Aws::Inspector2
2715
2768
  req.send_request(options)
2716
2769
  end
2717
2770
 
2771
+ # Updates setting configurations for your Amazon Inspector account. When
2772
+ # you use this API as an Amazon Inspector delegated administrator this
2773
+ # updates the setting for all accounts you manage. Member accounts in an
2774
+ # organization cannot update this setting.
2775
+ #
2776
+ # @option params [required, Types::EcrConfiguration] :ecr_configuration
2777
+ # Specifies how the ECR automated re-scan will be updated for your
2778
+ # environment.
2779
+ #
2780
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2781
+ #
2782
+ # @example Request syntax with placeholder values
2783
+ #
2784
+ # resp = client.update_configuration({
2785
+ # ecr_configuration: { # required
2786
+ # rescan_duration: "LIFETIME", # required, accepts LIFETIME, DAYS_30, DAYS_180
2787
+ # },
2788
+ # })
2789
+ #
2790
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UpdateConfiguration AWS API Documentation
2791
+ #
2792
+ # @overload update_configuration(params = {})
2793
+ # @param [Hash] params ({})
2794
+ def update_configuration(params = {}, options = {})
2795
+ req = build_request(:update_configuration, params)
2796
+ req.send_request(options)
2797
+ end
2798
+
2718
2799
  # Specifies the action that is to be applied to the findings that match
2719
2800
  # the filter.
2720
2801
  #
@@ -2734,6 +2815,9 @@ module Aws::Inspector2
2734
2815
  # @option params [String] :name
2735
2816
  # The name of the filter.
2736
2817
  #
2818
+ # @option params [String] :reason
2819
+ # The reason the filter was updated.
2820
+ #
2737
2821
  # @return [Types::UpdateFilterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2738
2822
  #
2739
2823
  # * {Types::UpdateFilterResponse#arn #arn} => String
@@ -2841,6 +2925,12 @@ module Aws::Inspector2
2841
2925
  # start_inclusive: Time.now,
2842
2926
  # },
2843
2927
  # ],
2928
+ # fix_available: [
2929
+ # {
2930
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2931
+ # value: "StringInput", # required
2932
+ # },
2933
+ # ],
2844
2934
  # inspector_score: [
2845
2935
  # {
2846
2936
  # lower_inclusive: 1.0,
@@ -2956,6 +3046,7 @@ module Aws::Inspector2
2956
3046
  # ],
2957
3047
  # },
2958
3048
  # name: "FilterName",
3049
+ # reason: "FilterReason",
2959
3050
  # })
2960
3051
  #
2961
3052
  # @example Response structure
@@ -3017,7 +3108,7 @@ module Aws::Inspector2
3017
3108
  params: params,
3018
3109
  config: config)
3019
3110
  context[:gem_name] = 'aws-sdk-inspector2'
3020
- context[:gem_version] = '1.3.0'
3111
+ context[:gem_version] = '1.6.0'
3021
3112
  Seahorse::Client::Request.new(handlers, context)
3022
3113
  end
3023
3114
 
@@ -104,8 +104,13 @@ module Aws::Inspector2
104
104
  Ec2InstanceSortBy = Shapes::StringShape.new(name: 'Ec2InstanceSortBy')
105
105
  Ec2Metadata = Shapes::StructureShape.new(name: 'Ec2Metadata')
106
106
  Ec2Platform = Shapes::StringShape.new(name: 'Ec2Platform')
107
+ EcrConfiguration = Shapes::StructureShape.new(name: 'EcrConfiguration')
108
+ EcrConfigurationState = Shapes::StructureShape.new(name: 'EcrConfigurationState')
107
109
  EcrContainerImageMetadata = Shapes::StructureShape.new(name: 'EcrContainerImageMetadata')
108
110
  EcrRepositoryMetadata = Shapes::StructureShape.new(name: 'EcrRepositoryMetadata')
111
+ EcrRescanDuration = Shapes::StringShape.new(name: 'EcrRescanDuration')
112
+ EcrRescanDurationState = Shapes::StructureShape.new(name: 'EcrRescanDurationState')
113
+ EcrRescanDurationStatus = Shapes::StringShape.new(name: 'EcrRescanDurationStatus')
109
114
  EcrScanFrequency = Shapes::StringShape.new(name: 'EcrScanFrequency')
110
115
  EnableDelegatedAdminAccountRequest = Shapes::StructureShape.new(name: 'EnableDelegatedAdminAccountRequest')
111
116
  EnableDelegatedAdminAccountResponse = Shapes::StructureShape.new(name: 'EnableDelegatedAdminAccountResponse')
@@ -137,6 +142,7 @@ module Aws::Inspector2
137
142
  FindingTypeAggregation = Shapes::StructureShape.new(name: 'FindingTypeAggregation')
138
143
  FindingTypeAggregationResponse = Shapes::StructureShape.new(name: 'FindingTypeAggregationResponse')
139
144
  FindingTypeSortBy = Shapes::StringShape.new(name: 'FindingTypeSortBy')
145
+ FixAvailable = Shapes::StringShape.new(name: 'FixAvailable')
140
146
  FreeTrialAccountInfo = Shapes::StructureShape.new(name: 'FreeTrialAccountInfo')
141
147
  FreeTrialAccountInfoList = Shapes::ListShape.new(name: 'FreeTrialAccountInfoList')
142
148
  FreeTrialInfo = Shapes::StructureShape.new(name: 'FreeTrialInfo')
@@ -146,6 +152,8 @@ module Aws::Inspector2
146
152
  FreeTrialInfoList = Shapes::ListShape.new(name: 'FreeTrialInfoList')
147
153
  FreeTrialStatus = Shapes::StringShape.new(name: 'FreeTrialStatus')
148
154
  FreeTrialType = Shapes::StringShape.new(name: 'FreeTrialType')
155
+ GetConfigurationRequest = Shapes::StructureShape.new(name: 'GetConfigurationRequest')
156
+ GetConfigurationResponse = Shapes::StructureShape.new(name: 'GetConfigurationResponse')
149
157
  GetDelegatedAdminAccountRequest = Shapes::StructureShape.new(name: 'GetDelegatedAdminAccountRequest')
150
158
  GetDelegatedAdminAccountResponse = Shapes::StructureShape.new(name: 'GetDelegatedAdminAccountResponse')
151
159
  GetFindingsReportStatusRequest = Shapes::StructureShape.new(name: 'GetFindingsReportStatusRequest')
@@ -287,6 +295,8 @@ module Aws::Inspector2
287
295
  TitleSortBy = Shapes::StringShape.new(name: 'TitleSortBy')
288
296
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
289
297
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
298
+ UpdateConfigurationRequest = Shapes::StructureShape.new(name: 'UpdateConfigurationRequest')
299
+ UpdateConfigurationResponse = Shapes::StructureShape.new(name: 'UpdateConfigurationResponse')
290
300
  UpdateFilterRequest = Shapes::StructureShape.new(name: 'UpdateFilterRequest')
291
301
  UpdateFilterResponse = Shapes::StructureShape.new(name: 'UpdateFilterResponse')
292
302
  UpdateOrganizationConfigurationRequest = Shapes::StructureShape.new(name: 'UpdateOrganizationConfigurationRequest')
@@ -307,6 +317,7 @@ module Aws::Inspector2
307
317
  VulnerabilityIdList = Shapes::ListShape.new(name: 'VulnerabilityIdList')
308
318
  VulnerablePackage = Shapes::StructureShape.new(name: 'VulnerablePackage')
309
319
  VulnerablePackageList = Shapes::ListShape.new(name: 'VulnerablePackageList')
320
+ VulnerablePackageRemediation = Shapes::StringShape.new(name: 'VulnerablePackageRemediation')
310
321
 
311
322
  AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
312
323
  AccessDeniedException.struct_class = Types::AccessDeniedException
@@ -389,7 +400,7 @@ module Aws::Inspector2
389
400
  AmiAggregation.struct_class = Types::AmiAggregation
390
401
 
391
402
  AmiAggregationResponse.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "accountId"))
392
- AmiAggregationResponse.add_member(:affected_instances, Shapes::ShapeRef.new(shape: Long, location_name: "affectedInstances"))
403
+ AmiAggregationResponse.add_member(:affected_instances, Shapes::ShapeRef.new(shape: Long, location_name: "affectedInstances", metadata: {"box"=>true}))
393
404
  AmiAggregationResponse.add_member(:ami, Shapes::ShapeRef.new(shape: AmiId, required: true, location_name: "ami"))
394
405
  AmiAggregationResponse.add_member(:severity_counts, Shapes::ShapeRef.new(shape: SeverityCounts, location_name: "severityCounts"))
395
406
  AmiAggregationResponse.struct_class = Types::AmiAggregationResponse
@@ -400,8 +411,8 @@ module Aws::Inspector2
400
411
  AssociateMemberResponse.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "accountId"))
401
412
  AssociateMemberResponse.struct_class = Types::AssociateMemberResponse
402
413
 
403
- AutoEnable.add_member(:ec2, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "ec2"))
404
- AutoEnable.add_member(:ecr, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "ecr"))
414
+ AutoEnable.add_member(:ec2, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "ec2", metadata: {"box"=>true}))
415
+ AutoEnable.add_member(:ecr, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "ecr", metadata: {"box"=>true}))
405
416
  AutoEnable.struct_class = Types::AutoEnable
406
417
 
407
418
  AwsEc2InstanceDetails.add_member(:iam_instance_profile_arn, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "iamInstanceProfileArn"))
@@ -474,7 +485,7 @@ module Aws::Inspector2
474
485
  ConflictException.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "resourceType"))
475
486
  ConflictException.struct_class = Types::ConflictException
476
487
 
477
- Counts.add_member(:count, Shapes::ShapeRef.new(shape: AggCounts, location_name: "count"))
488
+ Counts.add_member(:count, Shapes::ShapeRef.new(shape: AggCounts, location_name: "count", metadata: {"default"=>0}))
478
489
  Counts.add_member(:group_key, Shapes::ShapeRef.new(shape: GroupKey, location_name: "groupKey"))
479
490
  Counts.struct_class = Types::Counts
480
491
 
@@ -518,6 +529,7 @@ module Aws::Inspector2
518
529
  CreateFilterRequest.add_member(:description, Shapes::ShapeRef.new(shape: FilterDescription, location_name: "description"))
519
530
  CreateFilterRequest.add_member(:filter_criteria, Shapes::ShapeRef.new(shape: FilterCriteria, required: true, location_name: "filterCriteria"))
520
531
  CreateFilterRequest.add_member(:name, Shapes::ShapeRef.new(shape: FilterName, required: true, location_name: "name"))
532
+ CreateFilterRequest.add_member(:reason, Shapes::ShapeRef.new(shape: FilterReason, location_name: "reason"))
521
533
  CreateFilterRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
522
534
  CreateFilterRequest.struct_class = Types::CreateFilterRequest
523
535
 
@@ -532,7 +544,7 @@ module Aws::Inspector2
532
544
  CreateFindingsReportResponse.add_member(:report_id, Shapes::ShapeRef.new(shape: ReportId, location_name: "reportId"))
533
545
  CreateFindingsReportResponse.struct_class = Types::CreateFindingsReportResponse
534
546
 
535
- CvssScore.add_member(:base_score, Shapes::ShapeRef.new(shape: Double, required: true, location_name: "baseScore"))
547
+ CvssScore.add_member(:base_score, Shapes::ShapeRef.new(shape: Double, required: true, location_name: "baseScore", metadata: {"box"=>true}))
536
548
  CvssScore.add_member(:scoring_vector, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "scoringVector"))
537
549
  CvssScore.add_member(:source, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "source"))
538
550
  CvssScore.add_member(:version, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "version"))
@@ -546,7 +558,7 @@ module Aws::Inspector2
546
558
 
547
559
  CvssScoreDetails.add_member(:adjustments, Shapes::ShapeRef.new(shape: CvssScoreAdjustmentList, location_name: "adjustments"))
548
560
  CvssScoreDetails.add_member(:cvss_source, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "cvssSource"))
549
- CvssScoreDetails.add_member(:score, Shapes::ShapeRef.new(shape: Double, required: true, location_name: "score"))
561
+ CvssScoreDetails.add_member(:score, Shapes::ShapeRef.new(shape: Double, required: true, location_name: "score", metadata: {"box"=>true}))
550
562
  CvssScoreDetails.add_member(:score_source, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "scoreSource"))
551
563
  CvssScoreDetails.add_member(:scoring_vector, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "scoringVector"))
552
564
  CvssScoreDetails.add_member(:version, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "version"))
@@ -579,7 +591,7 @@ module Aws::Inspector2
579
591
  DescribeOrganizationConfigurationRequest.struct_class = Types::DescribeOrganizationConfigurationRequest
580
592
 
581
593
  DescribeOrganizationConfigurationResponse.add_member(:auto_enable, Shapes::ShapeRef.new(shape: AutoEnable, location_name: "autoEnable"))
582
- DescribeOrganizationConfigurationResponse.add_member(:max_account_limit_reached, Shapes::ShapeRef.new(shape: Boolean, location_name: "maxAccountLimitReached"))
594
+ DescribeOrganizationConfigurationResponse.add_member(:max_account_limit_reached, Shapes::ShapeRef.new(shape: Boolean, location_name: "maxAccountLimitReached", metadata: {"box"=>true}))
583
595
  DescribeOrganizationConfigurationResponse.struct_class = Types::DescribeOrganizationConfigurationResponse
584
596
 
585
597
  Destination.add_member(:bucket_name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "bucketName"))
@@ -621,7 +633,7 @@ module Aws::Inspector2
621
633
  Ec2InstanceAggregationResponse.add_member(:ami, Shapes::ShapeRef.new(shape: AmiId, location_name: "ami"))
622
634
  Ec2InstanceAggregationResponse.add_member(:instance_id, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "instanceId"))
623
635
  Ec2InstanceAggregationResponse.add_member(:instance_tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "instanceTags"))
624
- Ec2InstanceAggregationResponse.add_member(:network_findings, Shapes::ShapeRef.new(shape: Long, location_name: "networkFindings"))
636
+ Ec2InstanceAggregationResponse.add_member(:network_findings, Shapes::ShapeRef.new(shape: Long, location_name: "networkFindings", metadata: {"box"=>true}))
625
637
  Ec2InstanceAggregationResponse.add_member(:operating_system, Shapes::ShapeRef.new(shape: String, location_name: "operatingSystem"))
626
638
  Ec2InstanceAggregationResponse.add_member(:severity_counts, Shapes::ShapeRef.new(shape: SeverityCounts, location_name: "severityCounts"))
627
639
  Ec2InstanceAggregationResponse.struct_class = Types::Ec2InstanceAggregationResponse
@@ -631,6 +643,12 @@ module Aws::Inspector2
631
643
  Ec2Metadata.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
632
644
  Ec2Metadata.struct_class = Types::Ec2Metadata
633
645
 
646
+ EcrConfiguration.add_member(:rescan_duration, Shapes::ShapeRef.new(shape: EcrRescanDuration, required: true, location_name: "rescanDuration"))
647
+ EcrConfiguration.struct_class = Types::EcrConfiguration
648
+
649
+ EcrConfigurationState.add_member(:rescan_duration_state, Shapes::ShapeRef.new(shape: EcrRescanDurationState, location_name: "rescanDurationState"))
650
+ EcrConfigurationState.struct_class = Types::EcrConfigurationState
651
+
634
652
  EcrContainerImageMetadata.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
635
653
  EcrContainerImageMetadata.struct_class = Types::EcrContainerImageMetadata
636
654
 
@@ -638,6 +656,11 @@ module Aws::Inspector2
638
656
  EcrRepositoryMetadata.add_member(:scan_frequency, Shapes::ShapeRef.new(shape: EcrScanFrequency, location_name: "scanFrequency"))
639
657
  EcrRepositoryMetadata.struct_class = Types::EcrRepositoryMetadata
640
658
 
659
+ EcrRescanDurationState.add_member(:rescan_duration, Shapes::ShapeRef.new(shape: EcrRescanDuration, location_name: "rescanDuration"))
660
+ EcrRescanDurationState.add_member(:status, Shapes::ShapeRef.new(shape: EcrRescanDurationStatus, location_name: "status"))
661
+ EcrRescanDurationState.add_member(:updated_at, Shapes::ShapeRef.new(shape: DateTimeTimestamp, location_name: "updatedAt"))
662
+ EcrRescanDurationState.struct_class = Types::EcrRescanDurationState
663
+
641
664
  EnableDelegatedAdminAccountRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
642
665
  EnableDelegatedAdminAccountRequest.add_member(:delegated_admin_account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "delegatedAdminAccountId"))
643
666
  EnableDelegatedAdminAccountRequest.struct_class = Types::EnableDelegatedAdminAccountRequest
@@ -695,6 +718,7 @@ module Aws::Inspector2
695
718
  FilterCriteria.add_member(:finding_status, Shapes::ShapeRef.new(shape: StringFilterList, location_name: "findingStatus"))
696
719
  FilterCriteria.add_member(:finding_type, Shapes::ShapeRef.new(shape: StringFilterList, location_name: "findingType"))
697
720
  FilterCriteria.add_member(:first_observed_at, Shapes::ShapeRef.new(shape: DateFilterList, location_name: "firstObservedAt"))
721
+ FilterCriteria.add_member(:fix_available, Shapes::ShapeRef.new(shape: StringFilterList, location_name: "fixAvailable"))
698
722
  FilterCriteria.add_member(:inspector_score, Shapes::ShapeRef.new(shape: NumberFilterList, location_name: "inspectorScore"))
699
723
  FilterCriteria.add_member(:last_observed_at, Shapes::ShapeRef.new(shape: DateFilterList, location_name: "lastObservedAt"))
700
724
  FilterCriteria.add_member(:network_protocol, Shapes::ShapeRef.new(shape: StringFilterList, location_name: "networkProtocol"))
@@ -718,7 +742,8 @@ module Aws::Inspector2
718
742
  Finding.add_member(:description, Shapes::ShapeRef.new(shape: FindingDescription, required: true, location_name: "description"))
719
743
  Finding.add_member(:finding_arn, Shapes::ShapeRef.new(shape: FindingArn, required: true, location_name: "findingArn"))
720
744
  Finding.add_member(:first_observed_at, Shapes::ShapeRef.new(shape: DateTimeTimestamp, required: true, location_name: "firstObservedAt"))
721
- Finding.add_member(:inspector_score, Shapes::ShapeRef.new(shape: Double, location_name: "inspectorScore"))
745
+ Finding.add_member(:fix_available, Shapes::ShapeRef.new(shape: FixAvailable, location_name: "fixAvailable"))
746
+ Finding.add_member(:inspector_score, Shapes::ShapeRef.new(shape: Double, location_name: "inspectorScore", metadata: {"box"=>true}))
722
747
  Finding.add_member(:inspector_score_details, Shapes::ShapeRef.new(shape: InspectorScoreDetails, location_name: "inspectorScoreDetails"))
723
748
  Finding.add_member(:last_observed_at, Shapes::ShapeRef.new(shape: DateTimeTimestamp, required: true, location_name: "lastObservedAt"))
724
749
  Finding.add_member(:network_reachability_details, Shapes::ShapeRef.new(shape: NetworkReachabilityDetails, location_name: "networkReachabilityDetails"))
@@ -765,6 +790,11 @@ module Aws::Inspector2
765
790
 
766
791
  FreeTrialInfoList.member = Shapes::ShapeRef.new(shape: FreeTrialInfo)
767
792
 
793
+ GetConfigurationRequest.struct_class = Types::GetConfigurationRequest
794
+
795
+ GetConfigurationResponse.add_member(:ecr_configuration, Shapes::ShapeRef.new(shape: EcrConfigurationState, location_name: "ecrConfiguration"))
796
+ GetConfigurationResponse.struct_class = Types::GetConfigurationResponse
797
+
768
798
  GetDelegatedAdminAccountRequest.struct_class = Types::GetDelegatedAdminAccountRequest
769
799
 
770
800
  GetDelegatedAdminAccountResponse.add_member(:delegated_admin, Shapes::ShapeRef.new(shape: DelegatedAdmin, location_name: "delegatedAdmin"))
@@ -807,14 +837,14 @@ module Aws::Inspector2
807
837
  InspectorScoreDetails.struct_class = Types::InspectorScoreDetails
808
838
 
809
839
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
810
- InternalServerException.add_member(:retry_after_seconds, Shapes::ShapeRef.new(shape: Integer, location: "header", location_name: "Retry-After"))
840
+ InternalServerException.add_member(:retry_after_seconds, Shapes::ShapeRef.new(shape: Integer, location: "header", location_name: "Retry-After", metadata: {"box"=>true}))
811
841
  InternalServerException.struct_class = Types::InternalServerException
812
842
 
813
843
  IpV4AddressList.member = Shapes::ShapeRef.new(shape: IpV4Address)
814
844
 
815
845
  IpV6AddressList.member = Shapes::ShapeRef.new(shape: IpV6Address)
816
846
 
817
- ListAccountPermissionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListAccountPermissionsMaxResults, location_name: "maxResults"))
847
+ ListAccountPermissionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListAccountPermissionsMaxResults, location_name: "maxResults", metadata: {"box"=>true}))
818
848
  ListAccountPermissionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
819
849
  ListAccountPermissionsRequest.add_member(:service, Shapes::ShapeRef.new(shape: Service, location_name: "service"))
820
850
  ListAccountPermissionsRequest.struct_class = Types::ListAccountPermissionsRequest
@@ -824,7 +854,7 @@ module Aws::Inspector2
824
854
  ListAccountPermissionsResponse.struct_class = Types::ListAccountPermissionsResponse
825
855
 
826
856
  ListCoverageRequest.add_member(:filter_criteria, Shapes::ShapeRef.new(shape: CoverageFilterCriteria, location_name: "filterCriteria"))
827
- ListCoverageRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListCoverageMaxResults, location_name: "maxResults"))
857
+ ListCoverageRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListCoverageMaxResults, location_name: "maxResults", metadata: {"box"=>true}))
828
858
  ListCoverageRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
829
859
  ListCoverageRequest.struct_class = Types::ListCoverageRequest
830
860
 
@@ -839,10 +869,10 @@ module Aws::Inspector2
839
869
 
840
870
  ListCoverageStatisticsResponse.add_member(:counts_by_group, Shapes::ShapeRef.new(shape: CountsList, location_name: "countsByGroup"))
841
871
  ListCoverageStatisticsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
842
- ListCoverageStatisticsResponse.add_member(:total_counts, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "totalCounts"))
872
+ ListCoverageStatisticsResponse.add_member(:total_counts, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "totalCounts", metadata: {"box"=>true}))
843
873
  ListCoverageStatisticsResponse.struct_class = Types::ListCoverageStatisticsResponse
844
874
 
845
- ListDelegatedAdminAccountsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListDelegatedAdminMaxResults, location_name: "maxResults"))
875
+ ListDelegatedAdminAccountsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListDelegatedAdminMaxResults, location_name: "maxResults", metadata: {"box"=>true}))
846
876
  ListDelegatedAdminAccountsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
847
877
  ListDelegatedAdminAccountsRequest.struct_class = Types::ListDelegatedAdminAccountsRequest
848
878
 
@@ -852,7 +882,7 @@ module Aws::Inspector2
852
882
 
853
883
  ListFiltersRequest.add_member(:action, Shapes::ShapeRef.new(shape: FilterAction, location_name: "action"))
854
884
  ListFiltersRequest.add_member(:arns, Shapes::ShapeRef.new(shape: FilterArnList, location_name: "arns"))
855
- ListFiltersRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListFilterMaxResults, location_name: "maxResults"))
885
+ ListFiltersRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListFilterMaxResults, location_name: "maxResults", metadata: {"box"=>true}))
856
886
  ListFiltersRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
857
887
  ListFiltersRequest.struct_class = Types::ListFiltersRequest
858
888
 
@@ -863,7 +893,7 @@ module Aws::Inspector2
863
893
  ListFindingAggregationsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: StringFilterList, location_name: "accountIds"))
864
894
  ListFindingAggregationsRequest.add_member(:aggregation_request, Shapes::ShapeRef.new(shape: AggregationRequest, location_name: "aggregationRequest"))
865
895
  ListFindingAggregationsRequest.add_member(:aggregation_type, Shapes::ShapeRef.new(shape: AggregationType, required: true, location_name: "aggregationType"))
866
- ListFindingAggregationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListFindingAggregationsMaxResults, location_name: "maxResults"))
896
+ ListFindingAggregationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListFindingAggregationsMaxResults, location_name: "maxResults", metadata: {"box"=>true}))
867
897
  ListFindingAggregationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
868
898
  ListFindingAggregationsRequest.struct_class = Types::ListFindingAggregationsRequest
869
899
 
@@ -873,7 +903,7 @@ module Aws::Inspector2
873
903
  ListFindingAggregationsResponse.struct_class = Types::ListFindingAggregationsResponse
874
904
 
875
905
  ListFindingsRequest.add_member(:filter_criteria, Shapes::ShapeRef.new(shape: FilterCriteria, location_name: "filterCriteria"))
876
- ListFindingsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListFindingsMaxResults, location_name: "maxResults"))
906
+ ListFindingsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListFindingsMaxResults, location_name: "maxResults", metadata: {"box"=>true}))
877
907
  ListFindingsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
878
908
  ListFindingsRequest.add_member(:sort_criteria, Shapes::ShapeRef.new(shape: SortCriteria, location_name: "sortCriteria"))
879
909
  ListFindingsRequest.struct_class = Types::ListFindingsRequest
@@ -882,9 +912,9 @@ module Aws::Inspector2
882
912
  ListFindingsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
883
913
  ListFindingsResponse.struct_class = Types::ListFindingsResponse
884
914
 
885
- ListMembersRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListMembersMaxResults, location_name: "maxResults"))
915
+ ListMembersRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListMembersMaxResults, location_name: "maxResults", metadata: {"box"=>true}))
886
916
  ListMembersRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
887
- ListMembersRequest.add_member(:only_associated, Shapes::ShapeRef.new(shape: Boolean, location_name: "onlyAssociated"))
917
+ ListMembersRequest.add_member(:only_associated, Shapes::ShapeRef.new(shape: Boolean, location_name: "onlyAssociated", metadata: {"box"=>true}))
888
918
  ListMembersRequest.struct_class = Types::ListMembersRequest
889
919
 
890
920
  ListMembersResponse.add_member(:members, Shapes::ShapeRef.new(shape: MemberList, location_name: "members"))
@@ -898,7 +928,7 @@ module Aws::Inspector2
898
928
  ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
899
929
 
900
930
  ListUsageTotalsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: UsageAccountIdList, location_name: "accountIds"))
901
- ListUsageTotalsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListUsageTotalsMaxResults, location_name: "maxResults"))
931
+ ListUsageTotalsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListUsageTotalsMaxResults, location_name: "maxResults", metadata: {"box"=>true}))
902
932
  ListUsageTotalsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: ListUsageTotalsNextToken, location_name: "nextToken"))
903
933
  ListUsageTotalsRequest.struct_class = Types::ListUsageTotalsRequest
904
934
 
@@ -931,8 +961,8 @@ module Aws::Inspector2
931
961
 
932
962
  NonEmptyStringList.member = Shapes::ShapeRef.new(shape: NonEmptyString)
933
963
 
934
- NumberFilter.add_member(:lower_inclusive, Shapes::ShapeRef.new(shape: Double, location_name: "lowerInclusive"))
935
- NumberFilter.add_member(:upper_inclusive, Shapes::ShapeRef.new(shape: Double, location_name: "upperInclusive"))
964
+ NumberFilter.add_member(:lower_inclusive, Shapes::ShapeRef.new(shape: Double, location_name: "lowerInclusive", metadata: {"box"=>true}))
965
+ NumberFilter.add_member(:upper_inclusive, Shapes::ShapeRef.new(shape: Double, location_name: "upperInclusive", metadata: {"box"=>true}))
936
966
  NumberFilter.struct_class = Types::NumberFilter
937
967
 
938
968
  NumberFilterList.member = Shapes::ShapeRef.new(shape: NumberFilter)
@@ -966,7 +996,7 @@ module Aws::Inspector2
966
996
  PackageVulnerabilityDetails.add_member(:vendor_severity, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "vendorSeverity"))
967
997
  PackageVulnerabilityDetails.add_member(:vendor_updated_at, Shapes::ShapeRef.new(shape: DateTimeTimestamp, location_name: "vendorUpdatedAt"))
968
998
  PackageVulnerabilityDetails.add_member(:vulnerability_id, Shapes::ShapeRef.new(shape: VulnerabilityId, required: true, location_name: "vulnerabilityId"))
969
- PackageVulnerabilityDetails.add_member(:vulnerable_packages, Shapes::ShapeRef.new(shape: VulnerablePackageList, required: true, location_name: "vulnerablePackages"))
999
+ PackageVulnerabilityDetails.add_member(:vulnerable_packages, Shapes::ShapeRef.new(shape: VulnerablePackageList, location_name: "vulnerablePackages"))
970
1000
  PackageVulnerabilityDetails.struct_class = Types::PackageVulnerabilityDetails
971
1001
 
972
1002
  Permission.add_member(:operation, Shapes::ShapeRef.new(shape: Operation, required: true, location_name: "operation"))
@@ -975,12 +1005,12 @@ module Aws::Inspector2
975
1005
 
976
1006
  Permissions.member = Shapes::ShapeRef.new(shape: Permission)
977
1007
 
978
- PortRange.add_member(:begin, Shapes::ShapeRef.new(shape: Port, required: true, location_name: "begin"))
979
- PortRange.add_member(:end, Shapes::ShapeRef.new(shape: Port, required: true, location_name: "end"))
1008
+ PortRange.add_member(:begin, Shapes::ShapeRef.new(shape: Port, required: true, location_name: "begin", metadata: {"box"=>true}))
1009
+ PortRange.add_member(:end, Shapes::ShapeRef.new(shape: Port, required: true, location_name: "end", metadata: {"box"=>true}))
980
1010
  PortRange.struct_class = Types::PortRange
981
1011
 
982
- PortRangeFilter.add_member(:begin_inclusive, Shapes::ShapeRef.new(shape: Port, location_name: "beginInclusive"))
983
- PortRangeFilter.add_member(:end_inclusive, Shapes::ShapeRef.new(shape: Port, location_name: "endInclusive"))
1012
+ PortRangeFilter.add_member(:begin_inclusive, Shapes::ShapeRef.new(shape: Port, location_name: "beginInclusive", metadata: {"box"=>true}))
1013
+ PortRangeFilter.add_member(:end_inclusive, Shapes::ShapeRef.new(shape: Port, location_name: "endInclusive", metadata: {"box"=>true}))
984
1014
  PortRangeFilter.struct_class = Types::PortRangeFilter
985
1015
 
986
1016
  PortRangeFilterList.member = Shapes::ShapeRef.new(shape: PortRangeFilter)
@@ -998,7 +1028,7 @@ module Aws::Inspector2
998
1028
  RepositoryAggregation.struct_class = Types::RepositoryAggregation
999
1029
 
1000
1030
  RepositoryAggregationResponse.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "accountId"))
1001
- RepositoryAggregationResponse.add_member(:affected_images, Shapes::ShapeRef.new(shape: Long, location_name: "affectedImages"))
1031
+ RepositoryAggregationResponse.add_member(:affected_images, Shapes::ShapeRef.new(shape: Long, location_name: "affectedImages", metadata: {"box"=>true}))
1002
1032
  RepositoryAggregationResponse.add_member(:repository, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "repository"))
1003
1033
  RepositoryAggregationResponse.add_member(:severity_counts, Shapes::ShapeRef.new(shape: SeverityCounts, location_name: "severityCounts"))
1004
1034
  RepositoryAggregationResponse.struct_class = Types::RepositoryAggregationResponse
@@ -1041,10 +1071,10 @@ module Aws::Inspector2
1041
1071
  ServiceQuotaExceededException.add_member(:resource_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "resourceId"))
1042
1072
  ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
1043
1073
 
1044
- SeverityCounts.add_member(:all, Shapes::ShapeRef.new(shape: Long, location_name: "all"))
1045
- SeverityCounts.add_member(:critical, Shapes::ShapeRef.new(shape: Long, location_name: "critical"))
1046
- SeverityCounts.add_member(:high, Shapes::ShapeRef.new(shape: Long, location_name: "high"))
1047
- SeverityCounts.add_member(:medium, Shapes::ShapeRef.new(shape: Long, location_name: "medium"))
1074
+ SeverityCounts.add_member(:all, Shapes::ShapeRef.new(shape: Long, location_name: "all", metadata: {"box"=>true}))
1075
+ SeverityCounts.add_member(:critical, Shapes::ShapeRef.new(shape: Long, location_name: "critical", metadata: {"box"=>true}))
1076
+ SeverityCounts.add_member(:high, Shapes::ShapeRef.new(shape: Long, location_name: "high", metadata: {"box"=>true}))
1077
+ SeverityCounts.add_member(:medium, Shapes::ShapeRef.new(shape: Long, location_name: "medium", metadata: {"box"=>true}))
1048
1078
  SeverityCounts.struct_class = Types::SeverityCounts
1049
1079
 
1050
1080
  SortCriteria.add_member(:field, Shapes::ShapeRef.new(shape: SortField, required: true, location_name: "field"))
@@ -1105,11 +1135,17 @@ module Aws::Inspector2
1105
1135
 
1106
1136
  UntagResourceResponse.struct_class = Types::UntagResourceResponse
1107
1137
 
1138
+ UpdateConfigurationRequest.add_member(:ecr_configuration, Shapes::ShapeRef.new(shape: EcrConfiguration, required: true, location_name: "ecrConfiguration"))
1139
+ UpdateConfigurationRequest.struct_class = Types::UpdateConfigurationRequest
1140
+
1141
+ UpdateConfigurationResponse.struct_class = Types::UpdateConfigurationResponse
1142
+
1108
1143
  UpdateFilterRequest.add_member(:action, Shapes::ShapeRef.new(shape: FilterAction, location_name: "action"))
1109
1144
  UpdateFilterRequest.add_member(:description, Shapes::ShapeRef.new(shape: FilterDescription, location_name: "description"))
1110
1145
  UpdateFilterRequest.add_member(:filter_arn, Shapes::ShapeRef.new(shape: FilterArn, required: true, location_name: "filterArn"))
1111
1146
  UpdateFilterRequest.add_member(:filter_criteria, Shapes::ShapeRef.new(shape: FilterCriteria, location_name: "filterCriteria"))
1112
1147
  UpdateFilterRequest.add_member(:name, Shapes::ShapeRef.new(shape: FilterName, location_name: "name"))
1148
+ UpdateFilterRequest.add_member(:reason, Shapes::ShapeRef.new(shape: FilterReason, location_name: "reason"))
1113
1149
  UpdateFilterRequest.struct_class = Types::UpdateFilterRequest
1114
1150
 
1115
1151
  UpdateFilterResponse.add_member(:arn, Shapes::ShapeRef.new(shape: FilterArn, required: true, location_name: "arn"))
@@ -1122,8 +1158,8 @@ module Aws::Inspector2
1122
1158
  UpdateOrganizationConfigurationResponse.struct_class = Types::UpdateOrganizationConfigurationResponse
1123
1159
 
1124
1160
  Usage.add_member(:currency, Shapes::ShapeRef.new(shape: Currency, location_name: "currency"))
1125
- Usage.add_member(:estimated_monthly_cost, Shapes::ShapeRef.new(shape: MonthlyCostEstimate, location_name: "estimatedMonthlyCost"))
1126
- Usage.add_member(:total, Shapes::ShapeRef.new(shape: UsageValue, location_name: "total"))
1161
+ Usage.add_member(:estimated_monthly_cost, Shapes::ShapeRef.new(shape: MonthlyCostEstimate, location_name: "estimatedMonthlyCost", metadata: {"default"=>0}))
1162
+ Usage.add_member(:total, Shapes::ShapeRef.new(shape: UsageValue, location_name: "total", metadata: {"default"=>0}))
1127
1163
  Usage.add_member(:type, Shapes::ShapeRef.new(shape: UsageType, location_name: "type"))
1128
1164
  Usage.struct_class = Types::Usage
1129
1165
 
@@ -1151,12 +1187,13 @@ module Aws::Inspector2
1151
1187
  VulnerabilityIdList.member = Shapes::ShapeRef.new(shape: VulnerabilityId)
1152
1188
 
1153
1189
  VulnerablePackage.add_member(:arch, Shapes::ShapeRef.new(shape: PackageArchitecture, location_name: "arch"))
1154
- VulnerablePackage.add_member(:epoch, Shapes::ShapeRef.new(shape: PackageEpoch, location_name: "epoch"))
1190
+ VulnerablePackage.add_member(:epoch, Shapes::ShapeRef.new(shape: PackageEpoch, location_name: "epoch", metadata: {"default"=>0}))
1155
1191
  VulnerablePackage.add_member(:file_path, Shapes::ShapeRef.new(shape: FilePath, location_name: "filePath"))
1156
1192
  VulnerablePackage.add_member(:fixed_in_version, Shapes::ShapeRef.new(shape: PackageVersion, location_name: "fixedInVersion"))
1157
1193
  VulnerablePackage.add_member(:name, Shapes::ShapeRef.new(shape: PackageName, required: true, location_name: "name"))
1158
1194
  VulnerablePackage.add_member(:package_manager, Shapes::ShapeRef.new(shape: PackageManager, location_name: "packageManager"))
1159
1195
  VulnerablePackage.add_member(:release, Shapes::ShapeRef.new(shape: PackageRelease, location_name: "release"))
1196
+ VulnerablePackage.add_member(:remediation, Shapes::ShapeRef.new(shape: VulnerablePackageRemediation, location_name: "remediation"))
1160
1197
  VulnerablePackage.add_member(:source_layer_hash, Shapes::ShapeRef.new(shape: SourceLayerHash, location_name: "sourceLayerHash"))
1161
1198
  VulnerablePackage.add_member(:version, Shapes::ShapeRef.new(shape: PackageVersion, required: true, location_name: "version"))
1162
1199
  VulnerablePackage.struct_class = Types::VulnerablePackage
@@ -1350,6 +1387,17 @@ module Aws::Inspector2
1350
1387
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1351
1388
  end)
1352
1389
 
1390
+ api.add_operation(:get_configuration, Seahorse::Model::Operation.new.tap do |o|
1391
+ o.name = "GetConfiguration"
1392
+ o.http_method = "POST"
1393
+ o.http_request_uri = "/configuration/get"
1394
+ o.input = Shapes::ShapeRef.new(shape: GetConfigurationRequest)
1395
+ o.output = Shapes::ShapeRef.new(shape: GetConfigurationResponse)
1396
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1397
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1398
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1399
+ end)
1400
+
1353
1401
  api.add_operation(:get_delegated_admin_account, Seahorse::Model::Operation.new.tap do |o|
1354
1402
  o.name = "GetDelegatedAdminAccount"
1355
1403
  o.http_method = "POST"
@@ -1583,6 +1631,18 @@ module Aws::Inspector2
1583
1631
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1584
1632
  end)
1585
1633
 
1634
+ api.add_operation(:update_configuration, Seahorse::Model::Operation.new.tap do |o|
1635
+ o.name = "UpdateConfiguration"
1636
+ o.http_method = "POST"
1637
+ o.http_request_uri = "/configuration/update"
1638
+ o.input = Shapes::ShapeRef.new(shape: UpdateConfigurationRequest)
1639
+ o.output = Shapes::ShapeRef.new(shape: UpdateConfigurationResponse)
1640
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1641
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1642
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1643
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1644
+ end)
1645
+
1586
1646
  api.add_operation(:update_filter, Seahorse::Model::Operation.new.tap do |o|
1587
1647
  o.name = "UpdateFilter"
1588
1648
  o.http_method = "POST"
@@ -909,7 +909,8 @@ module Aws::Inspector2
909
909
  #
910
910
  # @!attribute [rw] resource_type
911
911
  # An array of Amazon Web Services resource types to return coverage
912
- # statistics for.
912
+ # statistics for. The values can be `AWS_EC2_INSTANCE` or
913
+ # `AWS_ECR_REPOSITORY`.
913
914
  # @return [Array<Types::CoverageStringFilter>]
914
915
  #
915
916
  # @!attribute [rw] scan_status_code
@@ -1144,6 +1145,12 @@ module Aws::Inspector2
1144
1145
  # start_inclusive: Time.now,
1145
1146
  # },
1146
1147
  # ],
1148
+ # fix_available: [
1149
+ # {
1150
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1151
+ # value: "StringInput", # required
1152
+ # },
1153
+ # ],
1147
1154
  # inspector_score: [
1148
1155
  # {
1149
1156
  # lower_inclusive: 1.0,
@@ -1259,6 +1266,7 @@ module Aws::Inspector2
1259
1266
  # ],
1260
1267
  # },
1261
1268
  # name: "FilterName", # required
1269
+ # reason: "FilterReason",
1262
1270
  # tags: {
1263
1271
  # "MapKey" => "MapValue",
1264
1272
  # },
@@ -1283,6 +1291,10 @@ module Aws::Inspector2
1283
1291
  # underscore (\_), and dash (-). Spaces are not allowed.
1284
1292
  # @return [String]
1285
1293
  #
1294
+ # @!attribute [rw] reason
1295
+ # The reason for creating the filter.
1296
+ # @return [String]
1297
+ #
1286
1298
  # @!attribute [rw] tags
1287
1299
  # A list of tags for the filter.
1288
1300
  # @return [Hash<String,String>]
@@ -1294,6 +1306,7 @@ module Aws::Inspector2
1294
1306
  :description,
1295
1307
  :filter_criteria,
1296
1308
  :name,
1309
+ :reason,
1297
1310
  :tags)
1298
1311
  SENSITIVE = []
1299
1312
  include Aws::Structure
@@ -1412,6 +1425,12 @@ module Aws::Inspector2
1412
1425
  # start_inclusive: Time.now,
1413
1426
  # },
1414
1427
  # ],
1428
+ # fix_available: [
1429
+ # {
1430
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1431
+ # value: "StringInput", # required
1432
+ # },
1433
+ # ],
1415
1434
  # inspector_score: [
1416
1435
  # {
1417
1436
  # lower_inclusive: 1.0,
@@ -2073,6 +2092,47 @@ module Aws::Inspector2
2073
2092
  include Aws::Structure
2074
2093
  end
2075
2094
 
2095
+ # Details about the ECR automated re-scan duration setting for your
2096
+ # environment
2097
+ #
2098
+ # @note When making an API call, you may pass EcrConfiguration
2099
+ # data as a hash:
2100
+ #
2101
+ # {
2102
+ # rescan_duration: "LIFETIME", # required, accepts LIFETIME, DAYS_30, DAYS_180
2103
+ # }
2104
+ #
2105
+ # @!attribute [rw] rescan_duration
2106
+ # The ECR automated re-scan duration defines how long an ECR image
2107
+ # will be actively scanned by Amazon Inspector. When the number of
2108
+ # days since an image was last pushed exceeds the automated re-scan
2109
+ # duration the monitoring state of that image becomes `inactive` and
2110
+ # all associated findings are scheduled for closure.
2111
+ # @return [String]
2112
+ #
2113
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/EcrConfiguration AWS API Documentation
2114
+ #
2115
+ class EcrConfiguration < Struct.new(
2116
+ :rescan_duration)
2117
+ SENSITIVE = []
2118
+ include Aws::Structure
2119
+ end
2120
+
2121
+ # Details about the state of the ECR scans for your environment.
2122
+ #
2123
+ # @!attribute [rw] rescan_duration_state
2124
+ # An object that contains details about the state of the ECR automated
2125
+ # re-scan setting.
2126
+ # @return [Types::EcrRescanDurationState]
2127
+ #
2128
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/EcrConfigurationState AWS API Documentation
2129
+ #
2130
+ class EcrConfigurationState < Struct.new(
2131
+ :rescan_duration_state)
2132
+ SENSITIVE = []
2133
+ include Aws::Structure
2134
+ end
2135
+
2076
2136
  # Information on the Amazon ECR image metadata associated with a
2077
2137
  # finding.
2078
2138
  #
@@ -2108,6 +2168,36 @@ module Aws::Inspector2
2108
2168
  include Aws::Structure
2109
2169
  end
2110
2170
 
2171
+ # Details about the state of any changes to the ECR automated re-scan
2172
+ # duration setting.
2173
+ #
2174
+ # @!attribute [rw] rescan_duration
2175
+ # The ECR automated re-scan duration defines how long an ECR image
2176
+ # will be actively scanned by Amazon Inspector. When the number of
2177
+ # days since an image was last pushed exceeds the automated re-scan
2178
+ # duration the monitoring state of that image becomes `inactive` and
2179
+ # all associated findings are scheduled for closure.
2180
+ # @return [String]
2181
+ #
2182
+ # @!attribute [rw] status
2183
+ # The status of changes to the ECR automated re-scan duration.
2184
+ # @return [String]
2185
+ #
2186
+ # @!attribute [rw] updated_at
2187
+ # A timestamp representing when the last time the ECR scan duration
2188
+ # setting was changed.
2189
+ # @return [Time]
2190
+ #
2191
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/EcrRescanDurationState AWS API Documentation
2192
+ #
2193
+ class EcrRescanDurationState < Struct.new(
2194
+ :rescan_duration,
2195
+ :status,
2196
+ :updated_at)
2197
+ SENSITIVE = []
2198
+ include Aws::Structure
2199
+ end
2200
+
2111
2201
  # @note When making an API call, you may pass EnableDelegatedAdminAccountRequest
2112
2202
  # data as a hash:
2113
2203
  #
@@ -2404,6 +2494,12 @@ module Aws::Inspector2
2404
2494
  # start_inclusive: Time.now,
2405
2495
  # },
2406
2496
  # ],
2497
+ # fix_available: [
2498
+ # {
2499
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2500
+ # value: "StringInput", # required
2501
+ # },
2502
+ # ],
2407
2503
  # inspector_score: [
2408
2504
  # {
2409
2505
  # lower_inclusive: 1.0,
@@ -2590,6 +2686,13 @@ module Aws::Inspector2
2590
2686
  # findings.
2591
2687
  # @return [Array<Types::DateFilter>]
2592
2688
  #
2689
+ # @!attribute [rw] fix_available
2690
+ # Details on whether a fix is available through a version update. This
2691
+ # value can be `YES`, `NO`, or `PARTIAL`. A `PARTIAL` fix means that
2692
+ # some, but not all, of the packages identified in the finding have
2693
+ # fixes available through updated versions.
2694
+ # @return [Array<Types::StringFilter>]
2695
+ #
2593
2696
  # @!attribute [rw] inspector_score
2594
2697
  # The Amazon Inspector score to filter on.
2595
2698
  # @return [Array<Types::NumberFilter>]
@@ -2671,6 +2774,7 @@ module Aws::Inspector2
2671
2774
  :finding_status,
2672
2775
  :finding_type,
2673
2776
  :first_observed_at,
2777
+ :fix_available,
2674
2778
  :inspector_score,
2675
2779
  :last_observed_at,
2676
2780
  :network_protocol,
@@ -2708,6 +2812,13 @@ module Aws::Inspector2
2708
2812
  # The date and time that the finding was first observed.
2709
2813
  # @return [Time]
2710
2814
  #
2815
+ # @!attribute [rw] fix_available
2816
+ # Details on whether a fix is available through a version update. This
2817
+ # value can be `YES`, `NO`, or `PARTIAL`. A `PARTIAL` fix means that
2818
+ # some, but not all, of the packages identified in the finding have
2819
+ # fixes available through updated versions.
2820
+ # @return [String]
2821
+ #
2711
2822
  # @!attribute [rw] inspector_score
2712
2823
  # The Amazon Inspector score given to the finding.
2713
2824
  # @return [Float]
@@ -2766,6 +2877,7 @@ module Aws::Inspector2
2766
2877
  :description,
2767
2878
  :finding_arn,
2768
2879
  :first_observed_at,
2880
+ :fix_available,
2769
2881
  :inspector_score,
2770
2882
  :inspector_score_details,
2771
2883
  :last_observed_at,
@@ -2920,6 +3032,25 @@ module Aws::Inspector2
2920
3032
  include Aws::Structure
2921
3033
  end
2922
3034
 
3035
+ # @api private
3036
+ #
3037
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/GetConfigurationRequest AWS API Documentation
3038
+ #
3039
+ class GetConfigurationRequest < Aws::EmptyStructure; end
3040
+
3041
+ # @!attribute [rw] ecr_configuration
3042
+ # Specifies how the ECR automated re-scan duration is currently
3043
+ # configured for your environment.
3044
+ # @return [Types::EcrConfigurationState]
3045
+ #
3046
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/GetConfigurationResponse AWS API Documentation
3047
+ #
3048
+ class GetConfigurationResponse < Struct.new(
3049
+ :ecr_configuration)
3050
+ SENSITIVE = []
3051
+ include Aws::Structure
3052
+ end
3053
+
2923
3054
  # @api private
2924
3055
  #
2925
3056
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/GetDelegatedAdminAccountRequest AWS API Documentation
@@ -3888,6 +4019,12 @@ module Aws::Inspector2
3888
4019
  # start_inclusive: Time.now,
3889
4020
  # },
3890
4021
  # ],
4022
+ # fix_available: [
4023
+ # {
4024
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
4025
+ # value: "StringInput", # required
4026
+ # },
4027
+ # ],
3891
4028
  # inspector_score: [
3892
4029
  # {
3893
4030
  # lower_inclusive: 1.0,
@@ -5171,6 +5308,32 @@ module Aws::Inspector2
5171
5308
  #
5172
5309
  class UntagResourceResponse < Aws::EmptyStructure; end
5173
5310
 
5311
+ # @note When making an API call, you may pass UpdateConfigurationRequest
5312
+ # data as a hash:
5313
+ #
5314
+ # {
5315
+ # ecr_configuration: { # required
5316
+ # rescan_duration: "LIFETIME", # required, accepts LIFETIME, DAYS_30, DAYS_180
5317
+ # },
5318
+ # }
5319
+ #
5320
+ # @!attribute [rw] ecr_configuration
5321
+ # Specifies how the ECR automated re-scan will be updated for your
5322
+ # environment.
5323
+ # @return [Types::EcrConfiguration]
5324
+ #
5325
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UpdateConfigurationRequest AWS API Documentation
5326
+ #
5327
+ class UpdateConfigurationRequest < Struct.new(
5328
+ :ecr_configuration)
5329
+ SENSITIVE = []
5330
+ include Aws::Structure
5331
+ end
5332
+
5333
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UpdateConfigurationResponse AWS API Documentation
5334
+ #
5335
+ class UpdateConfigurationResponse < Aws::EmptyStructure; end
5336
+
5174
5337
  # @note When making an API call, you may pass UpdateFilterRequest
5175
5338
  # data as a hash:
5176
5339
  #
@@ -5275,6 +5438,12 @@ module Aws::Inspector2
5275
5438
  # start_inclusive: Time.now,
5276
5439
  # },
5277
5440
  # ],
5441
+ # fix_available: [
5442
+ # {
5443
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5444
+ # value: "StringInput", # required
5445
+ # },
5446
+ # ],
5278
5447
  # inspector_score: [
5279
5448
  # {
5280
5449
  # lower_inclusive: 1.0,
@@ -5390,6 +5559,7 @@ module Aws::Inspector2
5390
5559
  # ],
5391
5560
  # },
5392
5561
  # name: "FilterName",
5562
+ # reason: "FilterReason",
5393
5563
  # }
5394
5564
  #
5395
5565
  # @!attribute [rw] action
@@ -5413,6 +5583,10 @@ module Aws::Inspector2
5413
5583
  # The name of the filter.
5414
5584
  # @return [String]
5415
5585
  #
5586
+ # @!attribute [rw] reason
5587
+ # The reason the filter was updated.
5588
+ # @return [String]
5589
+ #
5416
5590
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UpdateFilterRequest AWS API Documentation
5417
5591
  #
5418
5592
  class UpdateFilterRequest < Struct.new(
@@ -5420,7 +5594,8 @@ module Aws::Inspector2
5420
5594
  :description,
5421
5595
  :filter_arn,
5422
5596
  :filter_criteria,
5423
- :name)
5597
+ :name,
5598
+ :reason)
5424
5599
  SENSITIVE = []
5425
5600
  include Aws::Structure
5426
5601
  end
@@ -5595,6 +5770,11 @@ module Aws::Inspector2
5595
5770
  # The release of the vulnerable package.
5596
5771
  # @return [String]
5597
5772
  #
5773
+ # @!attribute [rw] remediation
5774
+ # The code to run in your environment to update packages with a fix
5775
+ # available.
5776
+ # @return [String]
5777
+ #
5598
5778
  # @!attribute [rw] source_layer_hash
5599
5779
  # The source layer hash of the vulnerable package.
5600
5780
  # @return [String]
@@ -5613,6 +5793,7 @@ module Aws::Inspector2
5613
5793
  :name,
5614
5794
  :package_manager,
5615
5795
  :release,
5796
+ :remediation,
5616
5797
  :source_layer_hash,
5617
5798
  :version)
5618
5799
  SENSITIVE = []
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-inspector2/customizations'
48
48
  # @!group service
49
49
  module Aws::Inspector2
50
50
 
51
- GEM_VERSION = '1.3.0'
51
+ GEM_VERSION = '1.6.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-inspector2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.6.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: 2022-02-03 00:00:00.000000000 Z
11
+ date: 2022-09-07 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.126.0
22
+ version: 3.127.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.126.0
32
+ version: 3.127.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement