aws-sdk-inspector2 1.74.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"
@@ -2793,6 +3183,9 @@ module Aws::Inspector2
2793
3183
  # resp.ecr_configuration.rescan_duration_state.pull_date_rescan_mode #=> String, one of "LAST_PULL_DATE", "LAST_IN_USE_AT"
2794
3184
  # resp.ec2_configuration.scan_mode_state.scan_mode #=> String, one of "EC2_SSM_AGENT_BASED", "EC2_HYBRID"
2795
3185
  # resp.ec2_configuration.scan_mode_state.scan_mode_status #=> String, one of "SUCCESS", "PENDING"
3186
+ # resp.ec2_configuration.vm_scanner_state.activated #=> Boolean
3187
+ # resp.ec2_configuration.vm_scanner_state.activated_at #=> Time
3188
+ # resp.ec2_configuration.vm_scanner_state.status #=> String, one of "SUCCESS", "PENDING", "FAILED"
2796
3189
  #
2797
3190
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/GetConfiguration AWS API Documentation
2798
3191
  #
@@ -2868,7 +3261,7 @@ module Aws::Inspector2
2868
3261
  #
2869
3262
  # resp = client.get_encryption_key({
2870
3263
  # scan_type: "NETWORK", # required, accepts NETWORK, PACKAGE, CODE
2871
- # 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
2872
3265
  # })
2873
3266
  #
2874
3267
  # @example Response structure
@@ -3066,6 +3459,63 @@ module Aws::Inspector2
3066
3459
  # resp.filter_criteria.code_repository_provider_type #=> Array
3067
3460
  # resp.filter_criteria.code_repository_provider_type[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
3068
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
3069
3519
  #
3070
3520
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/GetFindingsReportStatus AWS API Documentation
3071
3521
  #
@@ -3939,6 +4389,254 @@ module Aws::Inspector2
3939
4389
  req.send_request(options)
3940
4390
  end
3941
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
+
3942
4640
  # Lists coverage details for your environment.
3943
4641
  #
3944
4642
  # @option params [Integer] :max_results
@@ -4100,6 +4798,74 @@ module Aws::Inspector2
4100
4798
  # value: "CoverageStringInput", # required
4101
4799
  # },
4102
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
+ # ],
4103
4869
  # },
4104
4870
  # })
4105
4871
  #
@@ -4107,12 +4873,12 @@ module Aws::Inspector2
4107
4873
  #
4108
4874
  # resp.next_token #=> String
4109
4875
  # resp.covered_resources #=> Array
4110
- # 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"
4111
4877
  # resp.covered_resources[0].resource_id #=> String
4112
4878
  # resp.covered_resources[0].account_id #=> String
4113
4879
  # resp.covered_resources[0].scan_type #=> String, one of "NETWORK", "PACKAGE", "CODE"
4114
4880
  # resp.covered_resources[0].scan_status.status_code #=> String, one of "ACTIVE", "INACTIVE"
4115
- # 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"
4116
4882
  # resp.covered_resources[0].resource_metadata.ecr_repository.name #=> String
4117
4883
  # resp.covered_resources[0].resource_metadata.ecr_repository.scan_frequency #=> String, one of "MANUAL", "SCAN_ON_PUSH", "CONTINUOUS_SCAN"
4118
4884
  # resp.covered_resources[0].resource_metadata.ecr_image.tags #=> Array
@@ -4129,7 +4895,7 @@ module Aws::Inspector2
4129
4895
  # resp.covered_resources[0].resource_metadata.lambda_function.layers #=> Array
4130
4896
  # resp.covered_resources[0].resource_metadata.lambda_function.layers[0] #=> String
4131
4897
  # resp.covered_resources[0].resource_metadata.lambda_function.function_name #=> String
4132
- # 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"
4133
4899
  # resp.covered_resources[0].resource_metadata.code_repository.project_name #=> String
4134
4900
  # resp.covered_resources[0].resource_metadata.code_repository.integration_arn #=> String
4135
4901
  # resp.covered_resources[0].resource_metadata.code_repository.provider_type #=> String
@@ -4146,9 +4912,31 @@ module Aws::Inspector2
4146
4912
  # resp.covered_resources[0].resource_metadata.code_repository.on_demand_scan.last_scanned_commit_id #=> String
4147
4913
  # resp.covered_resources[0].resource_metadata.code_repository.on_demand_scan.last_scan_at #=> Time
4148
4914
  # resp.covered_resources[0].resource_metadata.code_repository.on_demand_scan.scan_status.status_code #=> String, one of "ACTIVE", "INACTIVE"
4149
- # 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
4150
4933
  # resp.covered_resources[0].last_scanned_at #=> Time
4151
- # resp.covered_resources[0].scan_mode #=> String, one of "EC2_SSM_AGENT_BASED", "EC2_AGENTLESS"
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
4152
4940
  #
4153
4941
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListCoverage AWS API Documentation
4154
4942
  #
@@ -4315,60 +5103,128 @@ module Aws::Inspector2
4315
5103
  # value: "CoverageStringInput", # required
4316
5104
  # },
4317
5105
  # ],
4318
- # },
4319
- # group_by: "SCAN_STATUS_CODE", # accepts SCAN_STATUS_CODE, SCAN_STATUS_REASON, ACCOUNT_ID, RESOURCE_TYPE, ECR_REPOSITORY_NAME
4320
- # next_token: "NextToken",
4321
- # })
4322
- #
4323
- # @example Response structure
4324
- #
4325
- # resp.counts_by_group #=> Array
4326
- # resp.counts_by_group[0].count #=> Integer
4327
- # resp.counts_by_group[0].group_key #=> String, one of "SCAN_STATUS_CODE", "SCAN_STATUS_REASON", "ACCOUNT_ID", "RESOURCE_TYPE", "ECR_REPOSITORY_NAME"
4328
- # resp.total_counts #=> Integer
4329
- # resp.next_token #=> String
4330
- #
4331
- # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListCoverageStatistics AWS API Documentation
4332
- #
4333
- # @overload list_coverage_statistics(params = {})
4334
- # @param [Hash] params ({})
4335
- def list_coverage_statistics(params = {}, options = {})
4336
- req = build_request(:list_coverage_statistics, params)
4337
- req.send_request(options)
4338
- end
4339
-
4340
- # Lists information about the Amazon Inspector delegated administrator
4341
- # of your organization.
4342
- #
4343
- # @option params [Integer] :max_results
4344
- # The maximum number of results the response can return. If your request
4345
- # would return more than the maximum the response will return a
4346
- # `nextToken` value, use this value when you call the action again to
4347
- # get the remaining results.
4348
- #
4349
- # @option params [String] :next_token
4350
- # A token to use for paginating results that are returned in the
4351
- # response. Set the value of this parameter to null for the first
4352
- # request to a list action. If your response returns more than the
4353
- # `maxResults` maximum value it will also return a `nextToken` value.
4354
- # For subsequent calls, use the `nextToken` value returned from the
4355
- # previous request to continue listing results after the first page.
4356
- #
4357
- # @return [Types::ListDelegatedAdminAccountsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4358
- #
4359
- # * {Types::ListDelegatedAdminAccountsResponse#delegated_admin_accounts #delegated_admin_accounts} => Array&lt;Types::DelegatedAdminAccount&gt;
4360
- # * {Types::ListDelegatedAdminAccountsResponse#next_token #next_token} => String
4361
- #
4362
- # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4363
- #
4364
- # @example Request syntax with placeholder values
4365
- #
4366
- # resp = client.list_delegated_admin_accounts({
4367
- # max_results: 1,
4368
- # next_token: "NextToken",
4369
- # })
4370
- #
4371
- # @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
4372
5228
  #
4373
5229
  # resp.delegated_admin_accounts #=> Array
4374
5230
  # resp.delegated_admin_accounts[0].account_id #=> String
@@ -4581,6 +5437,63 @@ module Aws::Inspector2
4581
5437
  # resp.filters[0].criteria.code_repository_provider_type #=> Array
4582
5438
  # resp.filters[0].criteria.code_repository_provider_type[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
4583
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
4584
5497
  # resp.filters[0].action #=> String, one of "NONE", "SUPPRESS"
4585
5498
  # resp.filters[0].created_at #=> Time
4586
5499
  # resp.filters[0].updated_at #=> Time
@@ -4638,7 +5551,7 @@ module Aws::Inspector2
4638
5551
  # @example Request syntax with placeholder values
4639
5552
  #
4640
5553
  # resp = client.list_finding_aggregations({
4641
- # 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
4642
5555
  # next_token: "NextToken",
4643
5556
  # max_results: 1,
4644
5557
  # account_ids: [
@@ -4650,7 +5563,7 @@ module Aws::Inspector2
4650
5563
  # aggregation_request: {
4651
5564
  # account_aggregation: {
4652
5565
  # finding_type: "NETWORK_REACHABILITY", # accepts NETWORK_REACHABILITY, PACKAGE_VULNERABILITY, CODE_VULNERABILITY
4653
- # 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
4654
5567
  # sort_order: "ASC", # accepts ASC, DESC
4655
5568
  # sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
4656
5569
  # },
@@ -4741,7 +5654,7 @@ module Aws::Inspector2
4741
5654
  # },
4742
5655
  # finding_type_aggregation: {
4743
5656
  # finding_type: "NETWORK_REACHABILITY", # accepts NETWORK_REACHABILITY, PACKAGE_VULNERABILITY, CODE_VULNERABILITY
4744
- # 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
4745
5658
  # sort_order: "ASC", # accepts ASC, DESC
4746
5659
  # sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
4747
5660
  # },
@@ -4764,6 +5677,36 @@ module Aws::Inspector2
4764
5677
  # value: "StringInput", # required
4765
5678
  # },
4766
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
+ # ],
4767
5710
  # sort_order: "ASC", # accepts ASC, DESC
4768
5711
  # sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
4769
5712
  # },
@@ -4800,10 +5743,10 @@ module Aws::Inspector2
4800
5743
  # value: "StringInput", # required
4801
5744
  # },
4802
5745
  # ],
4803
- # 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
4804
5748
  # sort_order: "ASC", # accepts ASC, DESC
4805
5749
  # sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
4806
- # finding_type: "NETWORK_REACHABILITY", # accepts NETWORK_REACHABILITY, PACKAGE_VULNERABILITY, CODE_VULNERABILITY
4807
5750
  # },
4808
5751
  # lambda_layer_aggregation: {
4809
5752
  # function_names: [
@@ -4878,12 +5821,212 @@ module Aws::Inspector2
4878
5821
  # },
4879
5822
  # ],
4880
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
+ # },
4881
6024
  # },
4882
6025
  # })
4883
6026
  #
4884
6027
  # @example Response structure
4885
6028
  #
4886
- # 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"
4887
6030
  # resp.responses #=> Array
4888
6031
  # resp.responses[0].account_aggregation.account_id #=> String
4889
6032
  # resp.responses[0].account_aggregation.severity_counts.all #=> Integer
@@ -4894,6 +6037,11 @@ module Aws::Inspector2
4894
6037
  # resp.responses[0].account_aggregation.fix_available_count #=> Integer
4895
6038
  # resp.responses[0].ami_aggregation.ami #=> String
4896
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
4897
6045
  # resp.responses[0].ami_aggregation.severity_counts.all #=> Integer
4898
6046
  # resp.responses[0].ami_aggregation.severity_counts.medium #=> Integer
4899
6047
  # resp.responses[0].ami_aggregation.severity_counts.high #=> Integer
@@ -4930,10 +6078,20 @@ module Aws::Inspector2
4930
6078
  # resp.responses[0].finding_type_aggregation.severity_counts.critical #=> Integer
4931
6079
  # resp.responses[0].finding_type_aggregation.exploit_available_count #=> Integer
4932
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
4933
6086
  # resp.responses[0].image_layer_aggregation.repository #=> String
4934
6087
  # resp.responses[0].image_layer_aggregation.resource_id #=> String
4935
6088
  # resp.responses[0].image_layer_aggregation.layer_hash #=> String
4936
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
4937
6095
  # resp.responses[0].image_layer_aggregation.severity_counts.all #=> Integer
4938
6096
  # resp.responses[0].image_layer_aggregation.severity_counts.medium #=> Integer
4939
6097
  # resp.responses[0].image_layer_aggregation.severity_counts.high #=> Integer
@@ -4946,6 +6104,11 @@ module Aws::Inspector2
4946
6104
  # resp.responses[0].package_aggregation.severity_counts.critical #=> Integer
4947
6105
  # resp.responses[0].repository_aggregation.repository #=> String
4948
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
4949
6112
  # resp.responses[0].repository_aggregation.severity_counts.all #=> Integer
4950
6113
  # resp.responses[0].repository_aggregation.severity_counts.medium #=> Integer
4951
6114
  # resp.responses[0].repository_aggregation.severity_counts.high #=> Integer
@@ -4987,6 +6150,63 @@ module Aws::Inspector2
4987
6150
  # resp.responses[0].code_repository_aggregation.fix_available_active_findings_count #=> Integer
4988
6151
  # resp.responses[0].code_repository_aggregation.account_id #=> String
4989
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
4990
6210
  # resp.next_token #=> String
4991
6211
  #
4992
6212
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListFindingAggregations AWS API Documentation
@@ -5256,85 +6476,199 @@ module Aws::Inspector2
5256
6476
  # },
5257
6477
  # },
5258
6478
  # ],
5259
- # 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: [
5260
6552
  # {
5261
6553
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5262
6554
  # value: "StringInput", # required
5263
6555
  # },
5264
6556
  # ],
5265
- # fix_available: [
6557
+ # code_repository_provider_type: [
5266
6558
  # {
5267
6559
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5268
6560
  # value: "StringInput", # required
5269
6561
  # },
5270
6562
  # ],
5271
- # lambda_function_name: [
6563
+ # cloud_provider: [
5272
6564
  # {
5273
6565
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5274
6566
  # value: "StringInput", # required
5275
6567
  # },
5276
6568
  # ],
5277
- # lambda_function_layers: [
6569
+ # cloud_provider_region: [
5278
6570
  # {
5279
6571
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5280
6572
  # value: "StringInput", # required
5281
6573
  # },
5282
6574
  # ],
5283
- # lambda_function_runtime: [
6575
+ # cloud_provider_account_id: [
5284
6576
  # {
5285
6577
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5286
6578
  # value: "StringInput", # required
5287
6579
  # },
5288
6580
  # ],
5289
- # lambda_function_last_modified_at: [
6581
+ # cloud_provider_org_id: [
5290
6582
  # {
5291
- # start_inclusive: Time.now,
5292
- # end_inclusive: Time.now,
6583
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
6584
+ # value: "StringInput", # required
5293
6585
  # },
5294
6586
  # ],
5295
- # lambda_function_execution_role_arn: [
6587
+ # cloud_vm_image_reference: [
5296
6588
  # {
5297
6589
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5298
6590
  # value: "StringInput", # required
5299
6591
  # },
5300
6592
  # ],
5301
- # exploit_available: [
6593
+ # cloud_vm_network_id: [
5302
6594
  # {
5303
6595
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5304
6596
  # value: "StringInput", # required
5305
6597
  # },
5306
6598
  # ],
5307
- # code_vulnerability_detector_name: [
6599
+ # cloud_vm_subnet_ids: [
5308
6600
  # {
5309
6601
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5310
6602
  # value: "StringInput", # required
5311
6603
  # },
5312
6604
  # ],
5313
- # code_vulnerability_detector_tags: [
6605
+ # cloud_image_repository_name: [
5314
6606
  # {
5315
6607
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5316
6608
  # value: "StringInput", # required
5317
6609
  # },
5318
6610
  # ],
5319
- # code_vulnerability_file_path: [
6611
+ # cloud_image_registry: [
5320
6612
  # {
5321
6613
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5322
6614
  # value: "StringInput", # required
5323
6615
  # },
5324
6616
  # ],
5325
- # 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: [
5326
6648
  # {
5327
6649
  # upper_inclusive: 1.0,
5328
6650
  # lower_inclusive: 1.0,
5329
6651
  # },
5330
6652
  # ],
5331
- # code_repository_project_name: [
6653
+ # cloud_serverless_function_name: [
5332
6654
  # {
5333
6655
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5334
6656
  # value: "StringInput", # required
5335
6657
  # },
5336
6658
  # ],
5337
- # 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: [
5338
6672
  # {
5339
6673
  # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
5340
6674
  # value: "StringInput", # required
@@ -5364,7 +6698,7 @@ module Aws::Inspector2
5364
6698
  # resp.findings[0].updated_at #=> Time
5365
6699
  # resp.findings[0].status #=> String, one of "ACTIVE", "SUPPRESSED", "CLOSED"
5366
6700
  # resp.findings[0].resources #=> Array
5367
- # 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"
5368
6702
  # resp.findings[0].resources[0].id #=> String
5369
6703
  # resp.findings[0].resources[0].partition #=> String
5370
6704
  # resp.findings[0].resources[0].region #=> String
@@ -5394,7 +6728,7 @@ module Aws::Inspector2
5394
6728
  # resp.findings[0].resources[0].details.aws_ecr_container_image.last_in_use_at #=> Time
5395
6729
  # resp.findings[0].resources[0].details.aws_ecr_container_image.in_use_count #=> Integer
5396
6730
  # resp.findings[0].resources[0].details.aws_lambda_function.function_name #=> String
5397
- # 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"
5398
6732
  # resp.findings[0].resources[0].details.aws_lambda_function.code_sha_256 #=> String
5399
6733
  # resp.findings[0].resources[0].details.aws_lambda_function.version #=> String
5400
6734
  # resp.findings[0].resources[0].details.aws_lambda_function.execution_role_arn #=> String
@@ -5412,6 +6746,52 @@ module Aws::Inspector2
5412
6746
  # resp.findings[0].resources[0].details.code_repository.project_name #=> String
5413
6747
  # resp.findings[0].resources[0].details.code_repository.integration_arn #=> String
5414
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
5415
6795
  # resp.findings[0].inspector_score #=> Float
5416
6796
  # resp.findings[0].inspector_score_details.adjusted_cvss.score_source #=> String
5417
6797
  # resp.findings[0].inspector_score_details.adjusted_cvss.cvss_source #=> String
@@ -5606,10 +6986,11 @@ module Aws::Inspector2
5606
6986
  # resp.totals #=> Array
5607
6987
  # resp.totals[0].account_id #=> String
5608
6988
  # resp.totals[0].usage #=> Array
5609
- # 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"
5610
6990
  # resp.totals[0].usage[0].total #=> Float
5611
6991
  # resp.totals[0].usage[0].estimated_monthly_cost #=> Float
5612
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"
5613
6994
  #
5614
6995
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListUsageTotals AWS API Documentation
5615
6996
  #
@@ -5635,7 +7016,7 @@ module Aws::Inspector2
5635
7016
  #
5636
7017
  # resp = client.reset_encryption_key({
5637
7018
  # scan_type: "NETWORK", # required, accepts NETWORK, PACKAGE, CODE
5638
- # 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
5639
7020
  # })
5640
7021
  #
5641
7022
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ResetEncryptionKey AWS API Documentation
@@ -6246,10 +7627,21 @@ module Aws::Inspector2
6246
7627
  req.send_request(options)
6247
7628
  end
6248
7629
 
6249
- # Updates setting configurations for your Amazon Inspector account. When
6250
- # you use this API as an Amazon Inspector delegated administrator this
6251
- # updates the setting for all accounts you manage. Member accounts in an
6252
- # 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.
6253
7645
  #
6254
7646
  # @option params [Types::EcrConfiguration] :ecr_configuration
6255
7647
  # Specifies how the ECR automated re-scan will be updated for your
@@ -6259,11 +7651,21 @@ module Aws::Inspector2
6259
7651
  # Specifies how the Amazon EC2 automated scan will be updated for your
6260
7652
  # environment.
6261
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
+ #
6262
7663
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
6263
7664
  #
6264
7665
  # @example Request syntax with placeholder values
6265
7666
  #
6266
7667
  # resp = client.update_configuration({
7668
+ # account_id: "AccountId",
6267
7669
  # ecr_configuration: {
6268
7670
  # rescan_duration: "LIFETIME", # required, accepts LIFETIME, DAYS_30, DAYS_180, DAYS_14, DAYS_60, DAYS_90
6269
7671
  # pull_date_rescan_duration: "DAYS_14", # accepts DAYS_14, DAYS_30, DAYS_60, DAYS_90, DAYS_180
@@ -6271,6 +7673,11 @@ module Aws::Inspector2
6271
7673
  # },
6272
7674
  # ec2_configuration: {
6273
7675
  # scan_mode: "EC2_SSM_AGENT_BASED", # required, accepts EC2_SSM_AGENT_BASED, EC2_HYBRID
7676
+ # activate_vm_scanner: false,
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
6274
7681
  # },
6275
7682
  # })
6276
7683
  #
@@ -6283,6 +7690,131 @@ module Aws::Inspector2
6283
7690
  req.send_request(options)
6284
7691
  end
6285
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
+
6286
7818
  # Activates, deactivates Amazon Inspector deep inspection, or updates
6287
7819
  # custom paths for your account.
6288
7820
  #
@@ -6352,7 +7884,7 @@ module Aws::Inspector2
6352
7884
  # resp = client.update_encryption_key({
6353
7885
  # kms_key_id: "KmsKeyArn", # required
6354
7886
  # scan_type: "NETWORK", # required, accepts NETWORK, PACKAGE, CODE
6355
- # 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
6356
7888
  # })
6357
7889
  #
6358
7890
  # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UpdateEncryptionKey AWS API Documentation
@@ -6703,6 +8235,120 @@ module Aws::Inspector2
6703
8235
  # value: "StringInput", # required
6704
8236
  # },
6705
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
+ # ],
6706
8352
  # },
6707
8353
  # name: "FilterName",
6708
8354
  # filter_arn: "FilterArn", # required
@@ -6804,14 +8450,131 @@ module Aws::Inspector2
6804
8450
  tracer: tracer
6805
8451
  )
6806
8452
  context[:gem_name] = 'aws-sdk-inspector2'
6807
- context[:gem_version] = '1.74.0'
8453
+ context[:gem_version] = '1.76.0'
6808
8454
  Seahorse::Client::Request.new(handlers, context)
6809
8455
  end
6810
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
+
6811
8553
  # @api private
6812
8554
  # @deprecated
6813
8555
  def waiter_names
6814
- []
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
+ }
6815
8578
  end
6816
8579
 
6817
8580
  class << self