aws-sdk-inspector2 1.24.0 → 1.25.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.
@@ -761,6 +761,81 @@ module Aws::Inspector2
761
761
  req.send_request(options)
762
762
  end
763
763
 
764
+ # Creates a CIS scan configuration.
765
+ #
766
+ # @option params [required, String] :scan_name
767
+ # The scan name for the CIS scan configuration.
768
+ #
769
+ # @option params [required, Types::Schedule] :schedule
770
+ # The schedule for the CIS scan configuration.
771
+ #
772
+ # @option params [required, String] :security_level
773
+ # The security level for the CIS scan configuration. Security level
774
+ # refers to the Benchmark levels that CIS assigns to a profile.
775
+ #
776
+ # @option params [Hash<String,String>] :tags
777
+ # The tags for the CIS scan configuration.
778
+ #
779
+ # @option params [required, Types::CreateCisTargets] :targets
780
+ # The targets for the CIS scan configuration.
781
+ #
782
+ # @return [Types::CreateCisScanConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
783
+ #
784
+ # * {Types::CreateCisScanConfigurationResponse#scan_configuration_arn #scan_configuration_arn} => String
785
+ #
786
+ # @example Request syntax with placeholder values
787
+ #
788
+ # resp = client.create_cis_scan_configuration({
789
+ # scan_name: "CisScanName", # required
790
+ # schedule: { # required
791
+ # daily: {
792
+ # start_time: { # required
793
+ # time_of_day: "TimeOfDay", # required
794
+ # timezone: "Timezone", # required
795
+ # },
796
+ # },
797
+ # monthly: {
798
+ # day: "SUN", # required, accepts SUN, MON, TUE, WED, THU, FRI, SAT
799
+ # start_time: { # required
800
+ # time_of_day: "TimeOfDay", # required
801
+ # timezone: "Timezone", # required
802
+ # },
803
+ # },
804
+ # one_time: {
805
+ # },
806
+ # weekly: {
807
+ # days: ["SUN"], # required, accepts SUN, MON, TUE, WED, THU, FRI, SAT
808
+ # start_time: { # required
809
+ # time_of_day: "TimeOfDay", # required
810
+ # timezone: "Timezone", # required
811
+ # },
812
+ # },
813
+ # },
814
+ # security_level: "LEVEL_1", # required, accepts LEVEL_1, LEVEL_2
815
+ # tags: {
816
+ # "MapKey" => "MapValue",
817
+ # },
818
+ # targets: { # required
819
+ # account_ids: ["TargetAccount"], # required
820
+ # target_resource_tags: { # required
821
+ # "NonEmptyString" => ["String"],
822
+ # },
823
+ # },
824
+ # })
825
+ #
826
+ # @example Response structure
827
+ #
828
+ # resp.scan_configuration_arn #=> String
829
+ #
830
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/CreateCisScanConfiguration AWS API Documentation
831
+ #
832
+ # @overload create_cis_scan_configuration(params = {})
833
+ # @param [Hash] params ({})
834
+ def create_cis_scan_configuration(params = {}, options = {})
835
+ req = build_request(:create_cis_scan_configuration, params)
836
+ req.send_request(options)
837
+ end
838
+
764
839
  # Creates a filter resource using specified filter criteria. When the
765
840
  # filter action is set to `SUPPRESS` this action creates a suppression
766
841
  # rule.
@@ -1511,6 +1586,34 @@ module Aws::Inspector2
1511
1586
  req.send_request(options)
1512
1587
  end
1513
1588
 
1589
+ # Deletes a CIS scan configuration.
1590
+ #
1591
+ # @option params [required, String] :scan_configuration_arn
1592
+ # The ARN of the CIS scan configuration.
1593
+ #
1594
+ # @return [Types::DeleteCisScanConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1595
+ #
1596
+ # * {Types::DeleteCisScanConfigurationResponse#scan_configuration_arn #scan_configuration_arn} => String
1597
+ #
1598
+ # @example Request syntax with placeholder values
1599
+ #
1600
+ # resp = client.delete_cis_scan_configuration({
1601
+ # scan_configuration_arn: "CisScanConfigurationArn", # required
1602
+ # })
1603
+ #
1604
+ # @example Response structure
1605
+ #
1606
+ # resp.scan_configuration_arn #=> String
1607
+ #
1608
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/DeleteCisScanConfiguration AWS API Documentation
1609
+ #
1610
+ # @overload delete_cis_scan_configuration(params = {})
1611
+ # @param [Hash] params ({})
1612
+ def delete_cis_scan_configuration(params = {}, options = {})
1613
+ req = build_request(:delete_cis_scan_configuration, params)
1614
+ req.send_request(options)
1615
+ end
1616
+
1514
1617
  # Deletes a filter resource.
1515
1618
  #
1516
1619
  # @option params [required, String] :arn
@@ -1768,6 +1871,145 @@ module Aws::Inspector2
1768
1871
  req.send_request(options)
1769
1872
  end
1770
1873
 
1874
+ # Retrieves a CIS scan report.
1875
+ #
1876
+ # @option params [required, String] :scan_arn
1877
+ # The scan ARN.
1878
+ #
1879
+ # @option params [Array<String>] :target_accounts
1880
+ # The target accounts.
1881
+ #
1882
+ # @return [Types::GetCisScanReportResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1883
+ #
1884
+ # * {Types::GetCisScanReportResponse#status #status} => String
1885
+ # * {Types::GetCisScanReportResponse#url #url} => String
1886
+ #
1887
+ # @example Request syntax with placeholder values
1888
+ #
1889
+ # resp = client.get_cis_scan_report({
1890
+ # scan_arn: "CisScanArn", # required
1891
+ # target_accounts: ["AccountId"],
1892
+ # })
1893
+ #
1894
+ # @example Response structure
1895
+ #
1896
+ # resp.status #=> String, one of "SUCCEEDED", "FAILED", "IN_PROGRESS"
1897
+ # resp.url #=> String
1898
+ #
1899
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/GetCisScanReport AWS API Documentation
1900
+ #
1901
+ # @overload get_cis_scan_report(params = {})
1902
+ # @param [Hash] params ({})
1903
+ def get_cis_scan_report(params = {}, options = {})
1904
+ req = build_request(:get_cis_scan_report, params)
1905
+ req.send_request(options)
1906
+ end
1907
+
1908
+ # Retrieves CIS scan result details.
1909
+ #
1910
+ # @option params [required, String] :account_id
1911
+ # The account ID.
1912
+ #
1913
+ # @option params [Types::CisScanResultDetailsFilterCriteria] :filter_criteria
1914
+ # The filter criteria.
1915
+ #
1916
+ # @option params [Integer] :max_results
1917
+ # The maximum number of CIS scan result details to be returned in a
1918
+ # single page of results.
1919
+ #
1920
+ # @option params [String] :next_token
1921
+ # The pagination token from a previous request that's used to retrieve
1922
+ # the next page of results.
1923
+ #
1924
+ # @option params [required, String] :scan_arn
1925
+ # The scan ARN.
1926
+ #
1927
+ # @option params [String] :sort_by
1928
+ # The sort by order.
1929
+ #
1930
+ # @option params [String] :sort_order
1931
+ # The sort order.
1932
+ #
1933
+ # @option params [required, String] :target_resource_id
1934
+ # The target resource ID.
1935
+ #
1936
+ # @return [Types::GetCisScanResultDetailsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1937
+ #
1938
+ # * {Types::GetCisScanResultDetailsResponse#next_token #next_token} => String
1939
+ # * {Types::GetCisScanResultDetailsResponse#scan_result_details #scan_result_details} => Array&lt;Types::CisScanResultDetails&gt;
1940
+ #
1941
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1942
+ #
1943
+ # @example Request syntax with placeholder values
1944
+ #
1945
+ # resp = client.get_cis_scan_result_details({
1946
+ # account_id: "AccountId", # required
1947
+ # filter_criteria: {
1948
+ # check_id_filters: [
1949
+ # {
1950
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1951
+ # value: "String", # required
1952
+ # },
1953
+ # ],
1954
+ # finding_arn_filters: [
1955
+ # {
1956
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1957
+ # value: "String", # required
1958
+ # },
1959
+ # ],
1960
+ # finding_status_filters: [
1961
+ # {
1962
+ # comparison: "EQUALS", # required, accepts EQUALS
1963
+ # value: "PASSED", # required, accepts PASSED, FAILED, SKIPPED
1964
+ # },
1965
+ # ],
1966
+ # security_level_filters: [
1967
+ # {
1968
+ # comparison: "EQUALS", # required, accepts EQUALS
1969
+ # value: "LEVEL_1", # required, accepts LEVEL_1, LEVEL_2
1970
+ # },
1971
+ # ],
1972
+ # title_filters: [
1973
+ # {
1974
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
1975
+ # value: "String", # required
1976
+ # },
1977
+ # ],
1978
+ # },
1979
+ # max_results: 1,
1980
+ # next_token: "NextToken",
1981
+ # scan_arn: "CisScanArn", # required
1982
+ # sort_by: "CHECK_ID", # accepts CHECK_ID, STATUS
1983
+ # sort_order: "ASC", # accepts ASC, DESC
1984
+ # target_resource_id: "ResourceId", # required
1985
+ # })
1986
+ #
1987
+ # @example Response structure
1988
+ #
1989
+ # resp.next_token #=> String
1990
+ # resp.scan_result_details #=> Array
1991
+ # resp.scan_result_details[0].account_id #=> String
1992
+ # resp.scan_result_details[0].check_description #=> String
1993
+ # resp.scan_result_details[0].check_id #=> String
1994
+ # resp.scan_result_details[0].finding_arn #=> String
1995
+ # resp.scan_result_details[0].level #=> String, one of "LEVEL_1", "LEVEL_2"
1996
+ # resp.scan_result_details[0].platform #=> String
1997
+ # resp.scan_result_details[0].remediation #=> String
1998
+ # resp.scan_result_details[0].scan_arn #=> String
1999
+ # resp.scan_result_details[0].status #=> String, one of "PASSED", "FAILED", "SKIPPED"
2000
+ # resp.scan_result_details[0].status_reason #=> String
2001
+ # resp.scan_result_details[0].target_resource_id #=> String
2002
+ # resp.scan_result_details[0].title #=> String
2003
+ #
2004
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/GetCisScanResultDetails AWS API Documentation
2005
+ #
2006
+ # @overload get_cis_scan_result_details(params = {})
2007
+ # @param [Hash] params ({})
2008
+ def get_cis_scan_result_details(params = {}, options = {})
2009
+ req = build_request(:get_cis_scan_result_details, params)
2010
+ req.send_request(options)
2011
+ end
2012
+
1771
2013
  # Retrieves setting configurations for Inspector scans.
1772
2014
  #
1773
2015
  # @return [Types::GetConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -2197,6 +2439,448 @@ module Aws::Inspector2
2197
2439
  req.send_request(options)
2198
2440
  end
2199
2441
 
2442
+ # Lists CIS scan configurations.
2443
+ #
2444
+ # @option params [Types::ListCisScanConfigurationsFilterCriteria] :filter_criteria
2445
+ # The CIS scan configuration filter criteria.
2446
+ #
2447
+ # @option params [Integer] :max_results
2448
+ # The maximum number of CIS scan configurations to be returned in a
2449
+ # single page of results.
2450
+ #
2451
+ # @option params [String] :next_token
2452
+ # The pagination token from a previous request that's used to retrieve
2453
+ # the next page of results.
2454
+ #
2455
+ # @option params [String] :sort_by
2456
+ # The CIS scan configuration sort by order.
2457
+ #
2458
+ # @option params [String] :sort_order
2459
+ # The CIS scan configuration sort order order.
2460
+ #
2461
+ # @return [Types::ListCisScanConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2462
+ #
2463
+ # * {Types::ListCisScanConfigurationsResponse#next_token #next_token} => String
2464
+ # * {Types::ListCisScanConfigurationsResponse#scan_configurations #scan_configurations} => Array&lt;Types::CisScanConfiguration&gt;
2465
+ #
2466
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2467
+ #
2468
+ # @example Request syntax with placeholder values
2469
+ #
2470
+ # resp = client.list_cis_scan_configurations({
2471
+ # filter_criteria: {
2472
+ # scan_configuration_arn_filters: [
2473
+ # {
2474
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2475
+ # value: "String", # required
2476
+ # },
2477
+ # ],
2478
+ # scan_name_filters: [
2479
+ # {
2480
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2481
+ # value: "String", # required
2482
+ # },
2483
+ # ],
2484
+ # target_resource_tag_filters: [
2485
+ # {
2486
+ # comparison: "EQUALS", # required, accepts EQUALS
2487
+ # key: "NonEmptyString", # required
2488
+ # value: "NonEmptyString", # required
2489
+ # },
2490
+ # ],
2491
+ # },
2492
+ # max_results: 1,
2493
+ # next_token: "NextToken",
2494
+ # sort_by: "SCAN_NAME", # accepts SCAN_NAME, SCAN_CONFIGURATION_ARN
2495
+ # sort_order: "ASC", # accepts ASC, DESC
2496
+ # })
2497
+ #
2498
+ # @example Response structure
2499
+ #
2500
+ # resp.next_token #=> String
2501
+ # resp.scan_configurations #=> Array
2502
+ # resp.scan_configurations[0].owner_id #=> String
2503
+ # resp.scan_configurations[0].scan_configuration_arn #=> String
2504
+ # resp.scan_configurations[0].scan_name #=> String
2505
+ # resp.scan_configurations[0].schedule.daily.start_time.time_of_day #=> String
2506
+ # resp.scan_configurations[0].schedule.daily.start_time.timezone #=> String
2507
+ # resp.scan_configurations[0].schedule.monthly.day #=> String, one of "SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"
2508
+ # resp.scan_configurations[0].schedule.monthly.start_time.time_of_day #=> String
2509
+ # resp.scan_configurations[0].schedule.monthly.start_time.timezone #=> String
2510
+ # resp.scan_configurations[0].schedule.weekly.days #=> Array
2511
+ # resp.scan_configurations[0].schedule.weekly.days[0] #=> String, one of "SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"
2512
+ # resp.scan_configurations[0].schedule.weekly.start_time.time_of_day #=> String
2513
+ # resp.scan_configurations[0].schedule.weekly.start_time.timezone #=> String
2514
+ # resp.scan_configurations[0].security_level #=> String, one of "LEVEL_1", "LEVEL_2"
2515
+ # resp.scan_configurations[0].tags #=> Hash
2516
+ # resp.scan_configurations[0].tags["MapKey"] #=> String
2517
+ # resp.scan_configurations[0].targets.account_ids #=> Array
2518
+ # resp.scan_configurations[0].targets.account_ids[0] #=> String
2519
+ # resp.scan_configurations[0].targets.target_resource_tags #=> Hash
2520
+ # resp.scan_configurations[0].targets.target_resource_tags["NonEmptyString"] #=> Array
2521
+ # resp.scan_configurations[0].targets.target_resource_tags["NonEmptyString"][0] #=> String
2522
+ #
2523
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListCisScanConfigurations AWS API Documentation
2524
+ #
2525
+ # @overload list_cis_scan_configurations(params = {})
2526
+ # @param [Hash] params ({})
2527
+ def list_cis_scan_configurations(params = {}, options = {})
2528
+ req = build_request(:list_cis_scan_configurations, params)
2529
+ req.send_request(options)
2530
+ end
2531
+
2532
+ # Lists scan results aggregated by checks.
2533
+ #
2534
+ # @option params [Types::CisScanResultsAggregatedByChecksFilterCriteria] :filter_criteria
2535
+ # The filter criteria.
2536
+ #
2537
+ # @option params [Integer] :max_results
2538
+ # The maximum number of scan results aggregated by checks to be returned
2539
+ # in a single page of results.
2540
+ #
2541
+ # @option params [String] :next_token
2542
+ # The pagination token from a previous request that's used to retrieve
2543
+ # the next page of results.
2544
+ #
2545
+ # @option params [required, String] :scan_arn
2546
+ # The scan ARN.
2547
+ #
2548
+ # @option params [String] :sort_by
2549
+ # The sort by order.
2550
+ #
2551
+ # @option params [String] :sort_order
2552
+ # The sort order.
2553
+ #
2554
+ # @return [Types::ListCisScanResultsAggregatedByChecksResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2555
+ #
2556
+ # * {Types::ListCisScanResultsAggregatedByChecksResponse#check_aggregations #check_aggregations} => Array&lt;Types::CisCheckAggregation&gt;
2557
+ # * {Types::ListCisScanResultsAggregatedByChecksResponse#next_token #next_token} => String
2558
+ #
2559
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2560
+ #
2561
+ # @example Request syntax with placeholder values
2562
+ #
2563
+ # resp = client.list_cis_scan_results_aggregated_by_checks({
2564
+ # filter_criteria: {
2565
+ # account_id_filters: [
2566
+ # {
2567
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2568
+ # value: "String", # required
2569
+ # },
2570
+ # ],
2571
+ # check_id_filters: [
2572
+ # {
2573
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2574
+ # value: "String", # required
2575
+ # },
2576
+ # ],
2577
+ # failed_resources_filters: [
2578
+ # {
2579
+ # lower_inclusive: 1,
2580
+ # upper_inclusive: 1,
2581
+ # },
2582
+ # ],
2583
+ # platform_filters: [
2584
+ # {
2585
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2586
+ # value: "String", # required
2587
+ # },
2588
+ # ],
2589
+ # security_level_filters: [
2590
+ # {
2591
+ # comparison: "EQUALS", # required, accepts EQUALS
2592
+ # value: "LEVEL_1", # required, accepts LEVEL_1, LEVEL_2
2593
+ # },
2594
+ # ],
2595
+ # title_filters: [
2596
+ # {
2597
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2598
+ # value: "String", # required
2599
+ # },
2600
+ # ],
2601
+ # },
2602
+ # max_results: 1,
2603
+ # next_token: "NextToken",
2604
+ # scan_arn: "CisScanArn", # required
2605
+ # sort_by: "CHECK_ID", # accepts CHECK_ID, TITLE, PLATFORM, FAILED_COUNTS, SECURITY_LEVEL
2606
+ # sort_order: "ASC", # accepts ASC, DESC
2607
+ # })
2608
+ #
2609
+ # @example Response structure
2610
+ #
2611
+ # resp.check_aggregations #=> Array
2612
+ # resp.check_aggregations[0].account_id #=> String
2613
+ # resp.check_aggregations[0].check_description #=> String
2614
+ # resp.check_aggregations[0].check_id #=> String
2615
+ # resp.check_aggregations[0].level #=> String, one of "LEVEL_1", "LEVEL_2"
2616
+ # resp.check_aggregations[0].platform #=> String
2617
+ # resp.check_aggregations[0].scan_arn #=> String
2618
+ # resp.check_aggregations[0].status_counts.failed #=> Integer
2619
+ # resp.check_aggregations[0].status_counts.passed #=> Integer
2620
+ # resp.check_aggregations[0].status_counts.skipped #=> Integer
2621
+ # resp.check_aggregations[0].title #=> String
2622
+ # resp.next_token #=> String
2623
+ #
2624
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListCisScanResultsAggregatedByChecks AWS API Documentation
2625
+ #
2626
+ # @overload list_cis_scan_results_aggregated_by_checks(params = {})
2627
+ # @param [Hash] params ({})
2628
+ def list_cis_scan_results_aggregated_by_checks(params = {}, options = {})
2629
+ req = build_request(:list_cis_scan_results_aggregated_by_checks, params)
2630
+ req.send_request(options)
2631
+ end
2632
+
2633
+ # Lists scan results aggregated by a target resource.
2634
+ #
2635
+ # @option params [Types::CisScanResultsAggregatedByTargetResourceFilterCriteria] :filter_criteria
2636
+ # The filter criteria.
2637
+ #
2638
+ # @option params [Integer] :max_results
2639
+ # The maximum number of scan results aggregated by a target resource to
2640
+ # be returned in a single page of results.
2641
+ #
2642
+ # @option params [String] :next_token
2643
+ # The pagination token from a previous request that's used to retrieve
2644
+ # the next page of results.
2645
+ #
2646
+ # @option params [required, String] :scan_arn
2647
+ # The scan ARN.
2648
+ #
2649
+ # @option params [String] :sort_by
2650
+ # The sort by order.
2651
+ #
2652
+ # @option params [String] :sort_order
2653
+ # The sort order.
2654
+ #
2655
+ # @return [Types::ListCisScanResultsAggregatedByTargetResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2656
+ #
2657
+ # * {Types::ListCisScanResultsAggregatedByTargetResourceResponse#next_token #next_token} => String
2658
+ # * {Types::ListCisScanResultsAggregatedByTargetResourceResponse#target_resource_aggregations #target_resource_aggregations} => Array&lt;Types::CisTargetResourceAggregation&gt;
2659
+ #
2660
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2661
+ #
2662
+ # @example Request syntax with placeholder values
2663
+ #
2664
+ # resp = client.list_cis_scan_results_aggregated_by_target_resource({
2665
+ # filter_criteria: {
2666
+ # account_id_filters: [
2667
+ # {
2668
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2669
+ # value: "String", # required
2670
+ # },
2671
+ # ],
2672
+ # check_id_filters: [
2673
+ # {
2674
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2675
+ # value: "String", # required
2676
+ # },
2677
+ # ],
2678
+ # failed_checks_filters: [
2679
+ # {
2680
+ # lower_inclusive: 1,
2681
+ # upper_inclusive: 1,
2682
+ # },
2683
+ # ],
2684
+ # platform_filters: [
2685
+ # {
2686
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2687
+ # value: "String", # required
2688
+ # },
2689
+ # ],
2690
+ # status_filters: [
2691
+ # {
2692
+ # comparison: "EQUALS", # required, accepts EQUALS
2693
+ # value: "PASSED", # required, accepts PASSED, FAILED, SKIPPED
2694
+ # },
2695
+ # ],
2696
+ # target_resource_id_filters: [
2697
+ # {
2698
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2699
+ # value: "String", # required
2700
+ # },
2701
+ # ],
2702
+ # target_resource_tag_filters: [
2703
+ # {
2704
+ # comparison: "EQUALS", # required, accepts EQUALS
2705
+ # key: "NonEmptyString", # required
2706
+ # value: "NonEmptyString", # required
2707
+ # },
2708
+ # ],
2709
+ # target_status_filters: [
2710
+ # {
2711
+ # comparison: "EQUALS", # required, accepts EQUALS
2712
+ # value: "TIMED_OUT", # required, accepts TIMED_OUT, CANCELLED, COMPLETED
2713
+ # },
2714
+ # ],
2715
+ # target_status_reason_filters: [
2716
+ # {
2717
+ # comparison: "EQUALS", # required, accepts EQUALS
2718
+ # value: "SCAN_IN_PROGRESS", # required, accepts SCAN_IN_PROGRESS, UNSUPPORTED_OS, SSM_UNMANAGED
2719
+ # },
2720
+ # ],
2721
+ # },
2722
+ # max_results: 1,
2723
+ # next_token: "NextToken",
2724
+ # scan_arn: "CisScanArn", # required
2725
+ # sort_by: "RESOURCE_ID", # accepts RESOURCE_ID, FAILED_COUNTS, ACCOUNT_ID, PLATFORM, TARGET_STATUS, TARGET_STATUS_REASON
2726
+ # sort_order: "ASC", # accepts ASC, DESC
2727
+ # })
2728
+ #
2729
+ # @example Response structure
2730
+ #
2731
+ # resp.next_token #=> String
2732
+ # resp.target_resource_aggregations #=> Array
2733
+ # resp.target_resource_aggregations[0].account_id #=> String
2734
+ # resp.target_resource_aggregations[0].platform #=> String
2735
+ # resp.target_resource_aggregations[0].scan_arn #=> String
2736
+ # resp.target_resource_aggregations[0].status_counts.failed #=> Integer
2737
+ # resp.target_resource_aggregations[0].status_counts.passed #=> Integer
2738
+ # resp.target_resource_aggregations[0].status_counts.skipped #=> Integer
2739
+ # resp.target_resource_aggregations[0].target_resource_id #=> String
2740
+ # resp.target_resource_aggregations[0].target_resource_tags #=> Hash
2741
+ # resp.target_resource_aggregations[0].target_resource_tags["NonEmptyString"] #=> Array
2742
+ # resp.target_resource_aggregations[0].target_resource_tags["NonEmptyString"][0] #=> String
2743
+ # resp.target_resource_aggregations[0].target_status #=> String, one of "TIMED_OUT", "CANCELLED", "COMPLETED"
2744
+ # resp.target_resource_aggregations[0].target_status_reason #=> String, one of "SCAN_IN_PROGRESS", "UNSUPPORTED_OS", "SSM_UNMANAGED"
2745
+ #
2746
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListCisScanResultsAggregatedByTargetResource AWS API Documentation
2747
+ #
2748
+ # @overload list_cis_scan_results_aggregated_by_target_resource(params = {})
2749
+ # @param [Hash] params ({})
2750
+ def list_cis_scan_results_aggregated_by_target_resource(params = {}, options = {})
2751
+ req = build_request(:list_cis_scan_results_aggregated_by_target_resource, params)
2752
+ req.send_request(options)
2753
+ end
2754
+
2755
+ # Returns a CIS scan list.
2756
+ #
2757
+ # @option params [String] :detail_level
2758
+ # The detail applied to the CIS scan.
2759
+ #
2760
+ # @option params [Types::ListCisScansFilterCriteria] :filter_criteria
2761
+ # The CIS scan filter criteria.
2762
+ #
2763
+ # @option params [Integer] :max_results
2764
+ # The maximum number of results to be returned.
2765
+ #
2766
+ # @option params [String] :next_token
2767
+ # The pagination token from a previous request that's used to retrieve
2768
+ # the next page of results.
2769
+ #
2770
+ # @option params [String] :sort_by
2771
+ # The CIS scans sort by order.
2772
+ #
2773
+ # @option params [String] :sort_order
2774
+ # The CIS scans sort order.
2775
+ #
2776
+ # @return [Types::ListCisScansResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2777
+ #
2778
+ # * {Types::ListCisScansResponse#next_token #next_token} => String
2779
+ # * {Types::ListCisScansResponse#scans #scans} => Array&lt;Types::CisScan&gt;
2780
+ #
2781
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2782
+ #
2783
+ # @example Request syntax with placeholder values
2784
+ #
2785
+ # resp = client.list_cis_scans({
2786
+ # detail_level: "ORGANIZATION", # accepts ORGANIZATION, MEMBER
2787
+ # filter_criteria: {
2788
+ # failed_checks_filters: [
2789
+ # {
2790
+ # lower_inclusive: 1,
2791
+ # upper_inclusive: 1,
2792
+ # },
2793
+ # ],
2794
+ # scan_arn_filters: [
2795
+ # {
2796
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2797
+ # value: "String", # required
2798
+ # },
2799
+ # ],
2800
+ # scan_at_filters: [
2801
+ # {
2802
+ # earliest_scan_start_time: Time.now,
2803
+ # latest_scan_start_time: Time.now,
2804
+ # },
2805
+ # ],
2806
+ # scan_configuration_arn_filters: [
2807
+ # {
2808
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2809
+ # value: "String", # required
2810
+ # },
2811
+ # ],
2812
+ # scan_name_filters: [
2813
+ # {
2814
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2815
+ # value: "String", # required
2816
+ # },
2817
+ # ],
2818
+ # scan_status_filters: [
2819
+ # {
2820
+ # comparison: "EQUALS", # required, accepts EQUALS
2821
+ # value: "FAILED", # required, accepts FAILED, COMPLETED, CANCELLED, IN_PROGRESS
2822
+ # },
2823
+ # ],
2824
+ # scheduled_by_filters: [
2825
+ # {
2826
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2827
+ # value: "String", # required
2828
+ # },
2829
+ # ],
2830
+ # target_account_id_filters: [
2831
+ # {
2832
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2833
+ # value: "String", # required
2834
+ # },
2835
+ # ],
2836
+ # target_resource_id_filters: [
2837
+ # {
2838
+ # comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
2839
+ # value: "String", # required
2840
+ # },
2841
+ # ],
2842
+ # target_resource_tag_filters: [
2843
+ # {
2844
+ # comparison: "EQUALS", # required, accepts EQUALS
2845
+ # key: "NonEmptyString", # required
2846
+ # value: "NonEmptyString", # required
2847
+ # },
2848
+ # ],
2849
+ # },
2850
+ # max_results: 1,
2851
+ # next_token: "NextToken",
2852
+ # sort_by: "STATUS", # accepts STATUS, SCHEDULED_BY, SCAN_START_DATE, FAILED_CHECKS
2853
+ # sort_order: "ASC", # accepts ASC, DESC
2854
+ # })
2855
+ #
2856
+ # @example Response structure
2857
+ #
2858
+ # resp.next_token #=> String
2859
+ # resp.scans #=> Array
2860
+ # resp.scans[0].failed_checks #=> Integer
2861
+ # resp.scans[0].scan_arn #=> String
2862
+ # resp.scans[0].scan_configuration_arn #=> String
2863
+ # resp.scans[0].scan_date #=> Time
2864
+ # resp.scans[0].scan_name #=> String
2865
+ # resp.scans[0].scheduled_by #=> String
2866
+ # resp.scans[0].security_level #=> String, one of "LEVEL_1", "LEVEL_2"
2867
+ # resp.scans[0].status #=> String, one of "FAILED", "COMPLETED", "CANCELLED", "IN_PROGRESS"
2868
+ # resp.scans[0].targets.account_ids #=> Array
2869
+ # resp.scans[0].targets.account_ids[0] #=> String
2870
+ # resp.scans[0].targets.target_resource_tags #=> Hash
2871
+ # resp.scans[0].targets.target_resource_tags["NonEmptyString"] #=> Array
2872
+ # resp.scans[0].targets.target_resource_tags["NonEmptyString"][0] #=> String
2873
+ # resp.scans[0].total_checks #=> Integer
2874
+ #
2875
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListCisScans AWS API Documentation
2876
+ #
2877
+ # @overload list_cis_scans(params = {})
2878
+ # @param [Hash] params ({})
2879
+ def list_cis_scans(params = {}, options = {})
2880
+ req = build_request(:list_cis_scans, params)
2881
+ req.send_request(options)
2882
+ end
2883
+
2200
2884
  # Lists coverage details for you environment.
2201
2885
  #
2202
2886
  # @option params [Types::CoverageFilterCriteria] :filter_criteria
@@ -3763,6 +4447,158 @@ module Aws::Inspector2
3763
4447
  req.send_request(options)
3764
4448
  end
3765
4449
 
4450
+ # Sends a CIS session health. This API is used by the Amazon Inspector
4451
+ # SSM plugin to communicate with the Amazon Inspector service. The
4452
+ # Amazon Inspector SSM plugin calls this API to start a CIS scan session
4453
+ # for the scan ID supplied by the service.
4454
+ #
4455
+ # @option params [required, String] :scan_job_id
4456
+ # A unique identifier for the scan job.
4457
+ #
4458
+ # @option params [required, String] :session_token
4459
+ # The unique token that identifies the CIS session.
4460
+ #
4461
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4462
+ #
4463
+ # @example Request syntax with placeholder values
4464
+ #
4465
+ # resp = client.send_cis_session_health({
4466
+ # scan_job_id: "UUID", # required
4467
+ # session_token: "UUID", # required
4468
+ # })
4469
+ #
4470
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/SendCisSessionHealth AWS API Documentation
4471
+ #
4472
+ # @overload send_cis_session_health(params = {})
4473
+ # @param [Hash] params ({})
4474
+ def send_cis_session_health(params = {}, options = {})
4475
+ req = build_request(:send_cis_session_health, params)
4476
+ req.send_request(options)
4477
+ end
4478
+
4479
+ # Sends a CIS session telemetry. This API is used by the Amazon
4480
+ # Inspector SSM plugin to communicate with the Amazon Inspector service.
4481
+ # The Amazon Inspector SSM plugin calls this API to start a CIS scan
4482
+ # session for the scan ID supplied by the service.
4483
+ #
4484
+ # @option params [required, Array<Types::CisSessionMessage>] :messages
4485
+ # The CIS session telemetry messages.
4486
+ #
4487
+ # @option params [required, String] :scan_job_id
4488
+ # A unique identifier for the scan job.
4489
+ #
4490
+ # @option params [required, String] :session_token
4491
+ # The unique token that identifies the CIS session.
4492
+ #
4493
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4494
+ #
4495
+ # @example Request syntax with placeholder values
4496
+ #
4497
+ # resp = client.send_cis_session_telemetry({
4498
+ # messages: [ # required
4499
+ # {
4500
+ # cis_rule_details: "data", # required
4501
+ # rule_id: "RuleId", # required
4502
+ # status: "FAILED", # required, accepts FAILED, PASSED, NOT_EVALUATED, INFORMATIONAL, UNKNOWN, NOT_APPLICABLE, ERROR
4503
+ # },
4504
+ # ],
4505
+ # scan_job_id: "UUID", # required
4506
+ # session_token: "UUID", # required
4507
+ # })
4508
+ #
4509
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/SendCisSessionTelemetry AWS API Documentation
4510
+ #
4511
+ # @overload send_cis_session_telemetry(params = {})
4512
+ # @param [Hash] params ({})
4513
+ def send_cis_session_telemetry(params = {}, options = {})
4514
+ req = build_request(:send_cis_session_telemetry, params)
4515
+ req.send_request(options)
4516
+ end
4517
+
4518
+ # Starts a CIS session. This API is used by the Amazon Inspector SSM
4519
+ # plugin to communicate with the Amazon Inspector service. The Amazon
4520
+ # Inspector SSM plugin calls this API to start a CIS scan session for
4521
+ # the scan ID supplied by the service.
4522
+ #
4523
+ # @option params [required, Types::StartCisSessionMessage] :message
4524
+ # The start CIS session message.
4525
+ #
4526
+ # @option params [required, String] :scan_job_id
4527
+ # A unique identifier for the scan job.
4528
+ #
4529
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4530
+ #
4531
+ # @example Request syntax with placeholder values
4532
+ #
4533
+ # resp = client.start_cis_session({
4534
+ # message: { # required
4535
+ # session_token: "UUID", # required
4536
+ # },
4537
+ # scan_job_id: "UUID", # required
4538
+ # })
4539
+ #
4540
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/StartCisSession AWS API Documentation
4541
+ #
4542
+ # @overload start_cis_session(params = {})
4543
+ # @param [Hash] params ({})
4544
+ def start_cis_session(params = {}, options = {})
4545
+ req = build_request(:start_cis_session, params)
4546
+ req.send_request(options)
4547
+ end
4548
+
4549
+ # Stops a CIS session. This API is used by the Amazon Inspector SSM
4550
+ # plugin to communicate with the Amazon Inspector service. The Amazon
4551
+ # Inspector SSM plugin calls this API to start a CIS scan session for
4552
+ # the scan ID supplied by the service.
4553
+ #
4554
+ # @option params [required, Types::StopCisSessionMessage] :message
4555
+ # The stop CIS session message.
4556
+ #
4557
+ # @option params [required, String] :scan_job_id
4558
+ # A unique identifier for the scan job.
4559
+ #
4560
+ # @option params [required, String] :session_token
4561
+ # The unique token that identifies the CIS session.
4562
+ #
4563
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4564
+ #
4565
+ # @example Request syntax with placeholder values
4566
+ #
4567
+ # resp = client.stop_cis_session({
4568
+ # message: { # required
4569
+ # benchmark_profile: "BenchmarkProfile",
4570
+ # benchmark_version: "BenchmarkVersion",
4571
+ # compute_platform: {
4572
+ # product: "Product",
4573
+ # vendor: "Vendor",
4574
+ # version: "PlatformVersion",
4575
+ # },
4576
+ # progress: { # required
4577
+ # error_checks: 1,
4578
+ # failed_checks: 1,
4579
+ # informational_checks: 1,
4580
+ # not_applicable_checks: 1,
4581
+ # not_evaluated_checks: 1,
4582
+ # successful_checks: 1,
4583
+ # total_checks: 1,
4584
+ # unknown_checks: 1,
4585
+ # },
4586
+ # reason: "Reason",
4587
+ # status: "SUCCESS", # required, accepts SUCCESS, FAILED, INTERRUPTED, UNSUPPORTED_OS
4588
+ # },
4589
+ # scan_job_id: "UUID", # required
4590
+ # session_token: "UUID", # required
4591
+ # })
4592
+ #
4593
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/StopCisSession AWS API Documentation
4594
+ #
4595
+ # @overload stop_cis_session(params = {})
4596
+ # @param [Hash] params ({})
4597
+ def stop_cis_session(params = {}, options = {})
4598
+ req = build_request(:stop_cis_session, params)
4599
+ req.send_request(options)
4600
+ end
4601
+
3766
4602
  # Adds tags to a resource.
3767
4603
  #
3768
4604
  # @option params [required, String] :resource_arn
@@ -3817,6 +4653,79 @@ module Aws::Inspector2
3817
4653
  req.send_request(options)
3818
4654
  end
3819
4655
 
4656
+ # Updates a CIS scan configuration.
4657
+ #
4658
+ # @option params [required, String] :scan_configuration_arn
4659
+ # The CIS scan configuration ARN.
4660
+ #
4661
+ # @option params [String] :scan_name
4662
+ # The scan name for the CIS scan configuration.
4663
+ #
4664
+ # @option params [Types::Schedule] :schedule
4665
+ # The schedule for the CIS scan configuration.
4666
+ #
4667
+ # @option params [String] :security_level
4668
+ # The security level for the CIS scan configuration. Security level
4669
+ # refers to the Benchmark levels that CIS assigns to a profile.
4670
+ #
4671
+ # @option params [Types::UpdateCisTargets] :targets
4672
+ # The targets for the CIS scan configuration.
4673
+ #
4674
+ # @return [Types::UpdateCisScanConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4675
+ #
4676
+ # * {Types::UpdateCisScanConfigurationResponse#scan_configuration_arn #scan_configuration_arn} => String
4677
+ #
4678
+ # @example Request syntax with placeholder values
4679
+ #
4680
+ # resp = client.update_cis_scan_configuration({
4681
+ # scan_configuration_arn: "CisScanConfigurationArn", # required
4682
+ # scan_name: "CisScanName",
4683
+ # schedule: {
4684
+ # daily: {
4685
+ # start_time: { # required
4686
+ # time_of_day: "TimeOfDay", # required
4687
+ # timezone: "Timezone", # required
4688
+ # },
4689
+ # },
4690
+ # monthly: {
4691
+ # day: "SUN", # required, accepts SUN, MON, TUE, WED, THU, FRI, SAT
4692
+ # start_time: { # required
4693
+ # time_of_day: "TimeOfDay", # required
4694
+ # timezone: "Timezone", # required
4695
+ # },
4696
+ # },
4697
+ # one_time: {
4698
+ # },
4699
+ # weekly: {
4700
+ # days: ["SUN"], # required, accepts SUN, MON, TUE, WED, THU, FRI, SAT
4701
+ # start_time: { # required
4702
+ # time_of_day: "TimeOfDay", # required
4703
+ # timezone: "Timezone", # required
4704
+ # },
4705
+ # },
4706
+ # },
4707
+ # security_level: "LEVEL_1", # accepts LEVEL_1, LEVEL_2
4708
+ # targets: {
4709
+ # account_ids: ["TargetAccount"],
4710
+ # target_resource_tags: {
4711
+ # "NonEmptyString" => ["String"],
4712
+ # },
4713
+ # },
4714
+ # })
4715
+ #
4716
+ # @example Response structure
4717
+ #
4718
+ # resp.scan_configuration_arn #=> String
4719
+ #
4720
+ # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UpdateCisScanConfiguration AWS API Documentation
4721
+ #
4722
+ # @overload update_cis_scan_configuration(params = {})
4723
+ # @param [Hash] params ({})
4724
+ def update_cis_scan_configuration(params = {}, options = {})
4725
+ req = build_request(:update_cis_scan_configuration, params)
4726
+ req.send_request(options)
4727
+ end
4728
+
3820
4729
  # Updates setting configurations for your Amazon Inspector account. When
3821
4730
  # you use this API as an Amazon Inspector delegated administrator this
3822
4731
  # updates the setting for all accounts you manage. Member accounts in an
@@ -4331,7 +5240,7 @@ module Aws::Inspector2
4331
5240
  params: params,
4332
5241
  config: config)
4333
5242
  context[:gem_name] = 'aws-sdk-inspector2'
4334
- context[:gem_version] = '1.24.0'
5243
+ context[:gem_version] = '1.25.0'
4335
5244
  Seahorse::Client::Request.new(handlers, context)
4336
5245
  end
4337
5246