aws-sdk-inspector2 1.75.0 → 1.76.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.
@@ -838,10 +838,11 @@ module Aws::Inspector2
838
838
  # resp.accounts #=> Array
839
839
  # resp.accounts[0].account_id #=> String
840
840
  # resp.accounts[0].free_trial_info #=> Array
841
- # resp.accounts[0].free_trial_info[0].type #=> String, one of "EC2", "ECR", "LAMBDA", "LAMBDA_CODE", "CODE_REPOSITORY"
841
+ # resp.accounts[0].free_trial_info[0].type #=> String, one of "EC2", "ECR", "LAMBDA", "LAMBDA_CODE", "CODE_REPOSITORY", "VM", "CONTAINER_IMAGE", "SERVERLESS_FUNCTION"
842
842
  # resp.accounts[0].free_trial_info[0].start #=> Time
843
843
  # resp.accounts[0].free_trial_info[0].end #=> Time
844
844
  # resp.accounts[0].free_trial_info[0].status #=> String, one of "ACTIVE", "INACTIVE"
845
+ # resp.accounts[0].free_trial_info[0].cloud_provider #=> String, one of "AWS", "AZURE", "NOT_APPLICABLE"
845
846
  # resp.failed_accounts #=> Array
846
847
  # resp.failed_accounts[0].account_id #=> String
847
848
  # resp.failed_accounts[0].code #=> String, one of "ACCESS_DENIED", "INTERNAL_ERROR"
@@ -1224,6 +1225,118 @@ module Aws::Inspector2
1224
1225
  req.send_request(options)
1225
1226
  end
1226
1227
 
1228
+ # Creates a connector that links an external cloud provider to Amazon
1229
+ # Inspector for vulnerability scanning.
1230
+ #
1231
+ # @option params [String] :client_token
1232
+ # A unique, case-sensitive identifier that you provide to ensure that
1233
+ # the operation completes no more than one time. If this token matches a
1234
+ # previous request, the service ignores the request but does not return
1235
+ # an error.
1236
+ #
1237
+ # **A suitable default value is auto-generated.** You should normally
1238
+ # not need to pass this option.**
1239
+ #
1240
+ # @option params [required, String] :name
1241
+ # The name of the connector.
1242
+ #
1243
+ # @option params [required, String] :provider
1244
+ # The cloud provider for the connector.
1245
+ #
1246
+ # @option params [String] :description
1247
+ # A description of the connector.
1248
+ #
1249
+ # @option params [required, Types::ProviderDetailCreate] :provider_detail
1250
+ # The provider-specific configuration details for the connector.
1251
+ #
1252
+ # @option params [Hash<String,String>] :tags
1253
+ # The tags to apply to the connector.
1254
+ #
1255
+ # @return [Types::CreateConnectorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1256
+ #
1257
+ # * {Types::CreateConnectorResponse#connector_arn #connector_arn} => String
1258
+ #
1259
+ #
1260
+ # @example Example: Create an Azure customer-managed connector for VM scanning at SUBSCRIPTION scope
1261
+ #
1262
+ # resp = client.create_connector({
1263
+ # name: "my-azure-connector",
1264
+ # description: "Azure subscription scanner",
1265
+ # provider: "AZURE",
1266
+ # provider_detail: {
1267
+ # azure: {
1268
+ # auto_install_vm_scanner: true,
1269
+ # aws_config_connector_arn: "arn:aws:config:us-east-1:123456789012:connector/azure/a7bc5463-04ce-4b52-901e-f26f7292a4a7/2fbed4bd-5b95-4947-a751-8defc76ecdae",
1270
+ # azure_regions: [
1271
+ # "eastus",
1272
+ # ],
1273
+ # scope_configuration: {
1274
+ # vm_scanning: {
1275
+ # scope_type: "SUBSCRIPTION",
1276
+ # scope_values: [
1277
+ # "552802f5-1492-4184-bbae-7291c9939b16",
1278
+ # ],
1279
+ # },
1280
+ # },
1281
+ # },
1282
+ # },
1283
+ # tags: {
1284
+ # "env" => "prod",
1285
+ # "owner" => "security-team",
1286
+ # },
1287
+ # })
1288
+ #
1289
+ # resp.to_h outputs the following:
1290
+ # {
1291
+ # connector_arn: "arn:aws:inspector2:us-east-1:123456789012:connector/6ccf8549-b52b-57ca-bf52-a2266da3c53a",
1292
+ # }
1293
+ #
1294
+ # @example Request syntax with placeholder values
1295
+ #
1296
+ # resp = client.create_connector({
1297
+ # client_token: "String",
1298
+ # name: "ConnectorName", # required
1299
+ # provider: "AZURE", # required, accepts AZURE
1300
+ # description: "ConnectorDescription",
1301
+ # provider_detail: { # required
1302
+ # azure: {
1303
+ # aws_config_connector_arn: "AwsConfigConnectorArn", # required
1304
+ # scope_configuration: { # required
1305
+ # vm_scanning: {
1306
+ # scope_type: "TENANT", # required, accepts TENANT, SUBSCRIPTION
1307
+ # scope_values: ["ScopeValue"],
1308
+ # },
1309
+ # container_image_scanning: {
1310
+ # scope_type: "TENANT", # required, accepts TENANT, SUBSCRIPTION
1311
+ # scope_values: ["ScopeValue"],
1312
+ # },
1313
+ # serverless_scanning: {
1314
+ # scope_type: "TENANT", # required, accepts TENANT, SUBSCRIPTION
1315
+ # scope_values: ["ScopeValue"],
1316
+ # },
1317
+ # },
1318
+ # azure_regions: ["AzureRegion"], # required
1319
+ # auto_install_vm_scanner: false,
1320
+ # },
1321
+ # },
1322
+ # tags: {
1323
+ # "ConnectorTagKey" => "ConnectorTagValue",
1324
+ # },
1325
+ # })
1326
+ #
1327
+ # @example Response structure
1328
+ #
1329
+ # resp.connector_arn #=> String
1330
+ #
1331
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/CreateConnector AWS API Documentation
1332
+ #
1333
+ # @overload create_connector(params = {})
1334
+ # @param [Hash] params ({})
1335
+ def create_connector(params = {}, options = {})
1336
+ req = build_request(:create_connector, params)
1337
+ req.send_request(options)
1338
+ end
1339
+
1227
1340
  # Creates a filter resource using specified filter criteria. When the
1228
1341
  # filter action is set to `SUPPRESS` this action creates a suppression
1229
1342
  # rule.
@@ -1566,6 +1679,120 @@ module Aws::Inspector2
1566
1679
  # value: "StringInput", # required
1567
1680
  # },
1568
1681
  # ],
1682
+ # cloud_provider: [
1683
+ # {
1684
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1685
+ # value: "StringInput", # required
1686
+ # },
1687
+ # ],
1688
+ # cloud_provider_region: [
1689
+ # {
1690
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1691
+ # value: "StringInput", # required
1692
+ # },
1693
+ # ],
1694
+ # cloud_provider_account_id: [
1695
+ # {
1696
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1697
+ # value: "StringInput", # required
1698
+ # },
1699
+ # ],
1700
+ # cloud_provider_org_id: [
1701
+ # {
1702
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1703
+ # value: "StringInput", # required
1704
+ # },
1705
+ # ],
1706
+ # cloud_vm_image_reference: [
1707
+ # {
1708
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1709
+ # value: "StringInput", # required
1710
+ # },
1711
+ # ],
1712
+ # cloud_vm_network_id: [
1713
+ # {
1714
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1715
+ # value: "StringInput", # required
1716
+ # },
1717
+ # ],
1718
+ # cloud_vm_subnet_ids: [
1719
+ # {
1720
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1721
+ # value: "StringInput", # required
1722
+ # },
1723
+ # ],
1724
+ # cloud_image_repository_name: [
1725
+ # {
1726
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1727
+ # value: "StringInput", # required
1728
+ # },
1729
+ # ],
1730
+ # cloud_image_registry: [
1731
+ # {
1732
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1733
+ # value: "StringInput", # required
1734
+ # },
1735
+ # ],
1736
+ # cloud_image_digest: [
1737
+ # {
1738
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1739
+ # value: "StringInput", # required
1740
+ # },
1741
+ # ],
1742
+ # cloud_image_tags: [
1743
+ # {
1744
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1745
+ # value: "StringInput", # required
1746
+ # },
1747
+ # ],
1748
+ # cloud_image_pushed_at: [
1749
+ # {
1750
+ # start_inclusive: Time.now,
1751
+ # end_inclusive: Time.now,
1752
+ # },
1753
+ # ],
1754
+ # cloud_image_architecture: [
1755
+ # {
1756
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1757
+ # value: "StringInput", # required
1758
+ # },
1759
+ # ],
1760
+ # cloud_image_last_in_use_at: [
1761
+ # {
1762
+ # start_inclusive: Time.now,
1763
+ # end_inclusive: Time.now,
1764
+ # },
1765
+ # ],
1766
+ # cloud_image_in_use_count: [
1767
+ # {
1768
+ # upper_inclusive: 1.0,
1769
+ # lower_inclusive: 1.0,
1770
+ # },
1771
+ # ],
1772
+ # cloud_serverless_function_name: [
1773
+ # {
1774
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1775
+ # value: "StringInput", # required
1776
+ # },
1777
+ # ],
1778
+ # cloud_serverless_function_runtime: [
1779
+ # {
1780
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1781
+ # value: "StringInput", # required
1782
+ # },
1783
+ # ],
1784
+ # cloud_serverless_function_last_modified_at: [
1785
+ # {
1786
+ # start_inclusive: Time.now,
1787
+ # end_inclusive: Time.now,
1788
+ # },
1789
+ # ],
1790
+ # cloud_serverless_function_execution_role: [
1791
+ # {
1792
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1793
+ # value: "StringInput", # required
1794
+ # },
1795
+ # ],
1569
1796
  # },
1570
1797
  # name: "FilterName", # required
1571
1798
  # tags: {
@@ -1915,6 +2142,120 @@ module Aws::Inspector2
1915
2142
  # value: "StringInput", # required
1916
2143
  # },
1917
2144
  # ],
2145
+ # cloud_provider: [
2146
+ # {
2147
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2148
+ # value: "StringInput", # required
2149
+ # },
2150
+ # ],
2151
+ # cloud_provider_region: [
2152
+ # {
2153
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2154
+ # value: "StringInput", # required
2155
+ # },
2156
+ # ],
2157
+ # cloud_provider_account_id: [
2158
+ # {
2159
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2160
+ # value: "StringInput", # required
2161
+ # },
2162
+ # ],
2163
+ # cloud_provider_org_id: [
2164
+ # {
2165
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2166
+ # value: "StringInput", # required
2167
+ # },
2168
+ # ],
2169
+ # cloud_vm_image_reference: [
2170
+ # {
2171
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2172
+ # value: "StringInput", # required
2173
+ # },
2174
+ # ],
2175
+ # cloud_vm_network_id: [
2176
+ # {
2177
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2178
+ # value: "StringInput", # required
2179
+ # },
2180
+ # ],
2181
+ # cloud_vm_subnet_ids: [
2182
+ # {
2183
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2184
+ # value: "StringInput", # required
2185
+ # },
2186
+ # ],
2187
+ # cloud_image_repository_name: [
2188
+ # {
2189
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2190
+ # value: "StringInput", # required
2191
+ # },
2192
+ # ],
2193
+ # cloud_image_registry: [
2194
+ # {
2195
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2196
+ # value: "StringInput", # required
2197
+ # },
2198
+ # ],
2199
+ # cloud_image_digest: [
2200
+ # {
2201
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2202
+ # value: "StringInput", # required
2203
+ # },
2204
+ # ],
2205
+ # cloud_image_tags: [
2206
+ # {
2207
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2208
+ # value: "StringInput", # required
2209
+ # },
2210
+ # ],
2211
+ # cloud_image_pushed_at: [
2212
+ # {
2213
+ # start_inclusive: Time.now,
2214
+ # end_inclusive: Time.now,
2215
+ # },
2216
+ # ],
2217
+ # cloud_image_architecture: [
2218
+ # {
2219
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2220
+ # value: "StringInput", # required
2221
+ # },
2222
+ # ],
2223
+ # cloud_image_last_in_use_at: [
2224
+ # {
2225
+ # start_inclusive: Time.now,
2226
+ # end_inclusive: Time.now,
2227
+ # },
2228
+ # ],
2229
+ # cloud_image_in_use_count: [
2230
+ # {
2231
+ # upper_inclusive: 1.0,
2232
+ # lower_inclusive: 1.0,
2233
+ # },
2234
+ # ],
2235
+ # cloud_serverless_function_name: [
2236
+ # {
2237
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2238
+ # value: "StringInput", # required
2239
+ # },
2240
+ # ],
2241
+ # cloud_serverless_function_runtime: [
2242
+ # {
2243
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2244
+ # value: "StringInput", # required
2245
+ # },
2246
+ # ],
2247
+ # cloud_serverless_function_last_modified_at: [
2248
+ # {
2249
+ # start_inclusive: Time.now,
2250
+ # end_inclusive: Time.now,
2251
+ # },
2252
+ # ],
2253
+ # cloud_serverless_function_execution_role: [
2254
+ # {
2255
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2256
+ # value: "StringInput", # required
2257
+ # },
2258
+ # ],
1918
2259
  # },
1919
2260
  # report_format: "CSV", # required, accepts CSV, JSON
1920
2261
  # s3_destination: { # required
@@ -2127,24 +2468,57 @@ module Aws::Inspector2
2127
2468
  req.send_request(options)
2128
2469
  end
2129
2470
 
2130
- # Deletes a filter resource.
2471
+ # Deletes a connector from your account.
2131
2472
  #
2132
- # @option params [required, String] :arn
2133
- # The Amazon Resource Number (ARN) of the filter to be deleted.
2473
+ # @option params [required, String] :connector_arn
2474
+ # The Amazon Resource Name (ARN) of the connector to delete.
2134
2475
  #
2135
- # @return [Types::DeleteFilterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2476
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2136
2477
  #
2137
- # * {Types::DeleteFilterResponse#arn #arn} => String
2138
2478
  #
2139
- # @example Request syntax with placeholder values
2479
+ # @example Example: Delete a customer-managed connector
2140
2480
  #
2141
- # resp = client.delete_filter({
2142
- # arn: "FilterArn", # required
2481
+ # resp = client.delete_connector({
2482
+ # connector_arn: "arn:aws:inspector2:us-east-1:123456789012:connector/6ccf8549-b52b-57ca-bf52-a2266da3c53a",
2143
2483
  # })
2144
2484
  #
2145
- # @example Response structure
2485
+ # resp.to_h outputs the following:
2486
+ # {
2487
+ # }
2146
2488
  #
2147
- # resp.arn #=> String
2489
+ # @example Request syntax with placeholder values
2490
+ #
2491
+ # resp = client.delete_connector({
2492
+ # connector_arn: "ConnectorArn", # required
2493
+ # })
2494
+ #
2495
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/DeleteConnector AWS API Documentation
2496
+ #
2497
+ # @overload delete_connector(params = {})
2498
+ # @param [Hash] params ({})
2499
+ def delete_connector(params = {}, options = {})
2500
+ req = build_request(:delete_connector, params)
2501
+ req.send_request(options)
2502
+ end
2503
+
2504
+ # Deletes a filter resource.
2505
+ #
2506
+ # @option params [required, String] :arn
2507
+ # The Amazon Resource Number (ARN) of the filter to be deleted.
2508
+ #
2509
+ # @return [Types::DeleteFilterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2510
+ #
2511
+ # * {Types::DeleteFilterResponse#arn #arn} => String
2512
+ #
2513
+ # @example Request syntax with placeholder values
2514
+ #
2515
+ # resp = client.delete_filter({
2516
+ # arn: "FilterArn", # required
2517
+ # })
2518
+ #
2519
+ # @example Response structure
2520
+ #
2521
+ # resp.arn #=> String
2148
2522
  #
2149
2523
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/DeleteFilter AWS API Documentation
2150
2524
  #
@@ -2777,13 +3151,29 @@ module Aws::Inspector2
2777
3151
  req.send_request(options)
2778
3152
  end
2779
3153
 
2780
- # Retrieves setting configurations for Inspector scans.
3154
+ # Retrieves setting configurations for Amazon Inspector scans. If you
3155
+ # specify an `accountId`, this operation returns the scan configuration
3156
+ # for that member account. You must be the delegated administrator for
3157
+ # the specified member account. If you do not specify an `accountId`,
3158
+ # this operation returns your own scan configuration.
3159
+ #
3160
+ # @option params [String] :account_id
3161
+ # The 12-digit Amazon Web Services account ID of the member account
3162
+ # whose scan configuration you want to retrieve. When specified, you
3163
+ # must be the delegated administrator for this member account. If not
3164
+ # specified, the operation returns your own configuration.
2781
3165
  #
2782
3166
  # @return [Types::GetConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2783
3167
  #
2784
3168
  # * {Types::GetConfigurationResponse#ecr_configuration #ecr_configuration} => Types::EcrConfigurationState
2785
3169
  # * {Types::GetConfigurationResponse#ec2_configuration #ec2_configuration} => Types::Ec2ConfigurationState
2786
3170
  #
3171
+ # @example Request syntax with placeholder values
3172
+ #
3173
+ # resp = client.get_configuration({
3174
+ # account_id: "AccountId",
3175
+ # })
3176
+ #
2787
3177
  # @example Response structure
2788
3178
  #
2789
3179
  # resp.ecr_configuration.rescan_duration_state.rescan_duration #=> String, one of "LIFETIME", "DAYS_30", "DAYS_180", "DAYS_14", "DAYS_60", "DAYS_90"
@@ -2871,7 +3261,7 @@ module Aws::Inspector2
2871
3261
  #
2872
3262
  # resp = client.get_encryption_key({
2873
3263
  # scan_type: "NETWORK", # required, accepts NETWORK, PACKAGE, CODE
2874
- # resource_type: "AWS_EC2_INSTANCE", # required, accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_ECR_REPOSITORY, AWS_LAMBDA_FUNCTION, CODE_REPOSITORY
3264
+ # resource_type: "AWS_EC2_INSTANCE", # required, accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_ECR_REPOSITORY, AWS_LAMBDA_FUNCTION, CODE_REPOSITORY, Microsoft.Compute/virtualMachines, Microsoft.ContainerRegistry/registry/containerImage, Microsoft.Web/sites
2875
3265
  # })
2876
3266
  #
2877
3267
  # @example Response structure
@@ -3069,6 +3459,63 @@ module Aws::Inspector2
3069
3459
  # resp.filter_criteria.code_repository_provider_type #=> Array
3070
3460
  # resp.filter_criteria.code_repository_provider_type[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3071
3461
  # resp.filter_criteria.code_repository_provider_type[0].value #=> String
3462
+ # resp.filter_criteria.cloud_provider #=> Array
3463
+ # resp.filter_criteria.cloud_provider[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3464
+ # resp.filter_criteria.cloud_provider[0].value #=> String
3465
+ # resp.filter_criteria.cloud_provider_region #=> Array
3466
+ # resp.filter_criteria.cloud_provider_region[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3467
+ # resp.filter_criteria.cloud_provider_region[0].value #=> String
3468
+ # resp.filter_criteria.cloud_provider_account_id #=> Array
3469
+ # resp.filter_criteria.cloud_provider_account_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3470
+ # resp.filter_criteria.cloud_provider_account_id[0].value #=> String
3471
+ # resp.filter_criteria.cloud_provider_org_id #=> Array
3472
+ # resp.filter_criteria.cloud_provider_org_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3473
+ # resp.filter_criteria.cloud_provider_org_id[0].value #=> String
3474
+ # resp.filter_criteria.cloud_vm_image_reference #=> Array
3475
+ # resp.filter_criteria.cloud_vm_image_reference[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3476
+ # resp.filter_criteria.cloud_vm_image_reference[0].value #=> String
3477
+ # resp.filter_criteria.cloud_vm_network_id #=> Array
3478
+ # resp.filter_criteria.cloud_vm_network_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3479
+ # resp.filter_criteria.cloud_vm_network_id[0].value #=> String
3480
+ # resp.filter_criteria.cloud_vm_subnet_ids #=> Array
3481
+ # resp.filter_criteria.cloud_vm_subnet_ids[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3482
+ # resp.filter_criteria.cloud_vm_subnet_ids[0].value #=> String
3483
+ # resp.filter_criteria.cloud_image_repository_name #=> Array
3484
+ # resp.filter_criteria.cloud_image_repository_name[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3485
+ # resp.filter_criteria.cloud_image_repository_name[0].value #=> String
3486
+ # resp.filter_criteria.cloud_image_registry #=> Array
3487
+ # resp.filter_criteria.cloud_image_registry[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3488
+ # resp.filter_criteria.cloud_image_registry[0].value #=> String
3489
+ # resp.filter_criteria.cloud_image_digest #=> Array
3490
+ # resp.filter_criteria.cloud_image_digest[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3491
+ # resp.filter_criteria.cloud_image_digest[0].value #=> String
3492
+ # resp.filter_criteria.cloud_image_tags #=> Array
3493
+ # resp.filter_criteria.cloud_image_tags[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3494
+ # resp.filter_criteria.cloud_image_tags[0].value #=> String
3495
+ # resp.filter_criteria.cloud_image_pushed_at #=> Array
3496
+ # resp.filter_criteria.cloud_image_pushed_at[0].start_inclusive #=> Time
3497
+ # resp.filter_criteria.cloud_image_pushed_at[0].end_inclusive #=> Time
3498
+ # resp.filter_criteria.cloud_image_architecture #=> Array
3499
+ # resp.filter_criteria.cloud_image_architecture[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3500
+ # resp.filter_criteria.cloud_image_architecture[0].value #=> String
3501
+ # resp.filter_criteria.cloud_image_last_in_use_at #=> Array
3502
+ # resp.filter_criteria.cloud_image_last_in_use_at[0].start_inclusive #=> Time
3503
+ # resp.filter_criteria.cloud_image_last_in_use_at[0].end_inclusive #=> Time
3504
+ # resp.filter_criteria.cloud_image_in_use_count #=> Array
3505
+ # resp.filter_criteria.cloud_image_in_use_count[0].upper_inclusive #=> Float
3506
+ # resp.filter_criteria.cloud_image_in_use_count[0].lower_inclusive #=> Float
3507
+ # resp.filter_criteria.cloud_serverless_function_name #=> Array
3508
+ # resp.filter_criteria.cloud_serverless_function_name[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3509
+ # resp.filter_criteria.cloud_serverless_function_name[0].value #=> String
3510
+ # resp.filter_criteria.cloud_serverless_function_runtime #=> Array
3511
+ # resp.filter_criteria.cloud_serverless_function_runtime[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3512
+ # resp.filter_criteria.cloud_serverless_function_runtime[0].value #=> String
3513
+ # resp.filter_criteria.cloud_serverless_function_last_modified_at #=> Array
3514
+ # resp.filter_criteria.cloud_serverless_function_last_modified_at[0].start_inclusive #=> Time
3515
+ # resp.filter_criteria.cloud_serverless_function_last_modified_at[0].end_inclusive #=> Time
3516
+ # resp.filter_criteria.cloud_serverless_function_execution_role #=> Array
3517
+ # resp.filter_criteria.cloud_serverless_function_execution_role[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3518
+ # resp.filter_criteria.cloud_serverless_function_execution_role[0].value #=> String
3072
3519
  #
3073
3520
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/GetFindingsReportStatus AWS API Documentation
3074
3521
  #
@@ -3942,6 +4389,254 @@ module Aws::Inspector2
3942
4389
  req.send_request(options)
3943
4390
  end
3944
4391
 
4392
+ # Lists scan configurations for Amazon Web Services Config connectors.
4393
+ # Results are paginated. Use the `nextToken` parameter to retrieve the
4394
+ # next page of results.
4395
+ #
4396
+ # @option params [Array<String>] :aws_config_connector_arns
4397
+ # The list of Amazon Web Services Config connector ARNs to filter
4398
+ # results.
4399
+ #
4400
+ # @option params [Integer] :max_results
4401
+ # The maximum number of results to return in a single call. Valid range
4402
+ # is 1 to 50. To retrieve the remaining results, make another request
4403
+ # with the `nextToken` value returned from this request.
4404
+ #
4405
+ # @option params [String] :next_token
4406
+ # A token to use for paginating results. Set this value to null for the
4407
+ # first request. For subsequent calls, use the `nextToken` value
4408
+ # returned from the previous request.
4409
+ #
4410
+ # @return [Types::ListConnectorScanConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4411
+ #
4412
+ # * {Types::ListConnectorScanConfigurationsResponse#scan_configurations #scan_configurations} => Array&lt;Types::ConnectorScanConfigurationItem&gt;
4413
+ # * {Types::ListConnectorScanConfigurationsResponse#next_token #next_token} => String
4414
+ #
4415
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4416
+ #
4417
+ #
4418
+ # @example Example: List scan configurations for a specific AWS Config connector
4419
+ #
4420
+ # resp = client.list_connector_scan_configurations({
4421
+ # aws_config_connector_arns: [
4422
+ # "arn:aws:config:us-east-1:123456789012:connector/azure/a7bc5463-04ce-4b52-901e-f26f7292a4a7/2fbed4bd-5b95-4947-a751-8defc76ecdae",
4423
+ # ],
4424
+ # max_results: 10,
4425
+ # })
4426
+ #
4427
+ # resp.to_h outputs the following:
4428
+ # {
4429
+ # scan_configurations: [
4430
+ # {
4431
+ # aws_config_connector_arn: "arn:aws:config:us-east-1:123456789012:connector/azure/a7bc5463-04ce-4b52-901e-f26f7292a4a7/2fbed4bd-5b95-4947-a751-8defc76ecdae",
4432
+ # connector_arns: [
4433
+ # "arn:aws:inspector2:us-east-1:123456789012:connector/6ccf8549-b52b-57ca-bf52-a2266da3c53a",
4434
+ # ],
4435
+ # scan_configuration: {
4436
+ # container_image_scanning: {
4437
+ # pull_duration: "DAYS_14",
4438
+ # push_duration: "DAYS_30",
4439
+ # },
4440
+ # },
4441
+ # },
4442
+ # ],
4443
+ # }
4444
+ #
4445
+ # @example Request syntax with placeholder values
4446
+ #
4447
+ # resp = client.list_connector_scan_configurations({
4448
+ # aws_config_connector_arns: ["AwsConfigConnectorArn"],
4449
+ # max_results: 1,
4450
+ # next_token: "ConnectorNextToken",
4451
+ # })
4452
+ #
4453
+ # @example Response structure
4454
+ #
4455
+ # resp.scan_configurations #=> Array
4456
+ # resp.scan_configurations[0].aws_config_connector_arn #=> String
4457
+ # resp.scan_configurations[0].connector_arns #=> Array
4458
+ # resp.scan_configurations[0].connector_arns[0] #=> String
4459
+ # resp.scan_configurations[0].scan_configuration.container_image_scanning.push_duration #=> String, one of "LIFETIME", "DAYS_3", "DAYS_7", "DAYS_30", "DAYS_180", "DAYS_14", "DAYS_60", "DAYS_90"
4460
+ # resp.scan_configurations[0].scan_configuration.container_image_scanning.pull_duration #=> String, one of "DAYS_3", "DAYS_7", "DAYS_14", "DAYS_30", "DAYS_60", "DAYS_90", "DAYS_180"
4461
+ # resp.next_token #=> String
4462
+ #
4463
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListConnectorScanConfigurations AWS API Documentation
4464
+ #
4465
+ # @overload list_connector_scan_configurations(params = {})
4466
+ # @param [Hash] params ({})
4467
+ def list_connector_scan_configurations(params = {}, options = {})
4468
+ req = build_request(:list_connector_scan_configurations, params)
4469
+ req.send_request(options)
4470
+ end
4471
+
4472
+ # Lists connectors in your account. Results are paginated. Use the
4473
+ # `nextToken` parameter to retrieve the next page of results.
4474
+ #
4475
+ # @option params [Integer] :max_results
4476
+ # The maximum number of results to return in a single call. To retrieve
4477
+ # the remaining results, make another request with the `nextToken` value
4478
+ # returned from this request.
4479
+ #
4480
+ # @option params [String] :next_token
4481
+ # A token to use for paginating results. Set this value to null for the
4482
+ # first request. For subsequent calls, use the `nextToken` value
4483
+ # returned from the previous request.
4484
+ #
4485
+ # @option params [Types::ConnectorFilterCriteria] :filter_criteria
4486
+ # The filter criteria to apply to the list of connectors.
4487
+ #
4488
+ # @return [Types::ListConnectorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4489
+ #
4490
+ # * {Types::ListConnectorsResponse#items #items} => Array&lt;Types::Connector&gt;
4491
+ # * {Types::ListConnectorsResponse#next_token #next_token} => String
4492
+ #
4493
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4494
+ #
4495
+ #
4496
+ # @example Example: List all Azure customer-managed connectors
4497
+ #
4498
+ # resp = client.list_connectors({
4499
+ # filter_criteria: {
4500
+ # connector_type: [
4501
+ # {
4502
+ # value: "CUSTOMER_MANAGED",
4503
+ # comparison: "EQUALS",
4504
+ # },
4505
+ # ],
4506
+ # provider: [
4507
+ # {
4508
+ # value: "AZURE",
4509
+ # comparison: "EQUALS",
4510
+ # },
4511
+ # ],
4512
+ # },
4513
+ # max_results: 10,
4514
+ # })
4515
+ #
4516
+ # resp.to_h outputs the following:
4517
+ # {
4518
+ # items: [
4519
+ # {
4520
+ # name: "my-azure-connector",
4521
+ # aws_config_connector_arn: "arn:aws:config:us-east-1:123456789012:connector/azure/a7bc5463-04ce-4b52-901e-f26f7292a4a7/2fbed4bd-5b95-4947-a751-8defc76ecdae",
4522
+ # azure_regions: [
4523
+ # "eastus",
4524
+ # ],
4525
+ # connector_arn: "arn:aws:inspector2:us-east-1:123456789012:connector/6ccf8549-b52b-57ca-bf52-a2266da3c53a",
4526
+ # created_at: Time.parse("2026-04-20T21:00:00.000Z"),
4527
+ # description: "Azure subscription scanner",
4528
+ # enablement_status: "ENABLED",
4529
+ # health: {
4530
+ # connector_status: "CONNECTED",
4531
+ # last_checked_at: Time.parse("2026-04-20T21:57:06.400Z"),
4532
+ # },
4533
+ # provider: "AZURE",
4534
+ # scope_configuration: {
4535
+ # vm_scanning: {
4536
+ # scope_type: "SUBSCRIPTION",
4537
+ # scope_values: [
4538
+ # "552802f5-1492-4184-bbae-7291c9939b16",
4539
+ # ],
4540
+ # state: "ACTIVE",
4541
+ # },
4542
+ # },
4543
+ # updated_at: Time.parse("2026-04-20T21:57:06.400Z"),
4544
+ # },
4545
+ # ],
4546
+ # }
4547
+ #
4548
+ # @example Request syntax with placeholder values
4549
+ #
4550
+ # resp = client.list_connectors({
4551
+ # max_results: 1,
4552
+ # next_token: "ConnectorNextToken",
4553
+ # filter_criteria: {
4554
+ # connector_arns: [
4555
+ # {
4556
+ # comparison: "EQUALS", # required, accepts EQUALS
4557
+ # value: "ConnectorArn", # required
4558
+ # },
4559
+ # ],
4560
+ # accounts: [
4561
+ # {
4562
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
4563
+ # value: "StringInput", # required
4564
+ # },
4565
+ # ],
4566
+ # aws_config_connector_arns: [
4567
+ # {
4568
+ # comparison: "EQUALS", # required, accepts EQUALS
4569
+ # value: "AwsConfigConnectorArn", # required
4570
+ # },
4571
+ # ],
4572
+ # connector_type: [
4573
+ # {
4574
+ # comparison: "EQUALS", # required, accepts EQUALS
4575
+ # value: "CUSTOMER_MANAGED", # required, accepts CUSTOMER_MANAGED, SERVICE_LINKED
4576
+ # },
4577
+ # ],
4578
+ # provider: [
4579
+ # {
4580
+ # comparison: "EQUALS", # required, accepts EQUALS
4581
+ # value: "AZURE", # required, accepts AZURE
4582
+ # },
4583
+ # ],
4584
+ # },
4585
+ # })
4586
+ #
4587
+ # @example Response structure
4588
+ #
4589
+ # resp.items #=> Array
4590
+ # resp.items[0].connector_arn #=> String
4591
+ # resp.items[0].name #=> String
4592
+ # resp.items[0].description #=> String
4593
+ # resp.items[0].provider #=> String, one of "AZURE"
4594
+ # resp.items[0].enablement_status #=> String, one of "ENABLED", "PENDING_ENABLEMENT", "FAILED_TO_ENABLE", "PENDING_UPDATE", "FAILED_TO_UPDATE", "PENDING_DELETION", "DELETED", "FAILED_TO_DELETE"
4595
+ # resp.items[0].enablement_status_reason #=> String
4596
+ # resp.items[0].health.connector_status #=> String, one of "CONNECTED", "DEGRADED", "FAILED_TO_CONNECT", "PENDING_AUTHORIZATION", "PENDING_CONFIGURATION", "UNKNOWN"
4597
+ # resp.items[0].health.last_checked_at #=> Time
4598
+ # resp.items[0].health.message #=> String
4599
+ # resp.items[0].created_at #=> Time
4600
+ # resp.items[0].updated_at #=> Time
4601
+ # resp.items[0].azure_regions #=> Array
4602
+ # resp.items[0].azure_regions[0] #=> String
4603
+ # resp.items[0].aws_config_connector_arn #=> String
4604
+ # resp.items[0].scope_configuration.vm_scanning.scope_type #=> String, one of "TENANT", "SUBSCRIPTION"
4605
+ # resp.items[0].scope_configuration.vm_scanning.scope_values #=> Array
4606
+ # resp.items[0].scope_configuration.vm_scanning.scope_values[0] #=> String
4607
+ # resp.items[0].scope_configuration.vm_scanning.state #=> String, one of "ACTIVE", "PENDING", "ERROR", "DISABLED"
4608
+ # resp.items[0].scope_configuration.vm_scanning.state_reason #=> String
4609
+ # resp.items[0].scope_configuration.container_image_scanning.scope_type #=> String, one of "TENANT", "SUBSCRIPTION"
4610
+ # resp.items[0].scope_configuration.container_image_scanning.scope_values #=> Array
4611
+ # resp.items[0].scope_configuration.container_image_scanning.scope_values[0] #=> String
4612
+ # resp.items[0].scope_configuration.container_image_scanning.state #=> String, one of "ACTIVE", "PENDING", "ERROR", "DISABLED"
4613
+ # resp.items[0].scope_configuration.container_image_scanning.state_reason #=> String
4614
+ # resp.items[0].scope_configuration.serverless_scanning.scope_type #=> String, one of "TENANT", "SUBSCRIPTION"
4615
+ # resp.items[0].scope_configuration.serverless_scanning.scope_values #=> Array
4616
+ # resp.items[0].scope_configuration.serverless_scanning.scope_values[0] #=> String
4617
+ # resp.items[0].scope_configuration.serverless_scanning.state #=> String, one of "ACTIVE", "PENDING", "ERROR", "DISABLED"
4618
+ # resp.items[0].scope_configuration.serverless_scanning.state_reason #=> String
4619
+ # resp.items[0].tags #=> Hash
4620
+ # resp.items[0].tags["ConnectorTagKey"] #=> String
4621
+ # resp.items[0].auto_install_vm_scanner #=> Boolean
4622
+ # resp.next_token #=> String
4623
+ #
4624
+ #
4625
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
4626
+ #
4627
+ # * connector_connected
4628
+ # * connector_deleted
4629
+ # * connector_enabled
4630
+ #
4631
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListConnectors AWS API Documentation
4632
+ #
4633
+ # @overload list_connectors(params = {})
4634
+ # @param [Hash] params ({})
4635
+ def list_connectors(params = {}, options = {})
4636
+ req = build_request(:list_connectors, params)
4637
+ req.send_request(options)
4638
+ end
4639
+
3945
4640
  # Lists coverage details for your environment.
3946
4641
  #
3947
4642
  # @option params [Integer] :max_results
@@ -4103,6 +4798,74 @@ module Aws::Inspector2
4103
4798
  # value: "CoverageStringInput", # required
4104
4799
  # },
4105
4800
  # ],
4801
+ # cloud_provider: [
4802
+ # {
4803
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
4804
+ # value: "CoverageStringInput", # required
4805
+ # },
4806
+ # ],
4807
+ # cloud_provider_account_id: [
4808
+ # {
4809
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
4810
+ # value: "CoverageStringInput", # required
4811
+ # },
4812
+ # ],
4813
+ # cloud_provider_region: [
4814
+ # {
4815
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
4816
+ # value: "CoverageStringInput", # required
4817
+ # },
4818
+ # ],
4819
+ # cloud_vm_instance_tags: [
4820
+ # {
4821
+ # comparison: "EQUALS", # required, accepts EQUALS
4822
+ # key: "NonEmptyString", # required
4823
+ # value: "NonEmptyString",
4824
+ # },
4825
+ # ],
4826
+ # cloud_container_image_tags: [
4827
+ # {
4828
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
4829
+ # value: "CoverageStringInput", # required
4830
+ # },
4831
+ # ],
4832
+ # cloud_container_repository_name: [
4833
+ # {
4834
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
4835
+ # value: "CoverageStringInput", # required
4836
+ # },
4837
+ # ],
4838
+ # cloud_container_registry_name: [
4839
+ # {
4840
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
4841
+ # value: "CoverageStringInput", # required
4842
+ # },
4843
+ # ],
4844
+ # cloud_serverless_function_name: [
4845
+ # {
4846
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
4847
+ # value: "CoverageStringInput", # required
4848
+ # },
4849
+ # ],
4850
+ # cloud_serverless_function_runtime: [
4851
+ # {
4852
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
4853
+ # value: "CoverageStringInput", # required
4854
+ # },
4855
+ # ],
4856
+ # cloud_serverless_function_tags: [
4857
+ # {
4858
+ # comparison: "EQUALS", # required, accepts EQUALS
4859
+ # key: "NonEmptyString", # required
4860
+ # value: "NonEmptyString",
4861
+ # },
4862
+ # ],
4863
+ # cloud_provider_org_id: [
4864
+ # {
4865
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
4866
+ # value: "CoverageStringInput", # required
4867
+ # },
4868
+ # ],
4106
4869
  # },
4107
4870
  # })
4108
4871
  #
@@ -4110,12 +4873,12 @@ module Aws::Inspector2
4110
4873
  #
4111
4874
  # resp.next_token #=> String
4112
4875
  # resp.covered_resources #=> Array
4113
- # resp.covered_resources[0].resource_type #=> String, one of "AWS_EC2_INSTANCE", "AWS_ECR_CONTAINER_IMAGE", "AWS_ECR_REPOSITORY", "AWS_LAMBDA_FUNCTION", "CODE_REPOSITORY"
4876
+ # resp.covered_resources[0].resource_type #=> String, one of "AWS_EC2_INSTANCE", "AWS_ECR_CONTAINER_IMAGE", "AWS_ECR_REPOSITORY", "AWS_LAMBDA_FUNCTION", "CODE_REPOSITORY", "Microsoft.Compute/virtualMachines", "Microsoft.ContainerRegistry/registry/containerImage", "Microsoft.ContainerRegistry/registry/containerRepository", "Microsoft.Web/sites", "Microsoft.ContainerRegistry/registries"
4114
4877
  # resp.covered_resources[0].resource_id #=> String
4115
4878
  # resp.covered_resources[0].account_id #=> String
4116
4879
  # resp.covered_resources[0].scan_type #=> String, one of "NETWORK", "PACKAGE", "CODE"
4117
4880
  # resp.covered_resources[0].scan_status.status_code #=> String, one of "ACTIVE", "INACTIVE"
4118
- # 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", "EXCLUDED_BY_TAG", "UNSUPPORTED_RUNTIME", "UNSUPPORTED_MEDIA_TYPE", "UNSUPPORTED_CONFIG_FILE", "DEEP_INSPECTION_PACKAGE_COLLECTION_LIMIT_EXCEEDED", "DEEP_INSPECTION_DAILY_SSM_INVENTORY_LIMIT_EXCEEDED", "DEEP_INSPECTION_COLLECTION_TIME_LIMIT_EXCEEDED", "DEEP_INSPECTION_NO_INVENTORY", "AGENTLESS_INSTANCE_STORAGE_LIMIT_EXCEEDED", "AGENTLESS_INSTANCE_COLLECTION_TIME_LIMIT_EXCEEDED", "PENDING_REVIVAL_SCAN", "INTEGRATION_CONNECTION_LOST", "ACCESS_DENIED_TO_ENCRYPTION_KEY", "UNSUPPORTED_LANGUAGE", "NO_SCAN_CONFIGURATION_ASSOCIATED", "SCAN_IN_PROGRESS", "IMAGE_ARCHIVED", "UNSUPPORTED_CODE_ARTIFACTS"
4881
+ # 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", "EXCLUDED_BY_TAG", "UNSUPPORTED_RUNTIME", "UNSUPPORTED_MEDIA_TYPE", "UNSUPPORTED_CONFIG_FILE", "DEEP_INSPECTION_PACKAGE_COLLECTION_LIMIT_EXCEEDED", "DEEP_INSPECTION_DAILY_SSM_INVENTORY_LIMIT_EXCEEDED", "DEEP_INSPECTION_COLLECTION_TIME_LIMIT_EXCEEDED", "DEEP_INSPECTION_NO_INVENTORY", "AGENTLESS_INSTANCE_STORAGE_LIMIT_EXCEEDED", "AGENTLESS_INSTANCE_COLLECTION_TIME_LIMIT_EXCEEDED", "PENDING_REVIVAL_SCAN", "INTEGRATION_CONNECTION_LOST", "ACCESS_DENIED_TO_ENCRYPTION_KEY", "UNSUPPORTED_LANGUAGE", "NO_SCAN_CONFIGURATION_ASSOCIATED", "SCAN_IN_PROGRESS", "IMAGE_ARCHIVED", "UNSUPPORTED_CODE_ARTIFACTS", "RESOURCE_UNMANAGED", "RESOURCE_STOPPED"
4119
4882
  # resp.covered_resources[0].resource_metadata.ecr_repository.name #=> String
4120
4883
  # resp.covered_resources[0].resource_metadata.ecr_repository.scan_frequency #=> String, one of "MANUAL", "SCAN_ON_PUSH", "CONTINUOUS_SCAN"
4121
4884
  # resp.covered_resources[0].resource_metadata.ecr_image.tags #=> Array
@@ -4132,7 +4895,7 @@ module Aws::Inspector2
4132
4895
  # resp.covered_resources[0].resource_metadata.lambda_function.layers #=> Array
4133
4896
  # resp.covered_resources[0].resource_metadata.lambda_function.layers[0] #=> String
4134
4897
  # resp.covered_resources[0].resource_metadata.lambda_function.function_name #=> String
4135
- # resp.covered_resources[0].resource_metadata.lambda_function.runtime #=> String, one of "NODEJS", "NODEJS_12_X", "NODEJS_14_X", "NODEJS_16_X", "JAVA_8", "JAVA_8_AL2", "JAVA_11", "PYTHON_3_7", "PYTHON_3_8", "PYTHON_3_9", "UNSUPPORTED", "NODEJS_18_X", "GO_1_X", "JAVA_17", "PYTHON_3_10", "PYTHON_3_11", "DOTNETCORE_3_1", "DOTNET_6", "DOTNET_7", "RUBY_2_7", "RUBY_3_2", "DOTNET_10", "NODEJS_24_X"
4898
+ # resp.covered_resources[0].resource_metadata.lambda_function.runtime #=> String, one of "NODEJS", "NODEJS_12_X", "NODEJS_14_X", "NODEJS_16_X", "JAVA_8", "JAVA_8_AL2", "JAVA_11", "PYTHON_3_7", "PYTHON_3_8", "PYTHON_3_9", "UNSUPPORTED", "NODEJS_18_X", "GO_1_X", "JAVA_17", "PYTHON_3_10", "PYTHON_3_11", "DOTNETCORE_3_1", "DOTNET_6", "DOTNET_7", "RUBY_2_7", "RUBY_3_2", "DOTNET_10", "NODEJS_24_X", "NODEJS_22_X", "JAVA_21", "JAVA_25"
4136
4899
  # resp.covered_resources[0].resource_metadata.code_repository.project_name #=> String
4137
4900
  # resp.covered_resources[0].resource_metadata.code_repository.integration_arn #=> String
4138
4901
  # resp.covered_resources[0].resource_metadata.code_repository.provider_type #=> String
@@ -4149,9 +4912,31 @@ module Aws::Inspector2
4149
4912
  # resp.covered_resources[0].resource_metadata.code_repository.on_demand_scan.last_scanned_commit_id #=> String
4150
4913
  # resp.covered_resources[0].resource_metadata.code_repository.on_demand_scan.last_scan_at #=> Time
4151
4914
  # resp.covered_resources[0].resource_metadata.code_repository.on_demand_scan.scan_status.status_code #=> String, one of "ACTIVE", "INACTIVE"
4152
- # resp.covered_resources[0].resource_metadata.code_repository.on_demand_scan.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", "EXCLUDED_BY_TAG", "UNSUPPORTED_RUNTIME", "UNSUPPORTED_MEDIA_TYPE", "UNSUPPORTED_CONFIG_FILE", "DEEP_INSPECTION_PACKAGE_COLLECTION_LIMIT_EXCEEDED", "DEEP_INSPECTION_DAILY_SSM_INVENTORY_LIMIT_EXCEEDED", "DEEP_INSPECTION_COLLECTION_TIME_LIMIT_EXCEEDED", "DEEP_INSPECTION_NO_INVENTORY", "AGENTLESS_INSTANCE_STORAGE_LIMIT_EXCEEDED", "AGENTLESS_INSTANCE_COLLECTION_TIME_LIMIT_EXCEEDED", "PENDING_REVIVAL_SCAN", "INTEGRATION_CONNECTION_LOST", "ACCESS_DENIED_TO_ENCRYPTION_KEY", "UNSUPPORTED_LANGUAGE", "NO_SCAN_CONFIGURATION_ASSOCIATED", "SCAN_IN_PROGRESS", "IMAGE_ARCHIVED", "UNSUPPORTED_CODE_ARTIFACTS"
4915
+ # resp.covered_resources[0].resource_metadata.code_repository.on_demand_scan.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", "EXCLUDED_BY_TAG", "UNSUPPORTED_RUNTIME", "UNSUPPORTED_MEDIA_TYPE", "UNSUPPORTED_CONFIG_FILE", "DEEP_INSPECTION_PACKAGE_COLLECTION_LIMIT_EXCEEDED", "DEEP_INSPECTION_DAILY_SSM_INVENTORY_LIMIT_EXCEEDED", "DEEP_INSPECTION_COLLECTION_TIME_LIMIT_EXCEEDED", "DEEP_INSPECTION_NO_INVENTORY", "AGENTLESS_INSTANCE_STORAGE_LIMIT_EXCEEDED", "AGENTLESS_INSTANCE_COLLECTION_TIME_LIMIT_EXCEEDED", "PENDING_REVIVAL_SCAN", "INTEGRATION_CONNECTION_LOST", "ACCESS_DENIED_TO_ENCRYPTION_KEY", "UNSUPPORTED_LANGUAGE", "NO_SCAN_CONFIGURATION_ASSOCIATED", "SCAN_IN_PROGRESS", "IMAGE_ARCHIVED", "UNSUPPORTED_CODE_ARTIFACTS", "RESOURCE_UNMANAGED", "RESOURCE_STOPPED"
4916
+ # resp.covered_resources[0].resource_metadata.vm_instance.tags #=> Hash
4917
+ # resp.covered_resources[0].resource_metadata.vm_instance.tags["MapKey"] #=> String
4918
+ # resp.covered_resources[0].resource_metadata.vm_instance.platform #=> String, one of "WINDOWS", "LINUX", "UNKNOWN"
4919
+ # resp.covered_resources[0].resource_metadata.vm_instance.inventory_hash #=> String
4920
+ # resp.covered_resources[0].resource_metadata.vm_instance.vm_image_reference #=> String
4921
+ # resp.covered_resources[0].resource_metadata.container_image.image_tags #=> Array
4922
+ # resp.covered_resources[0].resource_metadata.container_image.image_tags[0] #=> String
4923
+ # resp.covered_resources[0].resource_metadata.container_image.image_pulled_at #=> Time
4924
+ # resp.covered_resources[0].resource_metadata.container_image.last_in_use_at #=> Time
4925
+ # resp.covered_resources[0].resource_metadata.container_image.in_use_count #=> Integer
4926
+ # resp.covered_resources[0].resource_metadata.container_repository.name #=> String
4927
+ # resp.covered_resources[0].resource_metadata.container_repository.scan_frequency #=> String
4928
+ # resp.covered_resources[0].resource_metadata.container_registry.name #=> String
4929
+ # resp.covered_resources[0].resource_metadata.serverless_function.serverless_function_name #=> String
4930
+ # resp.covered_resources[0].resource_metadata.serverless_function.runtime #=> String
4931
+ # resp.covered_resources[0].resource_metadata.serverless_function.function_tags #=> Hash
4932
+ # resp.covered_resources[0].resource_metadata.serverless_function.function_tags["MapKey"] #=> String
4153
4933
  # resp.covered_resources[0].last_scanned_at #=> Time
4154
- # resp.covered_resources[0].scan_mode #=> String, one of "EC2_SSM_AGENT_BASED", "EC2_AGENTLESS", "EC2_INSPECTOR_AGENT_BASED"
4934
+ # resp.covered_resources[0].scan_mode #=> String, one of "EC2_SSM_AGENT_BASED", "EC2_AGENTLESS", "EC2_INSPECTOR_AGENT_BASED", "VM_INSPECTOR_AGENT_BASED"
4935
+ # resp.covered_resources[0].provider #=> String, one of "AWS", "AZURE"
4936
+ # resp.covered_resources[0].provider_account_id #=> String
4937
+ # resp.covered_resources[0].provider_org_id #=> String
4938
+ # resp.covered_resources[0].provider_region #=> String
4939
+ # resp.covered_resources[0].provider_partition #=> String
4155
4940
  #
4156
4941
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListCoverage AWS API Documentation
4157
4942
  #
@@ -4318,60 +5103,128 @@ module Aws::Inspector2
4318
5103
  # value: "CoverageStringInput", # required
4319
5104
  # },
4320
5105
  # ],
4321
- # },
4322
- # group_by: "SCAN_STATUS_CODE", # accepts SCAN_STATUS_CODE, SCAN_STATUS_REASON, ACCOUNT_ID, RESOURCE_TYPE, ECR_REPOSITORY_NAME
4323
- # next_token: "NextToken",
4324
- # })
4325
- #
4326
- # @example Response structure
4327
- #
4328
- # resp.counts_by_group #=> Array
4329
- # resp.counts_by_group[0].count #=> Integer
4330
- # resp.counts_by_group[0].group_key #=> String, one of "SCAN_STATUS_CODE", "SCAN_STATUS_REASON", "ACCOUNT_ID", "RESOURCE_TYPE", "ECR_REPOSITORY_NAME"
4331
- # resp.total_counts #=> Integer
4332
- # resp.next_token #=> String
4333
- #
4334
- # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListCoverageStatistics AWS API Documentation
4335
- #
4336
- # @overload list_coverage_statistics(params = {})
4337
- # @param [Hash] params ({})
4338
- def list_coverage_statistics(params = {}, options = {})
4339
- req = build_request(:list_coverage_statistics, params)
4340
- req.send_request(options)
4341
- end
4342
-
4343
- # Lists information about the Amazon Inspector delegated administrator
4344
- # of your organization.
4345
- #
4346
- # @option params [Integer] :max_results
4347
- # The maximum number of results the response can return. If your request
4348
- # would return more than the maximum the response will return a
4349
- # `nextToken` value, use this value when you call the action again to
4350
- # get the remaining results.
4351
- #
4352
- # @option params [String] :next_token
4353
- # A token to use for paginating results that are returned in the
4354
- # response. Set the value of this parameter to null for the first
4355
- # request to a list action. If your response returns more than the
4356
- # `maxResults` maximum value it will also return a `nextToken` value.
4357
- # For subsequent calls, use the `nextToken` value returned from the
4358
- # previous request to continue listing results after the first page.
4359
- #
4360
- # @return [Types::ListDelegatedAdminAccountsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4361
- #
4362
- # * {Types::ListDelegatedAdminAccountsResponse#delegated_admin_accounts #delegated_admin_accounts} => Array&lt;Types::DelegatedAdminAccount&gt;
4363
- # * {Types::ListDelegatedAdminAccountsResponse#next_token #next_token} => String
4364
- #
4365
- # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4366
- #
4367
- # @example Request syntax with placeholder values
4368
- #
4369
- # resp = client.list_delegated_admin_accounts({
4370
- # max_results: 1,
4371
- # next_token: "NextToken",
4372
- # })
4373
- #
4374
- # @example Response structure
5106
+ # cloud_provider: [
5107
+ # {
5108
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
5109
+ # value: "CoverageStringInput", # required
5110
+ # },
5111
+ # ],
5112
+ # cloud_provider_account_id: [
5113
+ # {
5114
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
5115
+ # value: "CoverageStringInput", # required
5116
+ # },
5117
+ # ],
5118
+ # cloud_provider_region: [
5119
+ # {
5120
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
5121
+ # value: "CoverageStringInput", # required
5122
+ # },
5123
+ # ],
5124
+ # cloud_vm_instance_tags: [
5125
+ # {
5126
+ # comparison: "EQUALS", # required, accepts EQUALS
5127
+ # key: "NonEmptyString", # required
5128
+ # value: "NonEmptyString",
5129
+ # },
5130
+ # ],
5131
+ # cloud_container_image_tags: [
5132
+ # {
5133
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
5134
+ # value: "CoverageStringInput", # required
5135
+ # },
5136
+ # ],
5137
+ # cloud_container_repository_name: [
5138
+ # {
5139
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
5140
+ # value: "CoverageStringInput", # required
5141
+ # },
5142
+ # ],
5143
+ # cloud_container_registry_name: [
5144
+ # {
5145
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
5146
+ # value: "CoverageStringInput", # required
5147
+ # },
5148
+ # ],
5149
+ # cloud_serverless_function_name: [
5150
+ # {
5151
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
5152
+ # value: "CoverageStringInput", # required
5153
+ # },
5154
+ # ],
5155
+ # cloud_serverless_function_runtime: [
5156
+ # {
5157
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
5158
+ # value: "CoverageStringInput", # required
5159
+ # },
5160
+ # ],
5161
+ # cloud_serverless_function_tags: [
5162
+ # {
5163
+ # comparison: "EQUALS", # required, accepts EQUALS
5164
+ # key: "NonEmptyString", # required
5165
+ # value: "NonEmptyString",
5166
+ # },
5167
+ # ],
5168
+ # cloud_provider_org_id: [
5169
+ # {
5170
+ # comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
5171
+ # value: "CoverageStringInput", # required
5172
+ # },
5173
+ # ],
5174
+ # },
5175
+ # group_by: "SCAN_STATUS_CODE", # accepts SCAN_STATUS_CODE, SCAN_STATUS_REASON, ACCOUNT_ID, RESOURCE_TYPE, ECR_REPOSITORY_NAME, PROVIDER, PROVIDER_ACCOUNT_ID, PROVIDER_REGION, PROVIDER_ORG_ID
5176
+ # next_token: "NextToken",
5177
+ # })
5178
+ #
5179
+ # @example Response structure
5180
+ #
5181
+ # resp.counts_by_group #=> Array
5182
+ # resp.counts_by_group[0].count #=> Integer
5183
+ # resp.counts_by_group[0].group_key #=> String, one of "SCAN_STATUS_CODE", "SCAN_STATUS_REASON", "ACCOUNT_ID", "RESOURCE_TYPE", "ECR_REPOSITORY_NAME", "PROVIDER", "PROVIDER_ACCOUNT_ID", "PROVIDER_REGION", "PROVIDER_ORG_ID"
5184
+ # resp.total_counts #=> Integer
5185
+ # resp.next_token #=> String
5186
+ #
5187
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListCoverageStatistics AWS API Documentation
5188
+ #
5189
+ # @overload list_coverage_statistics(params = {})
5190
+ # @param [Hash] params ({})
5191
+ def list_coverage_statistics(params = {}, options = {})
5192
+ req = build_request(:list_coverage_statistics, params)
5193
+ req.send_request(options)
5194
+ end
5195
+
5196
+ # Lists information about the Amazon Inspector delegated administrator
5197
+ # of your organization.
5198
+ #
5199
+ # @option params [Integer] :max_results
5200
+ # The maximum number of results the response can return. If your request
5201
+ # would return more than the maximum the response will return a
5202
+ # `nextToken` value, use this value when you call the action again to
5203
+ # get the remaining results.
5204
+ #
5205
+ # @option params [String] :next_token
5206
+ # A token to use for paginating results that are returned in the
5207
+ # response. Set the value of this parameter to null for the first
5208
+ # request to a list action. If your response returns more than the
5209
+ # `maxResults` maximum value it will also return a `nextToken` value.
5210
+ # For subsequent calls, use the `nextToken` value returned from the
5211
+ # previous request to continue listing results after the first page.
5212
+ #
5213
+ # @return [Types::ListDelegatedAdminAccountsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5214
+ #
5215
+ # * {Types::ListDelegatedAdminAccountsResponse#delegated_admin_accounts #delegated_admin_accounts} => Array&lt;Types::DelegatedAdminAccount&gt;
5216
+ # * {Types::ListDelegatedAdminAccountsResponse#next_token #next_token} => String
5217
+ #
5218
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
5219
+ #
5220
+ # @example Request syntax with placeholder values
5221
+ #
5222
+ # resp = client.list_delegated_admin_accounts({
5223
+ # max_results: 1,
5224
+ # next_token: "NextToken",
5225
+ # })
5226
+ #
5227
+ # @example Response structure
4375
5228
  #
4376
5229
  # resp.delegated_admin_accounts #=> Array
4377
5230
  # resp.delegated_admin_accounts[0].account_id #=> String
@@ -4584,6 +5437,63 @@ module Aws::Inspector2
4584
5437
  # resp.filters[0].criteria.code_repository_provider_type #=> Array
4585
5438
  # resp.filters[0].criteria.code_repository_provider_type[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
4586
5439
  # resp.filters[0].criteria.code_repository_provider_type[0].value #=> String
5440
+ # resp.filters[0].criteria.cloud_provider #=> Array
5441
+ # resp.filters[0].criteria.cloud_provider[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
5442
+ # resp.filters[0].criteria.cloud_provider[0].value #=> String
5443
+ # resp.filters[0].criteria.cloud_provider_region #=> Array
5444
+ # resp.filters[0].criteria.cloud_provider_region[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
5445
+ # resp.filters[0].criteria.cloud_provider_region[0].value #=> String
5446
+ # resp.filters[0].criteria.cloud_provider_account_id #=> Array
5447
+ # resp.filters[0].criteria.cloud_provider_account_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
5448
+ # resp.filters[0].criteria.cloud_provider_account_id[0].value #=> String
5449
+ # resp.filters[0].criteria.cloud_provider_org_id #=> Array
5450
+ # resp.filters[0].criteria.cloud_provider_org_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
5451
+ # resp.filters[0].criteria.cloud_provider_org_id[0].value #=> String
5452
+ # resp.filters[0].criteria.cloud_vm_image_reference #=> Array
5453
+ # resp.filters[0].criteria.cloud_vm_image_reference[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
5454
+ # resp.filters[0].criteria.cloud_vm_image_reference[0].value #=> String
5455
+ # resp.filters[0].criteria.cloud_vm_network_id #=> Array
5456
+ # resp.filters[0].criteria.cloud_vm_network_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
5457
+ # resp.filters[0].criteria.cloud_vm_network_id[0].value #=> String
5458
+ # resp.filters[0].criteria.cloud_vm_subnet_ids #=> Array
5459
+ # resp.filters[0].criteria.cloud_vm_subnet_ids[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
5460
+ # resp.filters[0].criteria.cloud_vm_subnet_ids[0].value #=> String
5461
+ # resp.filters[0].criteria.cloud_image_repository_name #=> Array
5462
+ # resp.filters[0].criteria.cloud_image_repository_name[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
5463
+ # resp.filters[0].criteria.cloud_image_repository_name[0].value #=> String
5464
+ # resp.filters[0].criteria.cloud_image_registry #=> Array
5465
+ # resp.filters[0].criteria.cloud_image_registry[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
5466
+ # resp.filters[0].criteria.cloud_image_registry[0].value #=> String
5467
+ # resp.filters[0].criteria.cloud_image_digest #=> Array
5468
+ # resp.filters[0].criteria.cloud_image_digest[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
5469
+ # resp.filters[0].criteria.cloud_image_digest[0].value #=> String
5470
+ # resp.filters[0].criteria.cloud_image_tags #=> Array
5471
+ # resp.filters[0].criteria.cloud_image_tags[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
5472
+ # resp.filters[0].criteria.cloud_image_tags[0].value #=> String
5473
+ # resp.filters[0].criteria.cloud_image_pushed_at #=> Array
5474
+ # resp.filters[0].criteria.cloud_image_pushed_at[0].start_inclusive #=> Time
5475
+ # resp.filters[0].criteria.cloud_image_pushed_at[0].end_inclusive #=> Time
5476
+ # resp.filters[0].criteria.cloud_image_architecture #=> Array
5477
+ # resp.filters[0].criteria.cloud_image_architecture[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
5478
+ # resp.filters[0].criteria.cloud_image_architecture[0].value #=> String
5479
+ # resp.filters[0].criteria.cloud_image_last_in_use_at #=> Array
5480
+ # resp.filters[0].criteria.cloud_image_last_in_use_at[0].start_inclusive #=> Time
5481
+ # resp.filters[0].criteria.cloud_image_last_in_use_at[0].end_inclusive #=> Time
5482
+ # resp.filters[0].criteria.cloud_image_in_use_count #=> Array
5483
+ # resp.filters[0].criteria.cloud_image_in_use_count[0].upper_inclusive #=> Float
5484
+ # resp.filters[0].criteria.cloud_image_in_use_count[0].lower_inclusive #=> Float
5485
+ # resp.filters[0].criteria.cloud_serverless_function_name #=> Array
5486
+ # resp.filters[0].criteria.cloud_serverless_function_name[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
5487
+ # resp.filters[0].criteria.cloud_serverless_function_name[0].value #=> String
5488
+ # resp.filters[0].criteria.cloud_serverless_function_runtime #=> Array
5489
+ # resp.filters[0].criteria.cloud_serverless_function_runtime[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
5490
+ # resp.filters[0].criteria.cloud_serverless_function_runtime[0].value #=> String
5491
+ # resp.filters[0].criteria.cloud_serverless_function_last_modified_at #=> Array
5492
+ # resp.filters[0].criteria.cloud_serverless_function_last_modified_at[0].start_inclusive #=> Time
5493
+ # resp.filters[0].criteria.cloud_serverless_function_last_modified_at[0].end_inclusive #=> Time
5494
+ # resp.filters[0].criteria.cloud_serverless_function_execution_role #=> Array
5495
+ # resp.filters[0].criteria.cloud_serverless_function_execution_role[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
5496
+ # resp.filters[0].criteria.cloud_serverless_function_execution_role[0].value #=> String
4587
5497
  # resp.filters[0].action #=> String, one of "NONE", "SUPPRESS"
4588
5498
  # resp.filters[0].created_at #=> Time
4589
5499
  # resp.filters[0].updated_at #=> Time
@@ -4641,7 +5551,7 @@ module Aws::Inspector2
4641
5551
  # @example Request syntax with placeholder values
4642
5552
  #
4643
5553
  # resp = client.list_finding_aggregations({
4644
- # aggregation_type: "FINDING_TYPE", # required, accepts FINDING_TYPE, PACKAGE, TITLE, REPOSITORY, AMI, AWS_EC2_INSTANCE, AWS_ECR_CONTAINER, IMAGE_LAYER, ACCOUNT, AWS_LAMBDA_FUNCTION, LAMBDA_LAYER, CODE_REPOSITORY
5554
+ # aggregation_type: "FINDING_TYPE", # required, accepts FINDING_TYPE, PACKAGE, TITLE, REPOSITORY, AMI, AWS_EC2_INSTANCE, AWS_ECR_CONTAINER, IMAGE_LAYER, ACCOUNT, AWS_LAMBDA_FUNCTION, LAMBDA_LAYER, CODE_REPOSITORY, VM_INSTANCE, CONTAINER_IMAGE, SERVERLESS_FUNCTION
4645
5555
  # next_token: "NextToken",
4646
5556
  # max_results: 1,
4647
5557
  # account_ids: [
@@ -4653,7 +5563,7 @@ module Aws::Inspector2
4653
5563
  # aggregation_request: {
4654
5564
  # account_aggregation: {
4655
5565
  # finding_type: "NETWORK_REACHABILITY", # accepts NETWORK_REACHABILITY, PACKAGE_VULNERABILITY, CODE_VULNERABILITY
4656
- # resource_type: "AWS_EC2_INSTANCE", # accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_LAMBDA_FUNCTION, CODE_REPOSITORY
5566
+ # resource_type: "AWS_EC2_INSTANCE", # accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_LAMBDA_FUNCTION, CODE_REPOSITORY, Microsoft.Compute/virtualMachines, Microsoft.ContainerRegistry/registry/containerImage, Microsoft.Web/sites
4657
5567
  # sort_order: "ASC", # accepts ASC, DESC
4658
5568
  # sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
4659
5569
  # },
@@ -4744,7 +5654,7 @@ module Aws::Inspector2
4744
5654
  # },
4745
5655
  # finding_type_aggregation: {
4746
5656
  # finding_type: "NETWORK_REACHABILITY", # accepts NETWORK_REACHABILITY, PACKAGE_VULNERABILITY, CODE_VULNERABILITY
4747
- # resource_type: "AWS_EC2_INSTANCE", # accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_LAMBDA_FUNCTION, CODE_REPOSITORY
5657
+ # resource_type: "AWS_EC2_INSTANCE", # accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_LAMBDA_FUNCTION, CODE_REPOSITORY, Microsoft.Compute/virtualMachines, Microsoft.ContainerRegistry/registry/containerImage, Microsoft.Web/sites
4748
5658
  # sort_order: "ASC", # accepts ASC, DESC
4749
5659
  # sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
4750
5660
  # },
@@ -4767,6 +5677,36 @@ module Aws::Inspector2
4767
5677
  # value: "StringInput", # required
4768
5678
  # },
4769
5679
  # ],
5680
+ # cloud_providers: [
5681
+ # {
5682
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5683
+ # value: "StringInput", # required
5684
+ # },
5685
+ # ],
5686
+ # cloud_account_ids: [
5687
+ # {
5688
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5689
+ # value: "StringInput", # required
5690
+ # },
5691
+ # ],
5692
+ # cloud_org_ids: [
5693
+ # {
5694
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5695
+ # value: "StringInput", # required
5696
+ # },
5697
+ # ],
5698
+ # cloud_regions: [
5699
+ # {
5700
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5701
+ # value: "StringInput", # required
5702
+ # },
5703
+ # ],
5704
+ # cloud_partitions: [
5705
+ # {
5706
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5707
+ # value: "StringInput", # required
5708
+ # },
5709
+ # ],
4770
5710
  # sort_order: "ASC", # accepts ASC, DESC
4771
5711
  # sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
4772
5712
  # },
@@ -4803,10 +5743,10 @@ module Aws::Inspector2
4803
5743
  # value: "StringInput", # required
4804
5744
  # },
4805
5745
  # ],
4806
- # resource_type: "AWS_EC2_INSTANCE", # accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_LAMBDA_FUNCTION, CODE_REPOSITORY
5746
+ # resource_type: "AWS_EC2_INSTANCE", # accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_LAMBDA_FUNCTION, CODE_REPOSITORY, Microsoft.Compute/virtualMachines, Microsoft.ContainerRegistry/registry/containerImage, Microsoft.Web/sites
5747
+ # finding_type: "NETWORK_REACHABILITY", # accepts NETWORK_REACHABILITY, PACKAGE_VULNERABILITY, CODE_VULNERABILITY
4807
5748
  # sort_order: "ASC", # accepts ASC, DESC
4808
5749
  # sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
4809
- # finding_type: "NETWORK_REACHABILITY", # accepts NETWORK_REACHABILITY, PACKAGE_VULNERABILITY, CODE_VULNERABILITY
4810
5750
  # },
4811
5751
  # lambda_layer_aggregation: {
4812
5752
  # function_names: [
@@ -4881,12 +5821,212 @@ module Aws::Inspector2
4881
5821
  # },
4882
5822
  # ],
4883
5823
  # },
5824
+ # vm_instance_aggregation: {
5825
+ # resource_ids: [
5826
+ # {
5827
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5828
+ # value: "StringInput", # required
5829
+ # },
5830
+ # ],
5831
+ # operating_systems: [
5832
+ # {
5833
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5834
+ # value: "StringInput", # required
5835
+ # },
5836
+ # ],
5837
+ # instance_tags: [
5838
+ # {
5839
+ # comparison: "EQUALS", # required, accepts EQUALS
5840
+ # key: "MapKey", # required
5841
+ # value: "MapValue",
5842
+ # },
5843
+ # ],
5844
+ # vm_image_references: [
5845
+ # {
5846
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5847
+ # value: "StringInput", # required
5848
+ # },
5849
+ # ],
5850
+ # cloud_providers: [
5851
+ # {
5852
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5853
+ # value: "StringInput", # required
5854
+ # },
5855
+ # ],
5856
+ # cloud_partitions: [
5857
+ # {
5858
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5859
+ # value: "StringInput", # required
5860
+ # },
5861
+ # ],
5862
+ # cloud_regions: [
5863
+ # {
5864
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5865
+ # value: "StringInput", # required
5866
+ # },
5867
+ # ],
5868
+ # cloud_org_ids: [
5869
+ # {
5870
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5871
+ # value: "StringInput", # required
5872
+ # },
5873
+ # ],
5874
+ # cloud_account_ids: [
5875
+ # {
5876
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5877
+ # value: "StringInput", # required
5878
+ # },
5879
+ # ],
5880
+ # sort_order: "ASC", # accepts ASC, DESC
5881
+ # sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL, NETWORK_FINDINGS
5882
+ # },
5883
+ # container_image_aggregation: {
5884
+ # resource_ids: [
5885
+ # {
5886
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5887
+ # value: "StringInput", # required
5888
+ # },
5889
+ # ],
5890
+ # image_digests: [
5891
+ # {
5892
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5893
+ # value: "StringInput", # required
5894
+ # },
5895
+ # ],
5896
+ # repositories: [
5897
+ # {
5898
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5899
+ # value: "StringInput", # required
5900
+ # },
5901
+ # ],
5902
+ # registries: [
5903
+ # {
5904
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5905
+ # value: "StringInput", # required
5906
+ # },
5907
+ # ],
5908
+ # architectures: [
5909
+ # {
5910
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5911
+ # value: "StringInput", # required
5912
+ # },
5913
+ # ],
5914
+ # image_tags: [
5915
+ # {
5916
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5917
+ # value: "StringInput", # required
5918
+ # },
5919
+ # ],
5920
+ # cloud_providers: [
5921
+ # {
5922
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5923
+ # value: "StringInput", # required
5924
+ # },
5925
+ # ],
5926
+ # cloud_partitions: [
5927
+ # {
5928
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5929
+ # value: "StringInput", # required
5930
+ # },
5931
+ # ],
5932
+ # cloud_regions: [
5933
+ # {
5934
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5935
+ # value: "StringInput", # required
5936
+ # },
5937
+ # ],
5938
+ # cloud_org_ids: [
5939
+ # {
5940
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5941
+ # value: "StringInput", # required
5942
+ # },
5943
+ # ],
5944
+ # cloud_account_ids: [
5945
+ # {
5946
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5947
+ # value: "StringInput", # required
5948
+ # },
5949
+ # ],
5950
+ # last_in_use_at: [
5951
+ # {
5952
+ # start_inclusive: Time.now,
5953
+ # end_inclusive: Time.now,
5954
+ # },
5955
+ # ],
5956
+ # in_use_count: [
5957
+ # {
5958
+ # upper_inclusive: 1.0,
5959
+ # lower_inclusive: 1.0,
5960
+ # },
5961
+ # ],
5962
+ # sort_order: "ASC", # accepts ASC, DESC
5963
+ # sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
5964
+ # },
5965
+ # serverless_function_aggregation: {
5966
+ # resource_ids: [
5967
+ # {
5968
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5969
+ # value: "StringInput", # required
5970
+ # },
5971
+ # ],
5972
+ # function_names: [
5973
+ # {
5974
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5975
+ # value: "StringInput", # required
5976
+ # },
5977
+ # ],
5978
+ # runtimes: [
5979
+ # {
5980
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5981
+ # value: "StringInput", # required
5982
+ # },
5983
+ # ],
5984
+ # function_tags: [
5985
+ # {
5986
+ # comparison: "EQUALS", # required, accepts EQUALS
5987
+ # key: "MapKey", # required
5988
+ # value: "MapValue",
5989
+ # },
5990
+ # ],
5991
+ # cloud_providers: [
5992
+ # {
5993
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5994
+ # value: "StringInput", # required
5995
+ # },
5996
+ # ],
5997
+ # cloud_partitions: [
5998
+ # {
5999
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6000
+ # value: "StringInput", # required
6001
+ # },
6002
+ # ],
6003
+ # cloud_regions: [
6004
+ # {
6005
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6006
+ # value: "StringInput", # required
6007
+ # },
6008
+ # ],
6009
+ # cloud_org_ids: [
6010
+ # {
6011
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6012
+ # value: "StringInput", # required
6013
+ # },
6014
+ # ],
6015
+ # cloud_account_ids: [
6016
+ # {
6017
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6018
+ # value: "StringInput", # required
6019
+ # },
6020
+ # ],
6021
+ # sort_order: "ASC", # accepts ASC, DESC
6022
+ # sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
6023
+ # },
4884
6024
  # },
4885
6025
  # })
4886
6026
  #
4887
6027
  # @example Response structure
4888
6028
  #
4889
- # resp.aggregation_type #=> String, one of "FINDING_TYPE", "PACKAGE", "TITLE", "REPOSITORY", "AMI", "AWS_EC2_INSTANCE", "AWS_ECR_CONTAINER", "IMAGE_LAYER", "ACCOUNT", "AWS_LAMBDA_FUNCTION", "LAMBDA_LAYER", "CODE_REPOSITORY"
6029
+ # resp.aggregation_type #=> String, one of "FINDING_TYPE", "PACKAGE", "TITLE", "REPOSITORY", "AMI", "AWS_EC2_INSTANCE", "AWS_ECR_CONTAINER", "IMAGE_LAYER", "ACCOUNT", "AWS_LAMBDA_FUNCTION", "LAMBDA_LAYER", "CODE_REPOSITORY", "VM_INSTANCE", "CONTAINER_IMAGE", "SERVERLESS_FUNCTION"
4890
6030
  # resp.responses #=> Array
4891
6031
  # resp.responses[0].account_aggregation.account_id #=> String
4892
6032
  # resp.responses[0].account_aggregation.severity_counts.all #=> Integer
@@ -4897,6 +6037,11 @@ module Aws::Inspector2
4897
6037
  # resp.responses[0].account_aggregation.fix_available_count #=> Integer
4898
6038
  # resp.responses[0].ami_aggregation.ami #=> String
4899
6039
  # resp.responses[0].ami_aggregation.account_id #=> String
6040
+ # resp.responses[0].ami_aggregation.cloud_provider #=> String, one of "AWS", "AZURE"
6041
+ # resp.responses[0].ami_aggregation.cloud_partition #=> String
6042
+ # resp.responses[0].ami_aggregation.cloud_region #=> String
6043
+ # resp.responses[0].ami_aggregation.cloud_org_id #=> String
6044
+ # resp.responses[0].ami_aggregation.cloud_account_id #=> String
4900
6045
  # resp.responses[0].ami_aggregation.severity_counts.all #=> Integer
4901
6046
  # resp.responses[0].ami_aggregation.severity_counts.medium #=> Integer
4902
6047
  # resp.responses[0].ami_aggregation.severity_counts.high #=> Integer
@@ -4933,10 +6078,20 @@ module Aws::Inspector2
4933
6078
  # resp.responses[0].finding_type_aggregation.severity_counts.critical #=> Integer
4934
6079
  # resp.responses[0].finding_type_aggregation.exploit_available_count #=> Integer
4935
6080
  # resp.responses[0].finding_type_aggregation.fix_available_count #=> Integer
6081
+ # resp.responses[0].finding_type_aggregation.cloud_provider #=> String
6082
+ # resp.responses[0].finding_type_aggregation.cloud_account_id #=> String
6083
+ # resp.responses[0].finding_type_aggregation.cloud_org_id #=> String
6084
+ # resp.responses[0].finding_type_aggregation.cloud_region #=> String
6085
+ # resp.responses[0].finding_type_aggregation.cloud_partition #=> String
4936
6086
  # resp.responses[0].image_layer_aggregation.repository #=> String
4937
6087
  # resp.responses[0].image_layer_aggregation.resource_id #=> String
4938
6088
  # resp.responses[0].image_layer_aggregation.layer_hash #=> String
4939
6089
  # resp.responses[0].image_layer_aggregation.account_id #=> String
6090
+ # resp.responses[0].image_layer_aggregation.cloud_provider #=> String
6091
+ # resp.responses[0].image_layer_aggregation.cloud_account_id #=> String
6092
+ # resp.responses[0].image_layer_aggregation.cloud_org_id #=> String
6093
+ # resp.responses[0].image_layer_aggregation.cloud_region #=> String
6094
+ # resp.responses[0].image_layer_aggregation.cloud_partition #=> String
4940
6095
  # resp.responses[0].image_layer_aggregation.severity_counts.all #=> Integer
4941
6096
  # resp.responses[0].image_layer_aggregation.severity_counts.medium #=> Integer
4942
6097
  # resp.responses[0].image_layer_aggregation.severity_counts.high #=> Integer
@@ -4949,6 +6104,11 @@ module Aws::Inspector2
4949
6104
  # resp.responses[0].package_aggregation.severity_counts.critical #=> Integer
4950
6105
  # resp.responses[0].repository_aggregation.repository #=> String
4951
6106
  # resp.responses[0].repository_aggregation.account_id #=> String
6107
+ # resp.responses[0].repository_aggregation.cloud_provider #=> String, one of "AWS", "AZURE"
6108
+ # resp.responses[0].repository_aggregation.cloud_partition #=> String
6109
+ # resp.responses[0].repository_aggregation.cloud_region #=> String
6110
+ # resp.responses[0].repository_aggregation.cloud_org_id #=> String
6111
+ # resp.responses[0].repository_aggregation.cloud_account_id #=> String
4952
6112
  # resp.responses[0].repository_aggregation.severity_counts.all #=> Integer
4953
6113
  # resp.responses[0].repository_aggregation.severity_counts.medium #=> Integer
4954
6114
  # resp.responses[0].repository_aggregation.severity_counts.high #=> Integer
@@ -4990,6 +6150,63 @@ module Aws::Inspector2
4990
6150
  # resp.responses[0].code_repository_aggregation.fix_available_active_findings_count #=> Integer
4991
6151
  # resp.responses[0].code_repository_aggregation.account_id #=> String
4992
6152
  # resp.responses[0].code_repository_aggregation.resource_id #=> String
6153
+ # resp.responses[0].vm_instance_aggregation.resource_id #=> String
6154
+ # resp.responses[0].vm_instance_aggregation.cloud_provider #=> String, one of "AWS", "AZURE"
6155
+ # resp.responses[0].vm_instance_aggregation.cloud_account_id #=> String
6156
+ # resp.responses[0].vm_instance_aggregation.cloud_partition #=> String
6157
+ # resp.responses[0].vm_instance_aggregation.cloud_region #=> String
6158
+ # resp.responses[0].vm_instance_aggregation.cloud_org_id #=> String
6159
+ # resp.responses[0].vm_instance_aggregation.vm_image_reference #=> String
6160
+ # resp.responses[0].vm_instance_aggregation.operating_system #=> String
6161
+ # resp.responses[0].vm_instance_aggregation.tags #=> Hash
6162
+ # resp.responses[0].vm_instance_aggregation.tags["MapKey"] #=> String
6163
+ # resp.responses[0].vm_instance_aggregation.account_id #=> String
6164
+ # resp.responses[0].vm_instance_aggregation.severity_counts.all #=> Integer
6165
+ # resp.responses[0].vm_instance_aggregation.severity_counts.medium #=> Integer
6166
+ # resp.responses[0].vm_instance_aggregation.severity_counts.high #=> Integer
6167
+ # resp.responses[0].vm_instance_aggregation.severity_counts.critical #=> Integer
6168
+ # resp.responses[0].vm_instance_aggregation.network_findings #=> Integer
6169
+ # resp.responses[0].vm_instance_aggregation.exploit_available_active_findings_count #=> Integer
6170
+ # resp.responses[0].vm_instance_aggregation.fix_available_active_findings_count #=> Integer
6171
+ # resp.responses[0].container_image_aggregation.resource_id #=> String
6172
+ # resp.responses[0].container_image_aggregation.cloud_provider #=> String, one of "AWS", "AZURE"
6173
+ # resp.responses[0].container_image_aggregation.cloud_account_id #=> String
6174
+ # resp.responses[0].container_image_aggregation.cloud_partition #=> String
6175
+ # resp.responses[0].container_image_aggregation.cloud_region #=> String
6176
+ # resp.responses[0].container_image_aggregation.cloud_org_id #=> String
6177
+ # resp.responses[0].container_image_aggregation.image_digest #=> String
6178
+ # resp.responses[0].container_image_aggregation.repository #=> String
6179
+ # resp.responses[0].container_image_aggregation.registry #=> String
6180
+ # resp.responses[0].container_image_aggregation.architecture #=> String
6181
+ # resp.responses[0].container_image_aggregation.image_tags #=> Array
6182
+ # resp.responses[0].container_image_aggregation.image_tags[0] #=> String
6183
+ # resp.responses[0].container_image_aggregation.account_id #=> String
6184
+ # resp.responses[0].container_image_aggregation.severity_counts.all #=> Integer
6185
+ # resp.responses[0].container_image_aggregation.severity_counts.medium #=> Integer
6186
+ # resp.responses[0].container_image_aggregation.severity_counts.high #=> Integer
6187
+ # resp.responses[0].container_image_aggregation.severity_counts.critical #=> Integer
6188
+ # resp.responses[0].container_image_aggregation.last_in_use_at #=> Time
6189
+ # resp.responses[0].container_image_aggregation.in_use_count #=> Integer
6190
+ # resp.responses[0].container_image_aggregation.exploit_available_active_findings_count #=> Integer
6191
+ # resp.responses[0].container_image_aggregation.fix_available_active_findings_count #=> Integer
6192
+ # resp.responses[0].serverless_function_aggregation.resource_id #=> String
6193
+ # resp.responses[0].serverless_function_aggregation.cloud_provider #=> String, one of "AWS", "AZURE"
6194
+ # resp.responses[0].serverless_function_aggregation.cloud_account_id #=> String
6195
+ # resp.responses[0].serverless_function_aggregation.cloud_partition #=> String
6196
+ # resp.responses[0].serverless_function_aggregation.cloud_region #=> String
6197
+ # resp.responses[0].serverless_function_aggregation.cloud_org_id #=> String
6198
+ # resp.responses[0].serverless_function_aggregation.function_name #=> String
6199
+ # resp.responses[0].serverless_function_aggregation.runtime #=> String
6200
+ # resp.responses[0].serverless_function_aggregation.tags #=> Hash
6201
+ # resp.responses[0].serverless_function_aggregation.tags["MapKey"] #=> String
6202
+ # resp.responses[0].serverless_function_aggregation.account_id #=> String
6203
+ # resp.responses[0].serverless_function_aggregation.severity_counts.all #=> Integer
6204
+ # resp.responses[0].serverless_function_aggregation.severity_counts.medium #=> Integer
6205
+ # resp.responses[0].serverless_function_aggregation.severity_counts.high #=> Integer
6206
+ # resp.responses[0].serverless_function_aggregation.severity_counts.critical #=> Integer
6207
+ # resp.responses[0].serverless_function_aggregation.last_modified_at #=> Time
6208
+ # resp.responses[0].serverless_function_aggregation.exploit_available_active_findings_count #=> Integer
6209
+ # resp.responses[0].serverless_function_aggregation.fix_available_active_findings_count #=> Integer
4993
6210
  # resp.next_token #=> String
4994
6211
  #
4995
6212
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListFindingAggregations AWS API Documentation
@@ -5259,85 +6476,199 @@ module Aws::Inspector2
5259
6476
  # },
5260
6477
  # },
5261
6478
  # ],
5262
- # related_vulnerabilities: [
6479
+ # related_vulnerabilities: [
6480
+ # {
6481
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6482
+ # value: "StringInput", # required
6483
+ # },
6484
+ # ],
6485
+ # fix_available: [
6486
+ # {
6487
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6488
+ # value: "StringInput", # required
6489
+ # },
6490
+ # ],
6491
+ # lambda_function_name: [
6492
+ # {
6493
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6494
+ # value: "StringInput", # required
6495
+ # },
6496
+ # ],
6497
+ # lambda_function_layers: [
6498
+ # {
6499
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6500
+ # value: "StringInput", # required
6501
+ # },
6502
+ # ],
6503
+ # lambda_function_runtime: [
6504
+ # {
6505
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6506
+ # value: "StringInput", # required
6507
+ # },
6508
+ # ],
6509
+ # lambda_function_last_modified_at: [
6510
+ # {
6511
+ # start_inclusive: Time.now,
6512
+ # end_inclusive: Time.now,
6513
+ # },
6514
+ # ],
6515
+ # lambda_function_execution_role_arn: [
6516
+ # {
6517
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6518
+ # value: "StringInput", # required
6519
+ # },
6520
+ # ],
6521
+ # exploit_available: [
6522
+ # {
6523
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6524
+ # value: "StringInput", # required
6525
+ # },
6526
+ # ],
6527
+ # code_vulnerability_detector_name: [
6528
+ # {
6529
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6530
+ # value: "StringInput", # required
6531
+ # },
6532
+ # ],
6533
+ # code_vulnerability_detector_tags: [
6534
+ # {
6535
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6536
+ # value: "StringInput", # required
6537
+ # },
6538
+ # ],
6539
+ # code_vulnerability_file_path: [
6540
+ # {
6541
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6542
+ # value: "StringInput", # required
6543
+ # },
6544
+ # ],
6545
+ # epss_score: [
6546
+ # {
6547
+ # upper_inclusive: 1.0,
6548
+ # lower_inclusive: 1.0,
6549
+ # },
6550
+ # ],
6551
+ # code_repository_project_name: [
5263
6552
  # {
5264
6553
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5265
6554
  # value: "StringInput", # required
5266
6555
  # },
5267
6556
  # ],
5268
- # fix_available: [
6557
+ # code_repository_provider_type: [
5269
6558
  # {
5270
6559
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5271
6560
  # value: "StringInput", # required
5272
6561
  # },
5273
6562
  # ],
5274
- # lambda_function_name: [
6563
+ # cloud_provider: [
5275
6564
  # {
5276
6565
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5277
6566
  # value: "StringInput", # required
5278
6567
  # },
5279
6568
  # ],
5280
- # lambda_function_layers: [
6569
+ # cloud_provider_region: [
5281
6570
  # {
5282
6571
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5283
6572
  # value: "StringInput", # required
5284
6573
  # },
5285
6574
  # ],
5286
- # lambda_function_runtime: [
6575
+ # cloud_provider_account_id: [
5287
6576
  # {
5288
6577
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5289
6578
  # value: "StringInput", # required
5290
6579
  # },
5291
6580
  # ],
5292
- # lambda_function_last_modified_at: [
6581
+ # cloud_provider_org_id: [
5293
6582
  # {
5294
- # start_inclusive: Time.now,
5295
- # end_inclusive: Time.now,
6583
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6584
+ # value: "StringInput", # required
5296
6585
  # },
5297
6586
  # ],
5298
- # lambda_function_execution_role_arn: [
6587
+ # cloud_vm_image_reference: [
5299
6588
  # {
5300
6589
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5301
6590
  # value: "StringInput", # required
5302
6591
  # },
5303
6592
  # ],
5304
- # exploit_available: [
6593
+ # cloud_vm_network_id: [
5305
6594
  # {
5306
6595
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5307
6596
  # value: "StringInput", # required
5308
6597
  # },
5309
6598
  # ],
5310
- # code_vulnerability_detector_name: [
6599
+ # cloud_vm_subnet_ids: [
5311
6600
  # {
5312
6601
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5313
6602
  # value: "StringInput", # required
5314
6603
  # },
5315
6604
  # ],
5316
- # code_vulnerability_detector_tags: [
6605
+ # cloud_image_repository_name: [
5317
6606
  # {
5318
6607
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5319
6608
  # value: "StringInput", # required
5320
6609
  # },
5321
6610
  # ],
5322
- # code_vulnerability_file_path: [
6611
+ # cloud_image_registry: [
5323
6612
  # {
5324
6613
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5325
6614
  # value: "StringInput", # required
5326
6615
  # },
5327
6616
  # ],
5328
- # epss_score: [
6617
+ # cloud_image_digest: [
6618
+ # {
6619
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6620
+ # value: "StringInput", # required
6621
+ # },
6622
+ # ],
6623
+ # cloud_image_tags: [
6624
+ # {
6625
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6626
+ # value: "StringInput", # required
6627
+ # },
6628
+ # ],
6629
+ # cloud_image_pushed_at: [
6630
+ # {
6631
+ # start_inclusive: Time.now,
6632
+ # end_inclusive: Time.now,
6633
+ # },
6634
+ # ],
6635
+ # cloud_image_architecture: [
6636
+ # {
6637
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6638
+ # value: "StringInput", # required
6639
+ # },
6640
+ # ],
6641
+ # cloud_image_last_in_use_at: [
6642
+ # {
6643
+ # start_inclusive: Time.now,
6644
+ # end_inclusive: Time.now,
6645
+ # },
6646
+ # ],
6647
+ # cloud_image_in_use_count: [
5329
6648
  # {
5330
6649
  # upper_inclusive: 1.0,
5331
6650
  # lower_inclusive: 1.0,
5332
6651
  # },
5333
6652
  # ],
5334
- # code_repository_project_name: [
6653
+ # cloud_serverless_function_name: [
5335
6654
  # {
5336
6655
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5337
6656
  # value: "StringInput", # required
5338
6657
  # },
5339
6658
  # ],
5340
- # code_repository_provider_type: [
6659
+ # cloud_serverless_function_runtime: [
6660
+ # {
6661
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6662
+ # value: "StringInput", # required
6663
+ # },
6664
+ # ],
6665
+ # cloud_serverless_function_last_modified_at: [
6666
+ # {
6667
+ # start_inclusive: Time.now,
6668
+ # end_inclusive: Time.now,
6669
+ # },
6670
+ # ],
6671
+ # cloud_serverless_function_execution_role: [
5341
6672
  # {
5342
6673
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5343
6674
  # value: "StringInput", # required
@@ -5367,7 +6698,7 @@ module Aws::Inspector2
5367
6698
  # resp.findings[0].updated_at #=> Time
5368
6699
  # resp.findings[0].status #=> String, one of "ACTIVE", "SUPPRESSED", "CLOSED"
5369
6700
  # resp.findings[0].resources #=> Array
5370
- # resp.findings[0].resources[0].type #=> String, one of "AWS_EC2_INSTANCE", "AWS_ECR_CONTAINER_IMAGE", "AWS_ECR_REPOSITORY", "AWS_LAMBDA_FUNCTION", "CODE_REPOSITORY"
6701
+ # resp.findings[0].resources[0].type #=> String, one of "AWS_EC2_INSTANCE", "AWS_ECR_CONTAINER_IMAGE", "AWS_ECR_REPOSITORY", "AWS_LAMBDA_FUNCTION", "CODE_REPOSITORY", "Microsoft.Compute/virtualMachines", "Microsoft.ContainerRegistry/registry/containerImage", "Microsoft.Web/sites"
5371
6702
  # resp.findings[0].resources[0].id #=> String
5372
6703
  # resp.findings[0].resources[0].partition #=> String
5373
6704
  # resp.findings[0].resources[0].region #=> String
@@ -5397,7 +6728,7 @@ module Aws::Inspector2
5397
6728
  # resp.findings[0].resources[0].details.aws_ecr_container_image.last_in_use_at #=> Time
5398
6729
  # resp.findings[0].resources[0].details.aws_ecr_container_image.in_use_count #=> Integer
5399
6730
  # resp.findings[0].resources[0].details.aws_lambda_function.function_name #=> String
5400
- # resp.findings[0].resources[0].details.aws_lambda_function.runtime #=> String, one of "NODEJS", "NODEJS_12_X", "NODEJS_14_X", "NODEJS_16_X", "JAVA_8", "JAVA_8_AL2", "JAVA_11", "PYTHON_3_7", "PYTHON_3_8", "PYTHON_3_9", "UNSUPPORTED", "NODEJS_18_X", "GO_1_X", "JAVA_17", "PYTHON_3_10", "PYTHON_3_11", "DOTNETCORE_3_1", "DOTNET_6", "DOTNET_7", "RUBY_2_7", "RUBY_3_2", "DOTNET_10", "NODEJS_24_X"
6731
+ # resp.findings[0].resources[0].details.aws_lambda_function.runtime #=> String, one of "NODEJS", "NODEJS_12_X", "NODEJS_14_X", "NODEJS_16_X", "JAVA_8", "JAVA_8_AL2", "JAVA_11", "PYTHON_3_7", "PYTHON_3_8", "PYTHON_3_9", "UNSUPPORTED", "NODEJS_18_X", "GO_1_X", "JAVA_17", "PYTHON_3_10", "PYTHON_3_11", "DOTNETCORE_3_1", "DOTNET_6", "DOTNET_7", "RUBY_2_7", "RUBY_3_2", "DOTNET_10", "NODEJS_24_X", "NODEJS_22_X", "JAVA_21", "JAVA_25"
5401
6732
  # resp.findings[0].resources[0].details.aws_lambda_function.code_sha_256 #=> String
5402
6733
  # resp.findings[0].resources[0].details.aws_lambda_function.version #=> String
5403
6734
  # resp.findings[0].resources[0].details.aws_lambda_function.execution_role_arn #=> String
@@ -5415,6 +6746,52 @@ module Aws::Inspector2
5415
6746
  # resp.findings[0].resources[0].details.code_repository.project_name #=> String
5416
6747
  # resp.findings[0].resources[0].details.code_repository.integration_arn #=> String
5417
6748
  # resp.findings[0].resources[0].details.code_repository.provider_type #=> String, one of "GITHUB", "GITLAB_SELF_MANAGED"
6749
+ # resp.findings[0].resources[0].details.vm.type #=> String
6750
+ # resp.findings[0].resources[0].details.vm.vm_name #=> String
6751
+ # resp.findings[0].resources[0].details.vm.vm_image_reference #=> String
6752
+ # resp.findings[0].resources[0].details.vm.ip_v4_addresses #=> Array
6753
+ # resp.findings[0].resources[0].details.vm.ip_v4_addresses[0] #=> String
6754
+ # resp.findings[0].resources[0].details.vm.ip_v6_addresses #=> Array
6755
+ # resp.findings[0].resources[0].details.vm.ip_v6_addresses[0] #=> String
6756
+ # resp.findings[0].resources[0].details.vm.network_id #=> String
6757
+ # resp.findings[0].resources[0].details.vm.subnet_ids #=> Array
6758
+ # resp.findings[0].resources[0].details.vm.subnet_ids[0] #=> String
6759
+ # resp.findings[0].resources[0].details.vm.security_group_ids #=> Array
6760
+ # resp.findings[0].resources[0].details.vm.security_group_ids[0] #=> String
6761
+ # resp.findings[0].resources[0].details.vm.launched_at #=> Time
6762
+ # resp.findings[0].resources[0].details.vm.platform #=> String
6763
+ # resp.findings[0].resources[0].details.vm.execution_role #=> String
6764
+ # resp.findings[0].resources[0].details.vm.key_name #=> String
6765
+ # resp.findings[0].resources[0].details.image.repository_name #=> String
6766
+ # resp.findings[0].resources[0].details.image.registry #=> String
6767
+ # resp.findings[0].resources[0].details.image.image_tags #=> Array
6768
+ # resp.findings[0].resources[0].details.image.image_tags[0] #=> String
6769
+ # resp.findings[0].resources[0].details.image.image_digest #=> String
6770
+ # resp.findings[0].resources[0].details.image.pushed_at #=> Time
6771
+ # resp.findings[0].resources[0].details.image.architecture #=> String
6772
+ # resp.findings[0].resources[0].details.image.author #=> String
6773
+ # resp.findings[0].resources[0].details.image.in_use_count #=> Integer
6774
+ # resp.findings[0].resources[0].details.image.last_in_use_at #=> Time
6775
+ # resp.findings[0].resources[0].details.image.platform #=> String
6776
+ # resp.findings[0].resources[0].details.serverless_function.serverless_function_name #=> String
6777
+ # resp.findings[0].resources[0].details.serverless_function.runtime #=> String
6778
+ # resp.findings[0].resources[0].details.serverless_function.version #=> String
6779
+ # resp.findings[0].resources[0].details.serverless_function.code_digest #=> String
6780
+ # resp.findings[0].resources[0].details.serverless_function.last_modified_at #=> Time
6781
+ # resp.findings[0].resources[0].details.serverless_function.network_id #=> String
6782
+ # resp.findings[0].resources[0].details.serverless_function.subnet_ids #=> Array
6783
+ # resp.findings[0].resources[0].details.serverless_function.subnet_ids[0] #=> String
6784
+ # resp.findings[0].resources[0].details.serverless_function.security_group_ids #=> Array
6785
+ # resp.findings[0].resources[0].details.serverless_function.security_group_ids[0] #=> String
6786
+ # resp.findings[0].resources[0].details.serverless_function.execution_role #=> String
6787
+ # resp.findings[0].resources[0].details.serverless_function.package_type #=> String, one of "IMAGE", "ZIP"
6788
+ # resp.findings[0].resources[0].details.serverless_function.architectures #=> Array
6789
+ # resp.findings[0].resources[0].details.serverless_function.architectures[0] #=> String, one of "X86_64", "ARM64"
6790
+ # resp.findings[0].resources[0].details.serverless_function.layers #=> Array
6791
+ # resp.findings[0].resources[0].details.serverless_function.layers[0] #=> String
6792
+ # resp.findings[0].resources[0].provider #=> String, one of "AWS", "AZURE"
6793
+ # resp.findings[0].resources[0].provider_account_id #=> String
6794
+ # resp.findings[0].resources[0].provider_org_id #=> String
5418
6795
  # resp.findings[0].inspector_score #=> Float
5419
6796
  # resp.findings[0].inspector_score_details.adjusted_cvss.score_source #=> String
5420
6797
  # resp.findings[0].inspector_score_details.adjusted_cvss.cvss_source #=> String
@@ -5609,10 +6986,11 @@ module Aws::Inspector2
5609
6986
  # resp.totals #=> Array
5610
6987
  # resp.totals[0].account_id #=> String
5611
6988
  # resp.totals[0].usage #=> Array
5612
- # resp.totals[0].usage[0].type #=> String, one of "EC2_INSTANCE_HOURS", "ECR_INITIAL_SCAN", "ECR_RESCAN", "LAMBDA_FUNCTION_HOURS", "LAMBDA_FUNCTION_CODE_HOURS", "CODE_REPOSITORY_SAST", "CODE_REPOSITORY_IAC", "CODE_REPOSITORY_SCA", "EC2_AGENTLESS_INSTANCE_HOURS"
6989
+ # resp.totals[0].usage[0].type #=> String, one of "EC2_INSTANCE_HOURS", "ECR_INITIAL_SCAN", "ECR_RESCAN", "LAMBDA_FUNCTION_HOURS", "LAMBDA_FUNCTION_CODE_HOURS", "CODE_REPOSITORY_SAST", "CODE_REPOSITORY_IAC", "CODE_REPOSITORY_SCA", "EC2_AGENTLESS_INSTANCE_HOURS", "AZURE_CONTAINER_IMAGE_INITIAL_SCAN", "AZURE_CONTAINER_IMAGE_RESCAN", "AZURE_VM_AGENT_BASED_INSTANCE_HOURS", "AZURE_SERVERLESS_FUNCTION_HOURS"
5613
6990
  # resp.totals[0].usage[0].total #=> Float
5614
6991
  # resp.totals[0].usage[0].estimated_monthly_cost #=> Float
5615
6992
  # resp.totals[0].usage[0].currency #=> String, one of "USD"
6993
+ # resp.totals[0].usage[0].cloud_provider #=> String, one of "AWS", "AZURE", "NOT_APPLICABLE"
5616
6994
  #
5617
6995
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListUsageTotals AWS API Documentation
5618
6996
  #
@@ -5638,7 +7016,7 @@ module Aws::Inspector2
5638
7016
  #
5639
7017
  # resp = client.reset_encryption_key({
5640
7018
  # scan_type: "NETWORK", # required, accepts NETWORK, PACKAGE, CODE
5641
- # resource_type: "AWS_EC2_INSTANCE", # required, accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_ECR_REPOSITORY, AWS_LAMBDA_FUNCTION, CODE_REPOSITORY
7019
+ # resource_type: "AWS_EC2_INSTANCE", # required, accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_ECR_REPOSITORY, AWS_LAMBDA_FUNCTION, CODE_REPOSITORY, Microsoft.Compute/virtualMachines, Microsoft.ContainerRegistry/registry/containerImage, Microsoft.Web/sites
5642
7020
  # })
5643
7021
  #
5644
7022
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ResetEncryptionKey AWS API Documentation
@@ -6249,10 +7627,21 @@ module Aws::Inspector2
6249
7627
  req.send_request(options)
6250
7628
  end
6251
7629
 
6252
- # Updates setting configurations for your Amazon Inspector account. When
6253
- # you use this API as an Amazon Inspector delegated administrator this
6254
- # updates the setting for all accounts you manage. Member accounts in an
6255
- # organization cannot update this setting.
7630
+ # Updates the scan configuration for your Amazon Inspector account. If
7631
+ # you don't specify an `accountId`, this operation updates the
7632
+ # delegated administrator's configuration and propagates it to member
7633
+ # accounts that have not been individually configured. If you specify an
7634
+ # `accountId`, this operation updates that member account's
7635
+ # configuration. Only the delegated administrator can specify an
7636
+ # `accountId`; member accounts cannot call this operation.
7637
+ #
7638
+ # @option params [String] :account_id
7639
+ # The 12-digit Amazon Web Services account ID of the member account
7640
+ # whose scan configuration you want to update. When specified, you must
7641
+ # be the delegated administrator for this member account. If not
7642
+ # specified, the operation updates your own configuration and propagates
7643
+ # changes to any member accounts that have not been individually
7644
+ # configured.
6256
7645
  #
6257
7646
  # @option params [Types::EcrConfiguration] :ecr_configuration
6258
7647
  # Specifies how the ECR automated re-scan will be updated for your
@@ -6262,11 +7651,21 @@ module Aws::Inspector2
6262
7651
  # Specifies how the Amazon EC2 automated scan will be updated for your
6263
7652
  # environment.
6264
7653
  #
7654
+ # @option params [Types::UpdateConfigurationInheritance] :update_configuration_inheritance
7655
+ # Specifies which scan-type configurations to reset to the delegated
7656
+ # administrator's inherited values for the targeted member account.
7657
+ # Each member of this structure is independently optional. When
7658
+ # specified, `ec2Configuration` and `ecrConfiguration` must be absent,
7659
+ # and `accountId` must also be present. Only `INHERIT_FROM_ADMIN` is
7660
+ # valid for each member. If not specified, the operation uses the
7661
+ # `ec2Configuration` and `ecrConfiguration` parameters instead.
7662
+ #
6265
7663
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
6266
7664
  #
6267
7665
  # @example Request syntax with placeholder values
6268
7666
  #
6269
7667
  # resp = client.update_configuration({
7668
+ # account_id: "AccountId",
6270
7669
  # ecr_configuration: {
6271
7670
  # rescan_duration: "LIFETIME", # required, accepts LIFETIME, DAYS_30, DAYS_180, DAYS_14, DAYS_60, DAYS_90
6272
7671
  # pull_date_rescan_duration: "DAYS_14", # accepts DAYS_14, DAYS_30, DAYS_60, DAYS_90, DAYS_180
@@ -6276,6 +7675,10 @@ module Aws::Inspector2
6276
7675
  # scan_mode: "EC2_SSM_AGENT_BASED", # required, accepts EC2_SSM_AGENT_BASED, EC2_HYBRID
6277
7676
  # activate_vm_scanner: false,
6278
7677
  # },
7678
+ # update_configuration_inheritance: {
7679
+ # ec2_configuration: "INHERIT_FROM_ADMIN", # accepts INHERIT_FROM_ADMIN
7680
+ # ecr_configuration: "INHERIT_FROM_ADMIN", # accepts INHERIT_FROM_ADMIN
7681
+ # },
6279
7682
  # })
6280
7683
  #
6281
7684
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UpdateConfiguration AWS API Documentation
@@ -6287,6 +7690,131 @@ module Aws::Inspector2
6287
7690
  req.send_request(options)
6288
7691
  end
6289
7692
 
7693
+ # Updates the description or provider-specific configuration details of
7694
+ # an existing connector.
7695
+ #
7696
+ # @option params [required, String] :connector_arn
7697
+ # The Amazon Resource Name (ARN) of the connector to update.
7698
+ #
7699
+ # @option params [String] :description
7700
+ # The updated description of the connector.
7701
+ #
7702
+ # @option params [Types::ProviderDetailUpdate] :provider_detail
7703
+ # The updated provider-specific configuration details for the connector.
7704
+ #
7705
+ # @return [Types::UpdateConnectorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7706
+ #
7707
+ # * {Types::UpdateConnectorResponse#connector_arn #connector_arn} => String
7708
+ #
7709
+ #
7710
+ # @example Example: Expand the Azure regions covered by a connector
7711
+ #
7712
+ # resp = client.update_connector({
7713
+ # connector_arn: "arn:aws:inspector2:us-east-1:123456789012:connector/6ccf8549-b52b-57ca-bf52-a2266da3c53a",
7714
+ # provider_detail: {
7715
+ # azure: {
7716
+ # azure_regions: [
7717
+ # "eastus",
7718
+ # "westus",
7719
+ # ],
7720
+ # },
7721
+ # },
7722
+ # })
7723
+ #
7724
+ # resp.to_h outputs the following:
7725
+ # {
7726
+ # connector_arn: "arn:aws:inspector2:us-east-1:123456789012:connector/6ccf8549-b52b-57ca-bf52-a2266da3c53a",
7727
+ # }
7728
+ #
7729
+ # @example Request syntax with placeholder values
7730
+ #
7731
+ # resp = client.update_connector({
7732
+ # connector_arn: "ConnectorArn", # required
7733
+ # description: "ConnectorDescription",
7734
+ # provider_detail: {
7735
+ # azure: {
7736
+ # azure_regions: ["AzureRegion"],
7737
+ # scope_configuration: {
7738
+ # vm_scanning: {
7739
+ # scope_type: "TENANT", # required, accepts TENANT, SUBSCRIPTION
7740
+ # scope_values: ["ScopeValue"],
7741
+ # },
7742
+ # container_image_scanning: {
7743
+ # scope_type: "TENANT", # required, accepts TENANT, SUBSCRIPTION
7744
+ # scope_values: ["ScopeValue"],
7745
+ # },
7746
+ # serverless_scanning: {
7747
+ # scope_type: "TENANT", # required, accepts TENANT, SUBSCRIPTION
7748
+ # scope_values: ["ScopeValue"],
7749
+ # },
7750
+ # },
7751
+ # auto_install_vm_scanner: false,
7752
+ # },
7753
+ # },
7754
+ # })
7755
+ #
7756
+ # @example Response structure
7757
+ #
7758
+ # resp.connector_arn #=> String
7759
+ #
7760
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UpdateConnector AWS API Documentation
7761
+ #
7762
+ # @overload update_connector(params = {})
7763
+ # @param [Hash] params ({})
7764
+ def update_connector(params = {}, options = {})
7765
+ req = build_request(:update_connector, params)
7766
+ req.send_request(options)
7767
+ end
7768
+
7769
+ # Updates scan configuration settings for resources associated with an
7770
+ # Amazon Web Services Config connector.
7771
+ #
7772
+ # @option params [required, String] :aws_config_connector_arn
7773
+ # The ARN of the Amazon Web Services Config connector.
7774
+ #
7775
+ # @option params [required, Types::ConnectorScanConfiguration] :scan_configuration
7776
+ # The scan configuration settings to apply.
7777
+ #
7778
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
7779
+ #
7780
+ #
7781
+ # @example Example: Set 30-day push and 14-day pull rescan durations for an Azure container registry connector
7782
+ #
7783
+ # resp = client.update_connector_scan_configuration({
7784
+ # aws_config_connector_arn: "arn:aws:config:us-east-1:123456789012:connector/azure/a7bc5463-04ce-4b52-901e-f26f7292a4a7/2fbed4bd-5b95-4947-a751-8defc76ecdae",
7785
+ # scan_configuration: {
7786
+ # container_image_scanning: {
7787
+ # pull_duration: "DAYS_14",
7788
+ # push_duration: "DAYS_30",
7789
+ # },
7790
+ # },
7791
+ # })
7792
+ #
7793
+ # resp.to_h outputs the following:
7794
+ # {
7795
+ # }
7796
+ #
7797
+ # @example Request syntax with placeholder values
7798
+ #
7799
+ # resp = client.update_connector_scan_configuration({
7800
+ # aws_config_connector_arn: "AwsConfigConnectorArn", # required
7801
+ # scan_configuration: { # required
7802
+ # container_image_scanning: {
7803
+ # push_duration: "LIFETIME", # accepts LIFETIME, DAYS_3, DAYS_7, DAYS_30, DAYS_180, DAYS_14, DAYS_60, DAYS_90
7804
+ # pull_duration: "DAYS_3", # accepts DAYS_3, DAYS_7, DAYS_14, DAYS_30, DAYS_60, DAYS_90, DAYS_180
7805
+ # },
7806
+ # },
7807
+ # })
7808
+ #
7809
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UpdateConnectorScanConfiguration AWS API Documentation
7810
+ #
7811
+ # @overload update_connector_scan_configuration(params = {})
7812
+ # @param [Hash] params ({})
7813
+ def update_connector_scan_configuration(params = {}, options = {})
7814
+ req = build_request(:update_connector_scan_configuration, params)
7815
+ req.send_request(options)
7816
+ end
7817
+
6290
7818
  # Activates, deactivates Amazon Inspector deep inspection, or updates
6291
7819
  # custom paths for your account.
6292
7820
  #
@@ -6356,7 +7884,7 @@ module Aws::Inspector2
6356
7884
  # resp = client.update_encryption_key({
6357
7885
  # kms_key_id: "KmsKeyArn", # required
6358
7886
  # scan_type: "NETWORK", # required, accepts NETWORK, PACKAGE, CODE
6359
- # resource_type: "AWS_EC2_INSTANCE", # required, accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_ECR_REPOSITORY, AWS_LAMBDA_FUNCTION, CODE_REPOSITORY
7887
+ # resource_type: "AWS_EC2_INSTANCE", # required, accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_ECR_REPOSITORY, AWS_LAMBDA_FUNCTION, CODE_REPOSITORY, Microsoft.Compute/virtualMachines, Microsoft.ContainerRegistry/registry/containerImage, Microsoft.Web/sites
6360
7888
  # })
6361
7889
  #
6362
7890
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UpdateEncryptionKey AWS API Documentation
@@ -6707,6 +8235,120 @@ module Aws::Inspector2
6707
8235
  # value: "StringInput", # required
6708
8236
  # },
6709
8237
  # ],
8238
+ # cloud_provider: [
8239
+ # {
8240
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
8241
+ # value: "StringInput", # required
8242
+ # },
8243
+ # ],
8244
+ # cloud_provider_region: [
8245
+ # {
8246
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
8247
+ # value: "StringInput", # required
8248
+ # },
8249
+ # ],
8250
+ # cloud_provider_account_id: [
8251
+ # {
8252
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
8253
+ # value: "StringInput", # required
8254
+ # },
8255
+ # ],
8256
+ # cloud_provider_org_id: [
8257
+ # {
8258
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
8259
+ # value: "StringInput", # required
8260
+ # },
8261
+ # ],
8262
+ # cloud_vm_image_reference: [
8263
+ # {
8264
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
8265
+ # value: "StringInput", # required
8266
+ # },
8267
+ # ],
8268
+ # cloud_vm_network_id: [
8269
+ # {
8270
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
8271
+ # value: "StringInput", # required
8272
+ # },
8273
+ # ],
8274
+ # cloud_vm_subnet_ids: [
8275
+ # {
8276
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
8277
+ # value: "StringInput", # required
8278
+ # },
8279
+ # ],
8280
+ # cloud_image_repository_name: [
8281
+ # {
8282
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
8283
+ # value: "StringInput", # required
8284
+ # },
8285
+ # ],
8286
+ # cloud_image_registry: [
8287
+ # {
8288
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
8289
+ # value: "StringInput", # required
8290
+ # },
8291
+ # ],
8292
+ # cloud_image_digest: [
8293
+ # {
8294
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
8295
+ # value: "StringInput", # required
8296
+ # },
8297
+ # ],
8298
+ # cloud_image_tags: [
8299
+ # {
8300
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
8301
+ # value: "StringInput", # required
8302
+ # },
8303
+ # ],
8304
+ # cloud_image_pushed_at: [
8305
+ # {
8306
+ # start_inclusive: Time.now,
8307
+ # end_inclusive: Time.now,
8308
+ # },
8309
+ # ],
8310
+ # cloud_image_architecture: [
8311
+ # {
8312
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
8313
+ # value: "StringInput", # required
8314
+ # },
8315
+ # ],
8316
+ # cloud_image_last_in_use_at: [
8317
+ # {
8318
+ # start_inclusive: Time.now,
8319
+ # end_inclusive: Time.now,
8320
+ # },
8321
+ # ],
8322
+ # cloud_image_in_use_count: [
8323
+ # {
8324
+ # upper_inclusive: 1.0,
8325
+ # lower_inclusive: 1.0,
8326
+ # },
8327
+ # ],
8328
+ # cloud_serverless_function_name: [
8329
+ # {
8330
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
8331
+ # value: "StringInput", # required
8332
+ # },
8333
+ # ],
8334
+ # cloud_serverless_function_runtime: [
8335
+ # {
8336
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
8337
+ # value: "StringInput", # required
8338
+ # },
8339
+ # ],
8340
+ # cloud_serverless_function_last_modified_at: [
8341
+ # {
8342
+ # start_inclusive: Time.now,
8343
+ # end_inclusive: Time.now,
8344
+ # },
8345
+ # ],
8346
+ # cloud_serverless_function_execution_role: [
8347
+ # {
8348
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
8349
+ # value: "StringInput", # required
8350
+ # },
8351
+ # ],
6710
8352
  # },
6711
8353
  # name: "FilterName",
6712
8354
  # filter_arn: "FilterArn", # required
@@ -6808,14 +8450,131 @@ module Aws::Inspector2
6808
8450
  tracer: tracer
6809
8451
  )
6810
8452
  context[:gem_name] = 'aws-sdk-inspector2'
6811
- context[:gem_version] = '1.75.0'
8453
+ context[:gem_version] = '1.76.0'
6812
8454
  Seahorse::Client::Request.new(handlers, context)
6813
8455
  end
6814
8456
 
8457
+ # Polls an API operation until a resource enters a desired state.
8458
+ #
8459
+ # ## Basic Usage
8460
+ #
8461
+ # A waiter will call an API operation until:
8462
+ #
8463
+ # * It is successful
8464
+ # * It enters a terminal state
8465
+ # * It makes the maximum number of attempts
8466
+ #
8467
+ # In between attempts, the waiter will sleep.
8468
+ #
8469
+ # # polls in a loop, sleeping between attempts
8470
+ # client.wait_until(waiter_name, params)
8471
+ #
8472
+ # ## Configuration
8473
+ #
8474
+ # You can configure the maximum number of polling attempts, and the
8475
+ # delay (in seconds) between each polling attempt. You can pass
8476
+ # configuration as the final arguments hash.
8477
+ #
8478
+ # # poll for ~25 seconds
8479
+ # client.wait_until(waiter_name, params, {
8480
+ # max_attempts: 5,
8481
+ # delay: 5,
8482
+ # })
8483
+ #
8484
+ # ## Callbacks
8485
+ #
8486
+ # You can be notified before each polling attempt and before each
8487
+ # delay. If you throw `:success` or `:failure` from these callbacks,
8488
+ # it will terminate the waiter.
8489
+ #
8490
+ # started_at = Time.now
8491
+ # client.wait_until(waiter_name, params, {
8492
+ #
8493
+ # # disable max attempts
8494
+ # max_attempts: nil,
8495
+ #
8496
+ # # poll for 1 hour, instead of a number of attempts
8497
+ # before_wait: -> (attempts, response) do
8498
+ # throw :failure if Time.now - started_at > 3600
8499
+ # end
8500
+ # })
8501
+ #
8502
+ # ## Handling Errors
8503
+ #
8504
+ # When a waiter is unsuccessful, it will raise an error.
8505
+ # All of the failure errors extend from
8506
+ # {Aws::Waiters::Errors::WaiterFailed}.
8507
+ #
8508
+ # begin
8509
+ # client.wait_until(...)
8510
+ # rescue Aws::Waiters::Errors::WaiterFailed
8511
+ # # resource did not enter the desired state in time
8512
+ # end
8513
+ #
8514
+ # ## Valid Waiters
8515
+ #
8516
+ # The following table lists the valid waiter names, the operations they call,
8517
+ # and the default `:delay` and `:max_attempts` values.
8518
+ #
8519
+ # | waiter_name | params | :delay | :max_attempts |
8520
+ # | ------------------- | ------------------------ | -------- | ------------- |
8521
+ # | connector_connected | {Client#list_connectors} | 30 | 5 |
8522
+ # | connector_deleted | {Client#list_connectors} | 30 | 5 |
8523
+ # | connector_enabled | {Client#list_connectors} | 30 | 5 |
8524
+ #
8525
+ # @raise [Errors::FailureStateError] Raised when the waiter terminates
8526
+ # because the waiter has entered a state that it will not transition
8527
+ # out of, preventing success.
8528
+ #
8529
+ # @raise [Errors::TooManyAttemptsError] Raised when the configured
8530
+ # maximum number of attempts have been made, and the waiter is not
8531
+ # yet successful.
8532
+ #
8533
+ # @raise [Errors::UnexpectedError] Raised when an error is encounted
8534
+ # while polling for a resource that is not expected.
8535
+ #
8536
+ # @raise [Errors::NoSuchWaiterError] Raised when you request to wait
8537
+ # for an unknown state.
8538
+ #
8539
+ # @return [Boolean] Returns `true` if the waiter was successful.
8540
+ # @param [Symbol] waiter_name
8541
+ # @param [Hash] params ({})
8542
+ # @param [Hash] options ({})
8543
+ # @option options [Integer] :max_attempts
8544
+ # @option options [Integer] :delay
8545
+ # @option options [Proc] :before_attempt
8546
+ # @option options [Proc] :before_wait
8547
+ def wait_until(waiter_name, params = {}, options = {})
8548
+ w = waiter(waiter_name, options)
8549
+ yield(w.waiter) if block_given? # deprecated
8550
+ w.wait(params)
8551
+ end
8552
+
6815
8553
  # @api private
6816
8554
  # @deprecated
6817
8555
  def waiter_names
6818
- []
8556
+ waiters.keys
8557
+ end
8558
+
8559
+ private
8560
+
8561
+ # @param [Symbol] waiter_name
8562
+ # @param [Hash] options ({})
8563
+ def waiter(waiter_name, options = {})
8564
+ waiter_class = waiters[waiter_name]
8565
+ if waiter_class
8566
+ waiter_class.new(options.merge(client: self))
8567
+ else
8568
+ raise Aws::Waiters::Errors::NoSuchWaiterError.new(waiter_name, waiters.keys)
8569
+ end
8570
+ end
8571
+
8572
+ def waiters
8573
+ {
8574
+ connector_connected: Waiters::ConnectorConnected,
8575
+ connector_deleted: Waiters::ConnectorDeleted,
8576
+ connector_enabled: Waiters::ConnectorEnabled
8577
+ }
6819
8578
  end
6820
8579
 
6821
8580
  class << self