aws-sdk-guardduty 1.35.1 → 1.40.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8eff2859a16e01960d8fc96ff79bf0708654a4acffef3d614779f67ace8524c1
4
- data.tar.gz: '039e5deba9bc98a62e2cb6cc1b8d05a11c66ef33e78802aa5adf3b011e8ee5ad'
3
+ metadata.gz: 425dc70d854ceb12718b2d40a6837f94f1c338690796813915ce9fc89855113a
4
+ data.tar.gz: 8059e9f22e06c76bc38de1a3ff67780563f618623f6669dec2fddba6112a1ea2
5
5
  SHA512:
6
- metadata.gz: 6695fe0941cefc0c9d86d00cb21c8bc46922ec959be36a4e9e6397f8a959fc31e37e55c688f580208f2dfe677de4a7bb42a7e3ce6f7da31201d14765a5975dfb
7
- data.tar.gz: 583b6e76f3182210ec1e6d7243a8a87138a5a07e7992aab97c6755453ff371063c28d6966a5dfa49afa9d123717c2f44523299ead6a4c63786020e062c001ce2
6
+ metadata.gz: d7ed9bb5d82948973e48d38d429f64d7cbc67528360722b8311b97cc8bf10a9087038fdab7ab60c65c17ea4b8195aa0209d5cb1f6045f2fb66b471cb110079b5
7
+ data.tar.gz: 6239acd12842d9d6fc8fcddefd83f396a255eb88623a4a11f377ac099d8784274b50a239cac6b0eff2657bba81e7ef279183a127be04b49e2a1767e25abca1fa
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -42,9 +44,9 @@ require_relative 'aws-sdk-guardduty/customizations'
42
44
  #
43
45
  # See {Errors} for more information.
44
46
  #
45
- # @service
47
+ # @!group service
46
48
  module Aws::GuardDuty
47
49
 
48
- GEM_VERSION = '1.35.1'
50
+ GEM_VERSION = '1.40.0'
49
51
 
50
52
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -83,13 +85,28 @@ module Aws::GuardDuty
83
85
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
84
86
  # credentials.
85
87
  #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
86
102
  # * `Aws::InstanceProfileCredentials` - Used for loading credentials
87
103
  # from an EC2 IMDS on an EC2 instance.
88
104
  #
89
- # * `Aws::SharedCredentials` - Used for loading credentials from a
90
- # shared file, such as `~/.aws/config`.
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
91
107
  #
92
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
93
110
  #
94
111
  # When `:credentials` are not configured directly, the following
95
112
  # locations will be searched for credentials:
@@ -99,10 +116,10 @@ module Aws::GuardDuty
99
116
  # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
100
117
  # * `~/.aws/credentials`
101
118
  # * `~/.aws/config`
102
- # * EC2 IMDS instance profile - When used by default, the timeouts are
103
- # very aggressive. Construct and pass an instance of
104
- # `Aws::InstanceProfileCredentails` to enable retries and extended
105
- # timeouts.
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts.
106
123
  #
107
124
  # @option options [required, String] :region
108
125
  # The AWS region to connect to. The configured `:region` is
@@ -378,7 +395,8 @@ module Aws::GuardDuty
378
395
  # Creates a single Amazon GuardDuty detector. A detector is a resource
379
396
  # that represents the GuardDuty service. To start using GuardDuty, you
380
397
  # must create a detector in each Region where you enable the service.
381
- # You can have only one detector per account per Region.
398
+ # You can have only one detector per account per Region. All data
399
+ # sources are enabled in a new detector by default.
382
400
  #
383
401
  # @option params [required, Boolean] :enable
384
402
  # A Boolean value that specifies whether the detector is to be enabled.
@@ -393,6 +411,10 @@ module Aws::GuardDuty
393
411
  # An enum value that specifies how frequently updated findings are
394
412
  # exported.
395
413
  #
414
+ # @option params [Types::DataSourceConfigurations] :data_sources
415
+ # An object that describes which data sources will be enabled for the
416
+ # detector.
417
+ #
396
418
  # @option params [Hash<String,String>] :tags
397
419
  # The tags to be added to a new detector resource.
398
420
  #
@@ -406,6 +428,11 @@ module Aws::GuardDuty
406
428
  # enable: false, # required
407
429
  # client_token: "ClientToken",
408
430
  # finding_publishing_frequency: "FIFTEEN_MINUTES", # accepts FIFTEEN_MINUTES, ONE_HOUR, SIX_HOURS
431
+ # data_sources: {
432
+ # s3_logs: {
433
+ # enable: false, # required
434
+ # },
435
+ # },
409
436
  # tags: {
410
437
  # "TagKey" => "TagValue",
411
438
  # },
@@ -687,8 +714,22 @@ module Aws::GuardDuty
687
714
  end
688
715
 
689
716
  # Creates member accounts of the current AWS account by specifying a
690
- # list of AWS account IDs. The current AWS account can then invite these
691
- # members to manage GuardDuty in their accounts.
717
+ # list of AWS account IDs. This step is a prerequisite for managing the
718
+ # associated member accounts either by invitation or through an
719
+ # organization.
720
+ #
721
+ # When using `Create Members` as an organizations delegated
722
+ # administrator this action will enable GuardDuty in the added member
723
+ # accounts, with the exception of the organization master account, which
724
+ # must enable GuardDuty prior to being added as a member.
725
+ #
726
+ # If you are adding accounts by invitation use this action after
727
+ # GuardDuty has been enabled in potential member accounts and before
728
+ # using [ `Invite Members` ][1].
729
+ #
730
+ #
731
+ #
732
+ # [1]: https://docs.aws.amazon.com/guardduty/latest/APIReference/API_InviteMembers.html
692
733
  #
693
734
  # @option params [required, String] :detector_id
694
735
  # The unique ID of the detector of the GuardDuty account that you want
@@ -1114,6 +1155,7 @@ module Aws::GuardDuty
1114
1155
  #
1115
1156
  # * {Types::DescribeOrganizationConfigurationResponse#auto_enable #auto_enable} => Boolean
1116
1157
  # * {Types::DescribeOrganizationConfigurationResponse#member_account_limit_reached #member_account_limit_reached} => Boolean
1158
+ # * {Types::DescribeOrganizationConfigurationResponse#data_sources #data_sources} => Types::OrganizationDataSourceConfigurationsResult
1117
1159
  #
1118
1160
  # @example Request syntax with placeholder values
1119
1161
  #
@@ -1125,6 +1167,7 @@ module Aws::GuardDuty
1125
1167
  #
1126
1168
  # resp.auto_enable #=> Boolean
1127
1169
  # resp.member_account_limit_reached #=> Boolean
1170
+ # resp.data_sources.s3_logs.auto_enable #=> Boolean
1128
1171
  #
1129
1172
  # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/DescribeOrganizationConfiguration AWS API Documentation
1130
1173
  #
@@ -1298,6 +1341,7 @@ module Aws::GuardDuty
1298
1341
  # * {Types::GetDetectorResponse#service_role #service_role} => String
1299
1342
  # * {Types::GetDetectorResponse#status #status} => String
1300
1343
  # * {Types::GetDetectorResponse#updated_at #updated_at} => String
1344
+ # * {Types::GetDetectorResponse#data_sources #data_sources} => Types::DataSourceConfigurationsResult
1301
1345
  # * {Types::GetDetectorResponse#tags #tags} => Hash&lt;String,String&gt;
1302
1346
  #
1303
1347
  # @example Request syntax with placeholder values
@@ -1313,6 +1357,10 @@ module Aws::GuardDuty
1313
1357
  # resp.service_role #=> String
1314
1358
  # resp.status #=> String, one of "ENABLED", "DISABLED"
1315
1359
  # resp.updated_at #=> String
1360
+ # resp.data_sources.cloud_trail.status #=> String, one of "ENABLED", "DISABLED"
1361
+ # resp.data_sources.dns_logs.status #=> String, one of "ENABLED", "DISABLED"
1362
+ # resp.data_sources.flow_logs.status #=> String, one of "ENABLED", "DISABLED"
1363
+ # resp.data_sources.s3_logs.status #=> String, one of "ENABLED", "DISABLED"
1316
1364
  # resp.tags #=> Hash
1317
1365
  # resp.tags["TagKey"] #=> String
1318
1366
  #
@@ -1489,6 +1537,7 @@ module Aws::GuardDuty
1489
1537
  # resp.findings[0].service.action.aws_api_call_action.api #=> String
1490
1538
  # resp.findings[0].service.action.aws_api_call_action.caller_type #=> String
1491
1539
  # resp.findings[0].service.action.aws_api_call_action.domain_details.domain #=> String
1540
+ # resp.findings[0].service.action.aws_api_call_action.error_code #=> String
1492
1541
  # resp.findings[0].service.action.aws_api_call_action.remote_ip_details.city.city_name #=> String
1493
1542
  # resp.findings[0].service.action.aws_api_call_action.remote_ip_details.country.country_code #=> String
1494
1543
  # resp.findings[0].service.action.aws_api_call_action.remote_ip_details.country.country_name #=> String
@@ -1710,6 +1759,48 @@ module Aws::GuardDuty
1710
1759
  req.send_request(options)
1711
1760
  end
1712
1761
 
1762
+ # Describes which data sources are enabled for the member account's
1763
+ # detector.
1764
+ #
1765
+ # @option params [required, String] :detector_id
1766
+ # The detector ID for the master account.
1767
+ #
1768
+ # @option params [required, Array<String>] :account_ids
1769
+ # The account ID of the member account.
1770
+ #
1771
+ # @return [Types::GetMemberDetectorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1772
+ #
1773
+ # * {Types::GetMemberDetectorsResponse#member_data_source_configurations #member_data_source_configurations} => Array&lt;Types::MemberDataSourceConfiguration&gt;
1774
+ # * {Types::GetMemberDetectorsResponse#unprocessed_accounts #unprocessed_accounts} => Array&lt;Types::UnprocessedAccount&gt;
1775
+ #
1776
+ # @example Request syntax with placeholder values
1777
+ #
1778
+ # resp = client.get_member_detectors({
1779
+ # detector_id: "DetectorId", # required
1780
+ # account_ids: ["AccountId"], # required
1781
+ # })
1782
+ #
1783
+ # @example Response structure
1784
+ #
1785
+ # resp.member_data_source_configurations #=> Array
1786
+ # resp.member_data_source_configurations[0].account_id #=> String
1787
+ # resp.member_data_source_configurations[0].data_sources.cloud_trail.status #=> String, one of "ENABLED", "DISABLED"
1788
+ # resp.member_data_source_configurations[0].data_sources.dns_logs.status #=> String, one of "ENABLED", "DISABLED"
1789
+ # resp.member_data_source_configurations[0].data_sources.flow_logs.status #=> String, one of "ENABLED", "DISABLED"
1790
+ # resp.member_data_source_configurations[0].data_sources.s3_logs.status #=> String, one of "ENABLED", "DISABLED"
1791
+ # resp.unprocessed_accounts #=> Array
1792
+ # resp.unprocessed_accounts[0].account_id #=> String
1793
+ # resp.unprocessed_accounts[0].result #=> String
1794
+ #
1795
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/GetMemberDetectors AWS API Documentation
1796
+ #
1797
+ # @overload get_member_detectors(params = {})
1798
+ # @param [Hash] params ({})
1799
+ def get_member_detectors(params = {}, options = {})
1800
+ req = build_request(:get_member_detectors, params)
1801
+ req.send_request(options)
1802
+ end
1803
+
1713
1804
  # Retrieves GuardDuty member accounts (to the current GuardDuty master
1714
1805
  # account) specified by the account IDs.
1715
1806
  #
@@ -1799,6 +1890,92 @@ module Aws::GuardDuty
1799
1890
  req.send_request(options)
1800
1891
  end
1801
1892
 
1893
+ # Lists Amazon GuardDuty usage statistics over the last 30 days for the
1894
+ # specified detector ID. For newly enabled detectors or data sources the
1895
+ # cost returned will include only the usage so far under 30 days, this
1896
+ # may differ from the cost metrics in the console, which projects usage
1897
+ # over 30 days to provide a monthly cost estimate. For more information
1898
+ # see [Understanding How Usage Costs are Calculated][1].
1899
+ #
1900
+ #
1901
+ #
1902
+ # [1]: https://docs.aws.amazon.com/guardduty/latest/ug/monitoring_costs.html#usage-calculations
1903
+ #
1904
+ # @option params [required, String] :detector_id
1905
+ # The ID of the detector that specifies the GuardDuty service whose
1906
+ # usage statistics you want to retrieve.
1907
+ #
1908
+ # @option params [required, String] :usage_statistic_type
1909
+ # The type of usage statistics to retrieve.
1910
+ #
1911
+ # @option params [required, Types::UsageCriteria] :usage_criteria
1912
+ # Represents the criteria used for querying usage.
1913
+ #
1914
+ # @option params [String] :unit
1915
+ # The currency unit you would like to view your usage statistics in.
1916
+ # Current valid values are USD.
1917
+ #
1918
+ # @option params [Integer] :max_results
1919
+ # The maximum number of results to return in the response.
1920
+ #
1921
+ # @option params [String] :next_token
1922
+ # A token to use for paginating results that are returned in the
1923
+ # response. Set the value of this parameter to null for the first
1924
+ # request to a list action. For subsequent calls, use the NextToken
1925
+ # value returned from the previous request to continue listing results
1926
+ # after the first page.
1927
+ #
1928
+ # @return [Types::GetUsageStatisticsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1929
+ #
1930
+ # * {Types::GetUsageStatisticsResponse#usage_statistics #usage_statistics} => Types::UsageStatistics
1931
+ # * {Types::GetUsageStatisticsResponse#next_token #next_token} => String
1932
+ #
1933
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1934
+ #
1935
+ # @example Request syntax with placeholder values
1936
+ #
1937
+ # resp = client.get_usage_statistics({
1938
+ # detector_id: "DetectorId", # required
1939
+ # usage_statistic_type: "SUM_BY_ACCOUNT", # required, accepts SUM_BY_ACCOUNT, SUM_BY_DATA_SOURCE, SUM_BY_RESOURCE, TOP_RESOURCES
1940
+ # usage_criteria: { # required
1941
+ # account_ids: ["AccountId"],
1942
+ # data_sources: ["FLOW_LOGS"], # required, accepts FLOW_LOGS, CLOUD_TRAIL, DNS_LOGS, S3_LOGS
1943
+ # resources: ["String"],
1944
+ # },
1945
+ # unit: "String",
1946
+ # max_results: 1,
1947
+ # next_token: "String",
1948
+ # })
1949
+ #
1950
+ # @example Response structure
1951
+ #
1952
+ # resp.usage_statistics.sum_by_account #=> Array
1953
+ # resp.usage_statistics.sum_by_account[0].account_id #=> String
1954
+ # resp.usage_statistics.sum_by_account[0].total.amount #=> String
1955
+ # resp.usage_statistics.sum_by_account[0].total.unit #=> String
1956
+ # resp.usage_statistics.sum_by_data_source #=> Array
1957
+ # resp.usage_statistics.sum_by_data_source[0].data_source #=> String, one of "FLOW_LOGS", "CLOUD_TRAIL", "DNS_LOGS", "S3_LOGS"
1958
+ # resp.usage_statistics.sum_by_data_source[0].total.amount #=> String
1959
+ # resp.usage_statistics.sum_by_data_source[0].total.unit #=> String
1960
+ # resp.usage_statistics.sum_by_resource #=> Array
1961
+ # resp.usage_statistics.sum_by_resource[0].resource #=> String
1962
+ # resp.usage_statistics.sum_by_resource[0].total.amount #=> String
1963
+ # resp.usage_statistics.sum_by_resource[0].total.unit #=> String
1964
+ # resp.usage_statistics.top_resources #=> Array
1965
+ # resp.usage_statistics.top_resources[0].resource #=> String
1966
+ # resp.usage_statistics.top_resources[0].total.amount #=> String
1967
+ # resp.usage_statistics.top_resources[0].total.unit #=> String
1968
+ # resp.next_token #=> String
1969
+ #
1970
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/GetUsageStatistics AWS API Documentation
1971
+ #
1972
+ # @overload get_usage_statistics(params = {})
1973
+ # @param [Hash] params ({})
1974
+ def get_usage_statistics(params = {}, options = {})
1975
+ req = build_request(:get_usage_statistics, params)
1976
+ req.send_request(options)
1977
+ end
1978
+
1802
1979
  # Invites other AWS accounts (created as members of the current AWS
1803
1980
  # account by CreateMembers) to enable GuardDuty, and allow the current
1804
1981
  # AWS account to view and manage these accounts' GuardDuty findings on
@@ -1814,12 +1991,12 @@ module Aws::GuardDuty
1814
1991
  #
1815
1992
  # @option params [Boolean] :disable_email_notification
1816
1993
  # A Boolean value that specifies whether you want to disable email
1817
- # notification to the accounts that you’re inviting to GuardDuty as
1994
+ # notification to the accounts that you are inviting to GuardDuty as
1818
1995
  # members.
1819
1996
  #
1820
1997
  # @option params [String] :message
1821
1998
  # The invitation message that you want to send to the accounts that
1822
- # youre inviting to GuardDuty as members.
1999
+ # you're inviting to GuardDuty as members.
1823
2000
  #
1824
2001
  # @return [Types::InviteMembersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1825
2002
  #
@@ -2618,6 +2795,9 @@ module Aws::GuardDuty
2618
2795
  # An enum value that specifies how frequently findings are exported,
2619
2796
  # such as to CloudWatch Events.
2620
2797
  #
2798
+ # @option params [Types::DataSourceConfigurations] :data_sources
2799
+ # An object that describes which data sources will be updated.
2800
+ #
2621
2801
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2622
2802
  #
2623
2803
  # @example Request syntax with placeholder values
@@ -2626,6 +2806,11 @@ module Aws::GuardDuty
2626
2806
  # detector_id: "DetectorId", # required
2627
2807
  # enable: false,
2628
2808
  # finding_publishing_frequency: "FIFTEEN_MINUTES", # accepts FIFTEEN_MINUTES, ONE_HOUR, SIX_HOURS
2809
+ # data_sources: {
2810
+ # s3_logs: {
2811
+ # enable: false, # required
2812
+ # },
2813
+ # },
2629
2814
  # })
2630
2815
  #
2631
2816
  # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/UpdateDetector AWS API Documentation
@@ -2783,6 +2968,48 @@ module Aws::GuardDuty
2783
2968
  req.send_request(options)
2784
2969
  end
2785
2970
 
2971
+ # Contains information on member accounts to be updated.
2972
+ #
2973
+ # @option params [required, String] :detector_id
2974
+ # The detector ID of the master account.
2975
+ #
2976
+ # @option params [required, Array<String>] :account_ids
2977
+ # A list of member account IDs to be updated.
2978
+ #
2979
+ # @option params [Types::DataSourceConfigurations] :data_sources
2980
+ # An object describes which data sources will be updated.
2981
+ #
2982
+ # @return [Types::UpdateMemberDetectorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2983
+ #
2984
+ # * {Types::UpdateMemberDetectorsResponse#unprocessed_accounts #unprocessed_accounts} => Array&lt;Types::UnprocessedAccount&gt;
2985
+ #
2986
+ # @example Request syntax with placeholder values
2987
+ #
2988
+ # resp = client.update_member_detectors({
2989
+ # detector_id: "DetectorId", # required
2990
+ # account_ids: ["AccountId"], # required
2991
+ # data_sources: {
2992
+ # s3_logs: {
2993
+ # enable: false, # required
2994
+ # },
2995
+ # },
2996
+ # })
2997
+ #
2998
+ # @example Response structure
2999
+ #
3000
+ # resp.unprocessed_accounts #=> Array
3001
+ # resp.unprocessed_accounts[0].account_id #=> String
3002
+ # resp.unprocessed_accounts[0].result #=> String
3003
+ #
3004
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/UpdateMemberDetectors AWS API Documentation
3005
+ #
3006
+ # @overload update_member_detectors(params = {})
3007
+ # @param [Hash] params ({})
3008
+ def update_member_detectors(params = {}, options = {})
3009
+ req = build_request(:update_member_detectors, params)
3010
+ req.send_request(options)
3011
+ end
3012
+
2786
3013
  # Updates the delegated administrator account with the values provided.
2787
3014
  #
2788
3015
  # @option params [required, String] :detector_id
@@ -2792,6 +3019,9 @@ module Aws::GuardDuty
2792
3019
  # Indicates whether to automatically enable member accounts in the
2793
3020
  # organization.
2794
3021
  #
3022
+ # @option params [Types::OrganizationDataSourceConfigurations] :data_sources
3023
+ # An object describes which data sources will be updated.
3024
+ #
2795
3025
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2796
3026
  #
2797
3027
  # @example Request syntax with placeholder values
@@ -2799,6 +3029,11 @@ module Aws::GuardDuty
2799
3029
  # resp = client.update_organization_configuration({
2800
3030
  # detector_id: "DetectorId", # required
2801
3031
  # auto_enable: false, # required
3032
+ # data_sources: {
3033
+ # s3_logs: {
3034
+ # auto_enable: false, # required
3035
+ # },
3036
+ # },
2802
3037
  # })
2803
3038
  #
2804
3039
  # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/UpdateOrganizationConfiguration AWS API Documentation
@@ -2902,7 +3137,7 @@ module Aws::GuardDuty
2902
3137
  params: params,
2903
3138
  config: config)
2904
3139
  context[:gem_name] = 'aws-sdk-guardduty'
2905
- context[:gem_version] = '1.35.1'
3140
+ context[:gem_version] = '1.40.0'
2906
3141
  Seahorse::Client::Request.new(handlers, context)
2907
3142
  end
2908
3143
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -34,6 +36,7 @@ module Aws::GuardDuty
34
36
  BucketPolicy = Shapes::StructureShape.new(name: 'BucketPolicy')
35
37
  City = Shapes::StructureShape.new(name: 'City')
36
38
  ClientToken = Shapes::StringShape.new(name: 'ClientToken')
39
+ CloudTrailConfigurationResult = Shapes::StructureShape.new(name: 'CloudTrailConfigurationResult')
37
40
  Condition = Shapes::StructureShape.new(name: 'Condition')
38
41
  CountBySeverity = Shapes::MapShape.new(name: 'CountBySeverity')
39
42
  Country = Shapes::StructureShape.new(name: 'Country')
@@ -52,6 +55,12 @@ module Aws::GuardDuty
52
55
  CreateThreatIntelSetRequest = Shapes::StructureShape.new(name: 'CreateThreatIntelSetRequest')
53
56
  CreateThreatIntelSetResponse = Shapes::StructureShape.new(name: 'CreateThreatIntelSetResponse')
54
57
  Criterion = Shapes::MapShape.new(name: 'Criterion')
58
+ DNSLogsConfigurationResult = Shapes::StructureShape.new(name: 'DNSLogsConfigurationResult')
59
+ DataSource = Shapes::StringShape.new(name: 'DataSource')
60
+ DataSourceConfigurations = Shapes::StructureShape.new(name: 'DataSourceConfigurations')
61
+ DataSourceConfigurationsResult = Shapes::StructureShape.new(name: 'DataSourceConfigurationsResult')
62
+ DataSourceList = Shapes::ListShape.new(name: 'DataSourceList')
63
+ DataSourceStatus = Shapes::StringShape.new(name: 'DataSourceStatus')
55
64
  DeclineInvitationsRequest = Shapes::StructureShape.new(name: 'DeclineInvitationsRequest')
56
65
  DeclineInvitationsResponse = Shapes::StructureShape.new(name: 'DeclineInvitationsResponse')
57
66
  DefaultServerSideEncryption = Shapes::StructureShape.new(name: 'DefaultServerSideEncryption')
@@ -112,6 +121,7 @@ module Aws::GuardDuty
112
121
  FindingType = Shapes::StringShape.new(name: 'FindingType')
113
122
  FindingTypes = Shapes::ListShape.new(name: 'FindingTypes')
114
123
  Findings = Shapes::ListShape.new(name: 'Findings')
124
+ FlowLogsConfigurationResult = Shapes::StructureShape.new(name: 'FlowLogsConfigurationResult')
115
125
  GeoLocation = Shapes::StructureShape.new(name: 'GeoLocation')
116
126
  GetDetectorRequest = Shapes::StructureShape.new(name: 'GetDetectorRequest')
117
127
  GetDetectorResponse = Shapes::StructureShape.new(name: 'GetDetectorResponse')
@@ -127,10 +137,14 @@ module Aws::GuardDuty
127
137
  GetInvitationsCountResponse = Shapes::StructureShape.new(name: 'GetInvitationsCountResponse')
128
138
  GetMasterAccountRequest = Shapes::StructureShape.new(name: 'GetMasterAccountRequest')
129
139
  GetMasterAccountResponse = Shapes::StructureShape.new(name: 'GetMasterAccountResponse')
140
+ GetMemberDetectorsRequest = Shapes::StructureShape.new(name: 'GetMemberDetectorsRequest')
141
+ GetMemberDetectorsResponse = Shapes::StructureShape.new(name: 'GetMemberDetectorsResponse')
130
142
  GetMembersRequest = Shapes::StructureShape.new(name: 'GetMembersRequest')
131
143
  GetMembersResponse = Shapes::StructureShape.new(name: 'GetMembersResponse')
132
144
  GetThreatIntelSetRequest = Shapes::StructureShape.new(name: 'GetThreatIntelSetRequest')
133
145
  GetThreatIntelSetResponse = Shapes::StructureShape.new(name: 'GetThreatIntelSetResponse')
146
+ GetUsageStatisticsRequest = Shapes::StructureShape.new(name: 'GetUsageStatisticsRequest')
147
+ GetUsageStatisticsResponse = Shapes::StructureShape.new(name: 'GetUsageStatisticsResponse')
134
148
  GuardDutyArn = Shapes::StringShape.new(name: 'GuardDutyArn')
135
149
  IamInstanceProfile = Shapes::StructureShape.new(name: 'IamInstanceProfile')
136
150
  InstanceDetails = Shapes::StructureShape.new(name: 'InstanceDetails')
@@ -171,6 +185,8 @@ module Aws::GuardDuty
171
185
  Master = Shapes::StructureShape.new(name: 'Master')
172
186
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
173
187
  Member = Shapes::StructureShape.new(name: 'Member')
188
+ MemberDataSourceConfiguration = Shapes::StructureShape.new(name: 'MemberDataSourceConfiguration')
189
+ MemberDataSourceConfigurations = Shapes::ListShape.new(name: 'MemberDataSourceConfigurations')
174
190
  Members = Shapes::ListShape.new(name: 'Members')
175
191
  Name = Shapes::StringShape.new(name: 'Name')
176
192
  Neq = Shapes::ListShape.new(name: 'Neq')
@@ -180,6 +196,10 @@ module Aws::GuardDuty
180
196
  NotEquals = Shapes::ListShape.new(name: 'NotEquals')
181
197
  OrderBy = Shapes::StringShape.new(name: 'OrderBy')
182
198
  Organization = Shapes::StructureShape.new(name: 'Organization')
199
+ OrganizationDataSourceConfigurations = Shapes::StructureShape.new(name: 'OrganizationDataSourceConfigurations')
200
+ OrganizationDataSourceConfigurationsResult = Shapes::StructureShape.new(name: 'OrganizationDataSourceConfigurationsResult')
201
+ OrganizationS3LogsConfiguration = Shapes::StructureShape.new(name: 'OrganizationS3LogsConfiguration')
202
+ OrganizationS3LogsConfigurationResult = Shapes::StructureShape.new(name: 'OrganizationS3LogsConfigurationResult')
183
203
  Owner = Shapes::StructureShape.new(name: 'Owner')
184
204
  PermissionConfiguration = Shapes::StructureShape.new(name: 'PermissionConfiguration')
185
205
  PortProbeAction = Shapes::StructureShape.new(name: 'PortProbeAction')
@@ -194,8 +214,11 @@ module Aws::GuardDuty
194
214
  RemoteIpDetails = Shapes::StructureShape.new(name: 'RemoteIpDetails')
195
215
  RemotePortDetails = Shapes::StructureShape.new(name: 'RemotePortDetails')
196
216
  Resource = Shapes::StructureShape.new(name: 'Resource')
217
+ ResourceList = Shapes::ListShape.new(name: 'ResourceList')
197
218
  S3BucketDetail = Shapes::StructureShape.new(name: 'S3BucketDetail')
198
219
  S3BucketDetails = Shapes::ListShape.new(name: 'S3BucketDetails')
220
+ S3LogsConfiguration = Shapes::StructureShape.new(name: 'S3LogsConfiguration')
221
+ S3LogsConfigurationResult = Shapes::StructureShape.new(name: 'S3LogsConfigurationResult')
199
222
  SecurityGroup = Shapes::StructureShape.new(name: 'SecurityGroup')
200
223
  SecurityGroups = Shapes::ListShape.new(name: 'SecurityGroups')
201
224
  Service = Shapes::StructureShape.new(name: 'Service')
@@ -220,6 +243,7 @@ module Aws::GuardDuty
220
243
  ThreatIntelligenceDetails = Shapes::ListShape.new(name: 'ThreatIntelligenceDetails')
221
244
  ThreatNames = Shapes::ListShape.new(name: 'ThreatNames')
222
245
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
246
+ Total = Shapes::StructureShape.new(name: 'Total')
223
247
  UnarchiveFindingsRequest = Shapes::StructureShape.new(name: 'UnarchiveFindingsRequest')
224
248
  UnarchiveFindingsResponse = Shapes::StructureShape.new(name: 'UnarchiveFindingsResponse')
225
249
  UnprocessedAccount = Shapes::StructureShape.new(name: 'UnprocessedAccount')
@@ -234,12 +258,23 @@ module Aws::GuardDuty
234
258
  UpdateFindingsFeedbackResponse = Shapes::StructureShape.new(name: 'UpdateFindingsFeedbackResponse')
235
259
  UpdateIPSetRequest = Shapes::StructureShape.new(name: 'UpdateIPSetRequest')
236
260
  UpdateIPSetResponse = Shapes::StructureShape.new(name: 'UpdateIPSetResponse')
261
+ UpdateMemberDetectorsRequest = Shapes::StructureShape.new(name: 'UpdateMemberDetectorsRequest')
262
+ UpdateMemberDetectorsResponse = Shapes::StructureShape.new(name: 'UpdateMemberDetectorsResponse')
237
263
  UpdateOrganizationConfigurationRequest = Shapes::StructureShape.new(name: 'UpdateOrganizationConfigurationRequest')
238
264
  UpdateOrganizationConfigurationResponse = Shapes::StructureShape.new(name: 'UpdateOrganizationConfigurationResponse')
239
265
  UpdatePublishingDestinationRequest = Shapes::StructureShape.new(name: 'UpdatePublishingDestinationRequest')
240
266
  UpdatePublishingDestinationResponse = Shapes::StructureShape.new(name: 'UpdatePublishingDestinationResponse')
241
267
  UpdateThreatIntelSetRequest = Shapes::StructureShape.new(name: 'UpdateThreatIntelSetRequest')
242
268
  UpdateThreatIntelSetResponse = Shapes::StructureShape.new(name: 'UpdateThreatIntelSetResponse')
269
+ UsageAccountResult = Shapes::StructureShape.new(name: 'UsageAccountResult')
270
+ UsageAccountResultList = Shapes::ListShape.new(name: 'UsageAccountResultList')
271
+ UsageCriteria = Shapes::StructureShape.new(name: 'UsageCriteria')
272
+ UsageDataSourceResult = Shapes::StructureShape.new(name: 'UsageDataSourceResult')
273
+ UsageDataSourceResultList = Shapes::ListShape.new(name: 'UsageDataSourceResultList')
274
+ UsageResourceResult = Shapes::StructureShape.new(name: 'UsageResourceResult')
275
+ UsageResourceResultList = Shapes::ListShape.new(name: 'UsageResourceResultList')
276
+ UsageStatisticType = Shapes::StringShape.new(name: 'UsageStatisticType')
277
+ UsageStatistics = Shapes::StructureShape.new(name: 'UsageStatistics')
243
278
 
244
279
  AcceptInvitationRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
245
280
  AcceptInvitationRequest.add_member(:master_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "masterId"))
@@ -291,6 +326,7 @@ module Aws::GuardDuty
291
326
  AwsApiCallAction.add_member(:api, Shapes::ShapeRef.new(shape: String, location_name: "api"))
292
327
  AwsApiCallAction.add_member(:caller_type, Shapes::ShapeRef.new(shape: String, location_name: "callerType"))
293
328
  AwsApiCallAction.add_member(:domain_details, Shapes::ShapeRef.new(shape: DomainDetails, location_name: "domainDetails"))
329
+ AwsApiCallAction.add_member(:error_code, Shapes::ShapeRef.new(shape: String, location_name: "errorCode"))
294
330
  AwsApiCallAction.add_member(:remote_ip_details, Shapes::ShapeRef.new(shape: RemoteIpDetails, location_name: "remoteIpDetails"))
295
331
  AwsApiCallAction.add_member(:service_name, Shapes::ShapeRef.new(shape: String, location_name: "serviceName"))
296
332
  AwsApiCallAction.struct_class = Types::AwsApiCallAction
@@ -317,6 +353,9 @@ module Aws::GuardDuty
317
353
  City.add_member(:city_name, Shapes::ShapeRef.new(shape: String, location_name: "cityName"))
318
354
  City.struct_class = Types::City
319
355
 
356
+ CloudTrailConfigurationResult.add_member(:status, Shapes::ShapeRef.new(shape: DataSourceStatus, required: true, location_name: "status"))
357
+ CloudTrailConfigurationResult.struct_class = Types::CloudTrailConfigurationResult
358
+
320
359
  Condition.add_member(:eq, Shapes::ShapeRef.new(shape: Eq, deprecated: true, location_name: "eq"))
321
360
  Condition.add_member(:neq, Shapes::ShapeRef.new(shape: Neq, deprecated: true, location_name: "neq"))
322
361
  Condition.add_member(:gt, Shapes::ShapeRef.new(shape: Integer, deprecated: true, location_name: "gt"))
@@ -341,6 +380,7 @@ module Aws::GuardDuty
341
380
  CreateDetectorRequest.add_member(:enable, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "enable"))
342
381
  CreateDetectorRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
343
382
  CreateDetectorRequest.add_member(:finding_publishing_frequency, Shapes::ShapeRef.new(shape: FindingPublishingFrequency, location_name: "findingPublishingFrequency"))
383
+ CreateDetectorRequest.add_member(:data_sources, Shapes::ShapeRef.new(shape: DataSourceConfigurations, location_name: "dataSources"))
344
384
  CreateDetectorRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
345
385
  CreateDetectorRequest.struct_class = Types::CreateDetectorRequest
346
386
 
@@ -409,6 +449,20 @@ module Aws::GuardDuty
409
449
  Criterion.key = Shapes::ShapeRef.new(shape: String)
410
450
  Criterion.value = Shapes::ShapeRef.new(shape: Condition)
411
451
 
452
+ DNSLogsConfigurationResult.add_member(:status, Shapes::ShapeRef.new(shape: DataSourceStatus, required: true, location_name: "status"))
453
+ DNSLogsConfigurationResult.struct_class = Types::DNSLogsConfigurationResult
454
+
455
+ DataSourceConfigurations.add_member(:s3_logs, Shapes::ShapeRef.new(shape: S3LogsConfiguration, location_name: "s3Logs"))
456
+ DataSourceConfigurations.struct_class = Types::DataSourceConfigurations
457
+
458
+ DataSourceConfigurationsResult.add_member(:cloud_trail, Shapes::ShapeRef.new(shape: CloudTrailConfigurationResult, required: true, location_name: "cloudTrail"))
459
+ DataSourceConfigurationsResult.add_member(:dns_logs, Shapes::ShapeRef.new(shape: DNSLogsConfigurationResult, required: true, location_name: "dnsLogs"))
460
+ DataSourceConfigurationsResult.add_member(:flow_logs, Shapes::ShapeRef.new(shape: FlowLogsConfigurationResult, required: true, location_name: "flowLogs"))
461
+ DataSourceConfigurationsResult.add_member(:s3_logs, Shapes::ShapeRef.new(shape: S3LogsConfigurationResult, required: true, location_name: "s3Logs"))
462
+ DataSourceConfigurationsResult.struct_class = Types::DataSourceConfigurationsResult
463
+
464
+ DataSourceList.member = Shapes::ShapeRef.new(shape: DataSource)
465
+
412
466
  DeclineInvitationsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, required: true, location_name: "accountIds"))
413
467
  DeclineInvitationsRequest.struct_class = Types::DeclineInvitationsRequest
414
468
 
@@ -466,6 +520,7 @@ module Aws::GuardDuty
466
520
 
467
521
  DescribeOrganizationConfigurationResponse.add_member(:auto_enable, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "autoEnable"))
468
522
  DescribeOrganizationConfigurationResponse.add_member(:member_account_limit_reached, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "memberAccountLimitReached"))
523
+ DescribeOrganizationConfigurationResponse.add_member(:data_sources, Shapes::ShapeRef.new(shape: OrganizationDataSourceConfigurationsResult, location_name: "dataSources"))
469
524
  DescribeOrganizationConfigurationResponse.struct_class = Types::DescribeOrganizationConfigurationResponse
470
525
 
471
526
  DescribePublishingDestinationRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
@@ -560,6 +615,9 @@ module Aws::GuardDuty
560
615
 
561
616
  Findings.member = Shapes::ShapeRef.new(shape: Finding)
562
617
 
618
+ FlowLogsConfigurationResult.add_member(:status, Shapes::ShapeRef.new(shape: DataSourceStatus, required: true, location_name: "status"))
619
+ FlowLogsConfigurationResult.struct_class = Types::FlowLogsConfigurationResult
620
+
563
621
  GeoLocation.add_member(:lat, Shapes::ShapeRef.new(shape: Double, location_name: "lat"))
564
622
  GeoLocation.add_member(:lon, Shapes::ShapeRef.new(shape: Double, location_name: "lon"))
565
623
  GeoLocation.struct_class = Types::GeoLocation
@@ -572,6 +630,7 @@ module Aws::GuardDuty
572
630
  GetDetectorResponse.add_member(:service_role, Shapes::ShapeRef.new(shape: String, required: true, location_name: "serviceRole"))
573
631
  GetDetectorResponse.add_member(:status, Shapes::ShapeRef.new(shape: DetectorStatus, required: true, location_name: "status"))
574
632
  GetDetectorResponse.add_member(:updated_at, Shapes::ShapeRef.new(shape: String, location_name: "updatedAt"))
633
+ GetDetectorResponse.add_member(:data_sources, Shapes::ShapeRef.new(shape: DataSourceConfigurationsResult, location_name: "dataSources"))
575
634
  GetDetectorResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
576
635
  GetDetectorResponse.struct_class = Types::GetDetectorResponse
577
636
 
@@ -625,6 +684,14 @@ module Aws::GuardDuty
625
684
  GetMasterAccountResponse.add_member(:master, Shapes::ShapeRef.new(shape: Master, required: true, location_name: "master"))
626
685
  GetMasterAccountResponse.struct_class = Types::GetMasterAccountResponse
627
686
 
687
+ GetMemberDetectorsRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
688
+ GetMemberDetectorsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, required: true, location_name: "accountIds"))
689
+ GetMemberDetectorsRequest.struct_class = Types::GetMemberDetectorsRequest
690
+
691
+ GetMemberDetectorsResponse.add_member(:member_data_source_configurations, Shapes::ShapeRef.new(shape: MemberDataSourceConfigurations, required: true, location_name: "members"))
692
+ GetMemberDetectorsResponse.add_member(:unprocessed_accounts, Shapes::ShapeRef.new(shape: UnprocessedAccounts, required: true, location_name: "unprocessedAccounts"))
693
+ GetMemberDetectorsResponse.struct_class = Types::GetMemberDetectorsResponse
694
+
628
695
  GetMembersRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
629
696
  GetMembersRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, required: true, location_name: "accountIds"))
630
697
  GetMembersRequest.struct_class = Types::GetMembersRequest
@@ -644,6 +711,18 @@ module Aws::GuardDuty
644
711
  GetThreatIntelSetResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
645
712
  GetThreatIntelSetResponse.struct_class = Types::GetThreatIntelSetResponse
646
713
 
714
+ GetUsageStatisticsRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
715
+ GetUsageStatisticsRequest.add_member(:usage_statistic_type, Shapes::ShapeRef.new(shape: UsageStatisticType, required: true, location_name: "usageStatisticsType"))
716
+ GetUsageStatisticsRequest.add_member(:usage_criteria, Shapes::ShapeRef.new(shape: UsageCriteria, required: true, location_name: "usageCriteria"))
717
+ GetUsageStatisticsRequest.add_member(:unit, Shapes::ShapeRef.new(shape: String, location_name: "unit"))
718
+ GetUsageStatisticsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
719
+ GetUsageStatisticsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
720
+ GetUsageStatisticsRequest.struct_class = Types::GetUsageStatisticsRequest
721
+
722
+ GetUsageStatisticsResponse.add_member(:usage_statistics, Shapes::ShapeRef.new(shape: UsageStatistics, location_name: "usageStatistics"))
723
+ GetUsageStatisticsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
724
+ GetUsageStatisticsResponse.struct_class = Types::GetUsageStatisticsResponse
725
+
647
726
  IamInstanceProfile.add_member(:arn, Shapes::ShapeRef.new(shape: String, location_name: "arn"))
648
727
  IamInstanceProfile.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "id"))
649
728
  IamInstanceProfile.struct_class = Types::IamInstanceProfile
@@ -797,6 +876,12 @@ module Aws::GuardDuty
797
876
  Member.add_member(:updated_at, Shapes::ShapeRef.new(shape: String, required: true, location_name: "updatedAt"))
798
877
  Member.struct_class = Types::Member
799
878
 
879
+ MemberDataSourceConfiguration.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "accountId"))
880
+ MemberDataSourceConfiguration.add_member(:data_sources, Shapes::ShapeRef.new(shape: DataSourceConfigurationsResult, required: true, location_name: "dataSources"))
881
+ MemberDataSourceConfiguration.struct_class = Types::MemberDataSourceConfiguration
882
+
883
+ MemberDataSourceConfigurations.member = Shapes::ShapeRef.new(shape: MemberDataSourceConfiguration)
884
+
800
885
  Members.member = Shapes::ShapeRef.new(shape: Member)
801
886
 
802
887
  Neq.member = Shapes::ShapeRef.new(shape: String)
@@ -832,6 +917,18 @@ module Aws::GuardDuty
832
917
  Organization.add_member(:org, Shapes::ShapeRef.new(shape: String, location_name: "org"))
833
918
  Organization.struct_class = Types::Organization
834
919
 
920
+ OrganizationDataSourceConfigurations.add_member(:s3_logs, Shapes::ShapeRef.new(shape: OrganizationS3LogsConfiguration, location_name: "s3Logs"))
921
+ OrganizationDataSourceConfigurations.struct_class = Types::OrganizationDataSourceConfigurations
922
+
923
+ OrganizationDataSourceConfigurationsResult.add_member(:s3_logs, Shapes::ShapeRef.new(shape: OrganizationS3LogsConfigurationResult, required: true, location_name: "s3Logs"))
924
+ OrganizationDataSourceConfigurationsResult.struct_class = Types::OrganizationDataSourceConfigurationsResult
925
+
926
+ OrganizationS3LogsConfiguration.add_member(:auto_enable, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "autoEnable"))
927
+ OrganizationS3LogsConfiguration.struct_class = Types::OrganizationS3LogsConfiguration
928
+
929
+ OrganizationS3LogsConfigurationResult.add_member(:auto_enable, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "autoEnable"))
930
+ OrganizationS3LogsConfigurationResult.struct_class = Types::OrganizationS3LogsConfigurationResult
931
+
835
932
  Owner.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "id"))
836
933
  Owner.struct_class = Types::Owner
837
934
 
@@ -883,6 +980,8 @@ module Aws::GuardDuty
883
980
  Resource.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, location_name: "resourceType"))
884
981
  Resource.struct_class = Types::Resource
885
982
 
983
+ ResourceList.member = Shapes::ShapeRef.new(shape: String)
984
+
886
985
  S3BucketDetail.add_member(:arn, Shapes::ShapeRef.new(shape: String, location_name: "arn"))
887
986
  S3BucketDetail.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "name"))
888
987
  S3BucketDetail.add_member(:type, Shapes::ShapeRef.new(shape: String, location_name: "type"))
@@ -895,6 +994,12 @@ module Aws::GuardDuty
895
994
 
896
995
  S3BucketDetails.member = Shapes::ShapeRef.new(shape: S3BucketDetail)
897
996
 
997
+ S3LogsConfiguration.add_member(:enable, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "enable"))
998
+ S3LogsConfiguration.struct_class = Types::S3LogsConfiguration
999
+
1000
+ S3LogsConfigurationResult.add_member(:status, Shapes::ShapeRef.new(shape: DataSourceStatus, required: true, location_name: "status"))
1001
+ S3LogsConfigurationResult.struct_class = Types::S3LogsConfigurationResult
1002
+
898
1003
  SecurityGroup.add_member(:group_id, Shapes::ShapeRef.new(shape: String, location_name: "groupId"))
899
1004
  SecurityGroup.add_member(:group_name, Shapes::ShapeRef.new(shape: String, location_name: "groupName"))
900
1005
  SecurityGroup.struct_class = Types::SecurityGroup
@@ -958,6 +1063,10 @@ module Aws::GuardDuty
958
1063
 
959
1064
  ThreatNames.member = Shapes::ShapeRef.new(shape: String)
960
1065
 
1066
+ Total.add_member(:amount, Shapes::ShapeRef.new(shape: String, location_name: "amount"))
1067
+ Total.add_member(:unit, Shapes::ShapeRef.new(shape: String, location_name: "unit"))
1068
+ Total.struct_class = Types::Total
1069
+
961
1070
  UnarchiveFindingsRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
962
1071
  UnarchiveFindingsRequest.add_member(:finding_ids, Shapes::ShapeRef.new(shape: FindingIds, required: true, location_name: "findingIds"))
963
1072
  UnarchiveFindingsRequest.struct_class = Types::UnarchiveFindingsRequest
@@ -979,6 +1088,7 @@ module Aws::GuardDuty
979
1088
  UpdateDetectorRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
980
1089
  UpdateDetectorRequest.add_member(:enable, Shapes::ShapeRef.new(shape: Boolean, location_name: "enable"))
981
1090
  UpdateDetectorRequest.add_member(:finding_publishing_frequency, Shapes::ShapeRef.new(shape: FindingPublishingFrequency, location_name: "findingPublishingFrequency"))
1091
+ UpdateDetectorRequest.add_member(:data_sources, Shapes::ShapeRef.new(shape: DataSourceConfigurations, location_name: "dataSources"))
982
1092
  UpdateDetectorRequest.struct_class = Types::UpdateDetectorRequest
983
1093
 
984
1094
  UpdateDetectorResponse.struct_class = Types::UpdateDetectorResponse
@@ -1011,8 +1121,17 @@ module Aws::GuardDuty
1011
1121
 
1012
1122
  UpdateIPSetResponse.struct_class = Types::UpdateIPSetResponse
1013
1123
 
1124
+ UpdateMemberDetectorsRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
1125
+ UpdateMemberDetectorsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, required: true, location_name: "accountIds"))
1126
+ UpdateMemberDetectorsRequest.add_member(:data_sources, Shapes::ShapeRef.new(shape: DataSourceConfigurations, location_name: "dataSources"))
1127
+ UpdateMemberDetectorsRequest.struct_class = Types::UpdateMemberDetectorsRequest
1128
+
1129
+ UpdateMemberDetectorsResponse.add_member(:unprocessed_accounts, Shapes::ShapeRef.new(shape: UnprocessedAccounts, required: true, location_name: "unprocessedAccounts"))
1130
+ UpdateMemberDetectorsResponse.struct_class = Types::UpdateMemberDetectorsResponse
1131
+
1014
1132
  UpdateOrganizationConfigurationRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
1015
1133
  UpdateOrganizationConfigurationRequest.add_member(:auto_enable, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "autoEnable"))
1134
+ UpdateOrganizationConfigurationRequest.add_member(:data_sources, Shapes::ShapeRef.new(shape: OrganizationDataSourceConfigurations, location_name: "dataSources"))
1016
1135
  UpdateOrganizationConfigurationRequest.struct_class = Types::UpdateOrganizationConfigurationRequest
1017
1136
 
1018
1137
  UpdateOrganizationConfigurationResponse.struct_class = Types::UpdateOrganizationConfigurationResponse
@@ -1033,6 +1152,35 @@ module Aws::GuardDuty
1033
1152
 
1034
1153
  UpdateThreatIntelSetResponse.struct_class = Types::UpdateThreatIntelSetResponse
1035
1154
 
1155
+ UsageAccountResult.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "accountId"))
1156
+ UsageAccountResult.add_member(:total, Shapes::ShapeRef.new(shape: Total, location_name: "total"))
1157
+ UsageAccountResult.struct_class = Types::UsageAccountResult
1158
+
1159
+ UsageAccountResultList.member = Shapes::ShapeRef.new(shape: UsageAccountResult)
1160
+
1161
+ UsageCriteria.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, location_name: "accountIds"))
1162
+ UsageCriteria.add_member(:data_sources, Shapes::ShapeRef.new(shape: DataSourceList, required: true, location_name: "dataSources"))
1163
+ UsageCriteria.add_member(:resources, Shapes::ShapeRef.new(shape: ResourceList, location_name: "resources"))
1164
+ UsageCriteria.struct_class = Types::UsageCriteria
1165
+
1166
+ UsageDataSourceResult.add_member(:data_source, Shapes::ShapeRef.new(shape: DataSource, location_name: "dataSource"))
1167
+ UsageDataSourceResult.add_member(:total, Shapes::ShapeRef.new(shape: Total, location_name: "total"))
1168
+ UsageDataSourceResult.struct_class = Types::UsageDataSourceResult
1169
+
1170
+ UsageDataSourceResultList.member = Shapes::ShapeRef.new(shape: UsageDataSourceResult)
1171
+
1172
+ UsageResourceResult.add_member(:resource, Shapes::ShapeRef.new(shape: String, location_name: "resource"))
1173
+ UsageResourceResult.add_member(:total, Shapes::ShapeRef.new(shape: Total, location_name: "total"))
1174
+ UsageResourceResult.struct_class = Types::UsageResourceResult
1175
+
1176
+ UsageResourceResultList.member = Shapes::ShapeRef.new(shape: UsageResourceResult)
1177
+
1178
+ UsageStatistics.add_member(:sum_by_account, Shapes::ShapeRef.new(shape: UsageAccountResultList, location_name: "sumByAccount"))
1179
+ UsageStatistics.add_member(:sum_by_data_source, Shapes::ShapeRef.new(shape: UsageDataSourceResultList, location_name: "sumByDataSource"))
1180
+ UsageStatistics.add_member(:sum_by_resource, Shapes::ShapeRef.new(shape: UsageResourceResultList, location_name: "sumByResource"))
1181
+ UsageStatistics.add_member(:top_resources, Shapes::ShapeRef.new(shape: UsageResourceResultList, location_name: "topResources"))
1182
+ UsageStatistics.struct_class = Types::UsageStatistics
1183
+
1036
1184
 
1037
1185
  # @api private
1038
1186
  API = Seahorse::Model::Api.new.tap do |api|
@@ -1351,6 +1499,16 @@ module Aws::GuardDuty
1351
1499
  o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1352
1500
  end)
1353
1501
 
1502
+ api.add_operation(:get_member_detectors, Seahorse::Model::Operation.new.tap do |o|
1503
+ o.name = "GetMemberDetectors"
1504
+ o.http_method = "POST"
1505
+ o.http_request_uri = "/detector/{detectorId}/member/detector/get"
1506
+ o.input = Shapes::ShapeRef.new(shape: GetMemberDetectorsRequest)
1507
+ o.output = Shapes::ShapeRef.new(shape: GetMemberDetectorsResponse)
1508
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1509
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1510
+ end)
1511
+
1354
1512
  api.add_operation(:get_members, Seahorse::Model::Operation.new.tap do |o|
1355
1513
  o.name = "GetMembers"
1356
1514
  o.http_method = "POST"
@@ -1371,6 +1529,22 @@ module Aws::GuardDuty
1371
1529
  o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1372
1530
  end)
1373
1531
 
1532
+ api.add_operation(:get_usage_statistics, Seahorse::Model::Operation.new.tap do |o|
1533
+ o.name = "GetUsageStatistics"
1534
+ o.http_method = "POST"
1535
+ o.http_request_uri = "/detector/{detectorId}/usage/statistics"
1536
+ o.input = Shapes::ShapeRef.new(shape: GetUsageStatisticsRequest)
1537
+ o.output = Shapes::ShapeRef.new(shape: GetUsageStatisticsResponse)
1538
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1539
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1540
+ o[:pager] = Aws::Pager.new(
1541
+ limit_key: "max_results",
1542
+ tokens: {
1543
+ "next_token" => "next_token"
1544
+ }
1545
+ )
1546
+ end)
1547
+
1374
1548
  api.add_operation(:invite_members, Seahorse::Model::Operation.new.tap do |o|
1375
1549
  o.name = "InviteMembers"
1376
1550
  o.http_method = "POST"
@@ -1625,6 +1799,16 @@ module Aws::GuardDuty
1625
1799
  o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1626
1800
  end)
1627
1801
 
1802
+ api.add_operation(:update_member_detectors, Seahorse::Model::Operation.new.tap do |o|
1803
+ o.name = "UpdateMemberDetectors"
1804
+ o.http_method = "POST"
1805
+ o.http_request_uri = "/detector/{detectorId}/member/detector/update"
1806
+ o.input = Shapes::ShapeRef.new(shape: UpdateMemberDetectorsRequest)
1807
+ o.output = Shapes::ShapeRef.new(shape: UpdateMemberDetectorsResponse)
1808
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1809
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1810
+ end)
1811
+
1628
1812
  api.add_operation(:update_organization_configuration, Seahorse::Model::Operation.new.tap do |o|
1629
1813
  o.name = "UpdateOrganizationConfiguration"
1630
1814
  o.http_method = "POST"