aws-sdk-guardduty 1.32.0 → 1.37.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: bc0ba5a47397111aaac489281607408efa58b71542fb54cedf2185d144dc1a88
4
- data.tar.gz: 3f8b2efcd682ef67ba482b91b285ac7958bc27003d8007b95f016dd63c076bbc
3
+ metadata.gz: f76294e737e82177c93c2dbc5727860d1ab902652d16cd2b33eafb75b28d773f
4
+ data.tar.gz: f255983aa415d0a00307f525982e85e4b6a69137c8c1302f8b5d9d027279700f
5
5
  SHA512:
6
- metadata.gz: 811e38cefa8c4823f9bf96c02caf316da9c6b87aacea4ce3f550f8f1ac60ea42301f809631a18fe84690baaf91f8523e7d5bfde3ba3079037ef1298c1236201b
7
- data.tar.gz: f05b0a6dd3eb2793ca8cb0274023d0cb2b1cc9ef039b1b5de3ba46e28df55a524ba58ca73f7ef66b6dd022923d95664803466929e6e5547cb816ccfef41744e5
6
+ metadata.gz: 2f6b94345f3bdcc3c7c91ea721d9c816de6d90312f47af329fa51fd99c533c0ad62a3a38f0aca21b1c4fb6bb647857d5e541a35b959d2a41053196b88df55662
7
+ data.tar.gz: c2c0dc8c3d46ad6784f2299ae887a9abbeba5d9e0ddc0448a07a4f8490964f539bb5e69fffdbf060c88e2c813906a05735461ecc9b604982a9ec93eda0a6f6ad
@@ -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:
@@ -45,6 +47,6 @@ require_relative 'aws-sdk-guardduty/customizations'
45
47
  # @service
46
48
  module Aws::GuardDuty
47
49
 
48
- GEM_VERSION = '1.32.0'
50
+ GEM_VERSION = '1.37.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:
@@ -24,6 +26,7 @@ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
26
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
27
30
  require 'aws-sdk-core/plugins/signature_v4.rb'
28
31
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
29
32
 
@@ -69,6 +72,7 @@ module Aws::GuardDuty
69
72
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
70
73
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
71
74
  add_plugin(Aws::Plugins::TransferEncoding)
75
+ add_plugin(Aws::Plugins::HttpChecksum)
72
76
  add_plugin(Aws::Plugins::SignatureV4)
73
77
  add_plugin(Aws::Plugins::Protocols::RestJson)
74
78
 
@@ -161,7 +165,7 @@ module Aws::GuardDuty
161
165
  # @option options [String] :endpoint
162
166
  # The client endpoint is normally constructed from the `:region`
163
167
  # option. You should only configure an `:endpoint` when connecting
164
- # to test endpoints. This should be a valid HTTP(S) URI.
168
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
165
169
  #
166
170
  # @option options [Integer] :endpoint_cache_max_entries (1000)
167
171
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -176,7 +180,7 @@ module Aws::GuardDuty
176
180
  # requests fetching endpoints information. Defaults to 60 sec.
177
181
  #
178
182
  # @option options [Boolean] :endpoint_discovery (false)
179
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
183
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
180
184
  #
181
185
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
182
186
  # The log formatter.
@@ -391,6 +395,10 @@ module Aws::GuardDuty
391
395
  # An enum value that specifies how frequently updated findings are
392
396
  # exported.
393
397
  #
398
+ # @option params [Types::DataSourceConfigurations] :data_sources
399
+ # An object that describes which data sources will be enabled for the
400
+ # detector.
401
+ #
394
402
  # @option params [Hash<String,String>] :tags
395
403
  # The tags to be added to a new detector resource.
396
404
  #
@@ -404,6 +412,11 @@ module Aws::GuardDuty
404
412
  # enable: false, # required
405
413
  # client_token: "ClientToken",
406
414
  # finding_publishing_frequency: "FIFTEEN_MINUTES", # accepts FIFTEEN_MINUTES, ONE_HOUR, SIX_HOURS
415
+ # data_sources: {
416
+ # s3_logs: {
417
+ # enable: false, # required
418
+ # },
419
+ # },
407
420
  # tags: {
408
421
  # "TagKey" => "TagValue",
409
422
  # },
@@ -1110,6 +1123,7 @@ module Aws::GuardDuty
1110
1123
  #
1111
1124
  # * {Types::DescribeOrganizationConfigurationResponse#auto_enable #auto_enable} => Boolean
1112
1125
  # * {Types::DescribeOrganizationConfigurationResponse#member_account_limit_reached #member_account_limit_reached} => Boolean
1126
+ # * {Types::DescribeOrganizationConfigurationResponse#data_sources #data_sources} => Types::OrganizationDataSourceConfigurationsResult
1113
1127
  #
1114
1128
  # @example Request syntax with placeholder values
1115
1129
  #
@@ -1121,6 +1135,7 @@ module Aws::GuardDuty
1121
1135
  #
1122
1136
  # resp.auto_enable #=> Boolean
1123
1137
  # resp.member_account_limit_reached #=> Boolean
1138
+ # resp.data_sources.s3_logs.auto_enable #=> Boolean
1124
1139
  #
1125
1140
  # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/DescribeOrganizationConfiguration AWS API Documentation
1126
1141
  #
@@ -1294,6 +1309,7 @@ module Aws::GuardDuty
1294
1309
  # * {Types::GetDetectorResponse#service_role #service_role} => String
1295
1310
  # * {Types::GetDetectorResponse#status #status} => String
1296
1311
  # * {Types::GetDetectorResponse#updated_at #updated_at} => String
1312
+ # * {Types::GetDetectorResponse#data_sources #data_sources} => Types::DataSourceConfigurationsResult
1297
1313
  # * {Types::GetDetectorResponse#tags #tags} => Hash&lt;String,String&gt;
1298
1314
  #
1299
1315
  # @example Request syntax with placeholder values
@@ -1309,6 +1325,10 @@ module Aws::GuardDuty
1309
1325
  # resp.service_role #=> String
1310
1326
  # resp.status #=> String, one of "ENABLED", "DISABLED"
1311
1327
  # resp.updated_at #=> String
1328
+ # resp.data_sources.cloud_trail.status #=> String, one of "ENABLED", "DISABLED"
1329
+ # resp.data_sources.dns_logs.status #=> String, one of "ENABLED", "DISABLED"
1330
+ # resp.data_sources.flow_logs.status #=> String, one of "ENABLED", "DISABLED"
1331
+ # resp.data_sources.s3_logs.status #=> String, one of "ENABLED", "DISABLED"
1312
1332
  # resp.tags #=> Hash
1313
1333
  # resp.tags["TagKey"] #=> String
1314
1334
  #
@@ -1422,6 +1442,30 @@ module Aws::GuardDuty
1422
1442
  # resp.findings[0].resource.access_key_details.principal_id #=> String
1423
1443
  # resp.findings[0].resource.access_key_details.user_name #=> String
1424
1444
  # resp.findings[0].resource.access_key_details.user_type #=> String
1445
+ # resp.findings[0].resource.s3_bucket_details #=> Array
1446
+ # resp.findings[0].resource.s3_bucket_details[0].arn #=> String
1447
+ # resp.findings[0].resource.s3_bucket_details[0].name #=> String
1448
+ # resp.findings[0].resource.s3_bucket_details[0].type #=> String
1449
+ # resp.findings[0].resource.s3_bucket_details[0].created_at #=> Time
1450
+ # resp.findings[0].resource.s3_bucket_details[0].owner.id #=> String
1451
+ # resp.findings[0].resource.s3_bucket_details[0].tags #=> Array
1452
+ # resp.findings[0].resource.s3_bucket_details[0].tags[0].key #=> String
1453
+ # resp.findings[0].resource.s3_bucket_details[0].tags[0].value #=> String
1454
+ # resp.findings[0].resource.s3_bucket_details[0].default_server_side_encryption.encryption_type #=> String
1455
+ # resp.findings[0].resource.s3_bucket_details[0].default_server_side_encryption.kms_master_key_arn #=> String
1456
+ # resp.findings[0].resource.s3_bucket_details[0].public_access.permission_configuration.bucket_level_permissions.access_control_list.allows_public_read_access #=> Boolean
1457
+ # resp.findings[0].resource.s3_bucket_details[0].public_access.permission_configuration.bucket_level_permissions.access_control_list.allows_public_write_access #=> Boolean
1458
+ # resp.findings[0].resource.s3_bucket_details[0].public_access.permission_configuration.bucket_level_permissions.bucket_policy.allows_public_read_access #=> Boolean
1459
+ # resp.findings[0].resource.s3_bucket_details[0].public_access.permission_configuration.bucket_level_permissions.bucket_policy.allows_public_write_access #=> Boolean
1460
+ # resp.findings[0].resource.s3_bucket_details[0].public_access.permission_configuration.bucket_level_permissions.block_public_access.ignore_public_acls #=> Boolean
1461
+ # resp.findings[0].resource.s3_bucket_details[0].public_access.permission_configuration.bucket_level_permissions.block_public_access.restrict_public_buckets #=> Boolean
1462
+ # resp.findings[0].resource.s3_bucket_details[0].public_access.permission_configuration.bucket_level_permissions.block_public_access.block_public_acls #=> Boolean
1463
+ # resp.findings[0].resource.s3_bucket_details[0].public_access.permission_configuration.bucket_level_permissions.block_public_access.block_public_policy #=> Boolean
1464
+ # resp.findings[0].resource.s3_bucket_details[0].public_access.permission_configuration.account_level_permissions.block_public_access.ignore_public_acls #=> Boolean
1465
+ # resp.findings[0].resource.s3_bucket_details[0].public_access.permission_configuration.account_level_permissions.block_public_access.restrict_public_buckets #=> Boolean
1466
+ # resp.findings[0].resource.s3_bucket_details[0].public_access.permission_configuration.account_level_permissions.block_public_access.block_public_acls #=> Boolean
1467
+ # resp.findings[0].resource.s3_bucket_details[0].public_access.permission_configuration.account_level_permissions.block_public_access.block_public_policy #=> Boolean
1468
+ # resp.findings[0].resource.s3_bucket_details[0].public_access.effective_permission #=> String
1425
1469
  # resp.findings[0].resource.instance_details.availability_zone #=> String
1426
1470
  # resp.findings[0].resource.instance_details.iam_instance_profile.arn #=> String
1427
1471
  # resp.findings[0].resource.instance_details.iam_instance_profile.id #=> String
@@ -1682,6 +1726,48 @@ module Aws::GuardDuty
1682
1726
  req.send_request(options)
1683
1727
  end
1684
1728
 
1729
+ # Describes which data sources are enabled for the member account's
1730
+ # detector.
1731
+ #
1732
+ # @option params [required, String] :detector_id
1733
+ # The detector ID for the master account.
1734
+ #
1735
+ # @option params [required, Array<String>] :account_ids
1736
+ # The account ID of the member account.
1737
+ #
1738
+ # @return [Types::GetMemberDetectorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1739
+ #
1740
+ # * {Types::GetMemberDetectorsResponse#member_data_source_configurations #member_data_source_configurations} => Array&lt;Types::MemberDataSourceConfiguration&gt;
1741
+ # * {Types::GetMemberDetectorsResponse#unprocessed_accounts #unprocessed_accounts} => Array&lt;Types::UnprocessedAccount&gt;
1742
+ #
1743
+ # @example Request syntax with placeholder values
1744
+ #
1745
+ # resp = client.get_member_detectors({
1746
+ # detector_id: "DetectorId", # required
1747
+ # account_ids: ["AccountId"], # required
1748
+ # })
1749
+ #
1750
+ # @example Response structure
1751
+ #
1752
+ # resp.member_data_source_configurations #=> Array
1753
+ # resp.member_data_source_configurations[0].account_id #=> String
1754
+ # resp.member_data_source_configurations[0].data_sources.cloud_trail.status #=> String, one of "ENABLED", "DISABLED"
1755
+ # resp.member_data_source_configurations[0].data_sources.dns_logs.status #=> String, one of "ENABLED", "DISABLED"
1756
+ # resp.member_data_source_configurations[0].data_sources.flow_logs.status #=> String, one of "ENABLED", "DISABLED"
1757
+ # resp.member_data_source_configurations[0].data_sources.s3_logs.status #=> String, one of "ENABLED", "DISABLED"
1758
+ # resp.unprocessed_accounts #=> Array
1759
+ # resp.unprocessed_accounts[0].account_id #=> String
1760
+ # resp.unprocessed_accounts[0].result #=> String
1761
+ #
1762
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/GetMemberDetectors AWS API Documentation
1763
+ #
1764
+ # @overload get_member_detectors(params = {})
1765
+ # @param [Hash] params ({})
1766
+ def get_member_detectors(params = {}, options = {})
1767
+ req = build_request(:get_member_detectors, params)
1768
+ req.send_request(options)
1769
+ end
1770
+
1685
1771
  # Retrieves GuardDuty member accounts (to the current GuardDuty master
1686
1772
  # account) specified by the account IDs.
1687
1773
  #
@@ -2596,6 +2682,9 @@ module Aws::GuardDuty
2596
2682
  # An enum value that specifies how frequently findings are exported,
2597
2683
  # such as to CloudWatch Events.
2598
2684
  #
2685
+ # @option params [Types::DataSourceConfigurations] :data_sources
2686
+ # An object that describes which data sources will be updated.
2687
+ #
2599
2688
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2600
2689
  #
2601
2690
  # @example Request syntax with placeholder values
@@ -2604,6 +2693,11 @@ module Aws::GuardDuty
2604
2693
  # detector_id: "DetectorId", # required
2605
2694
  # enable: false,
2606
2695
  # finding_publishing_frequency: "FIFTEEN_MINUTES", # accepts FIFTEEN_MINUTES, ONE_HOUR, SIX_HOURS
2696
+ # data_sources: {
2697
+ # s3_logs: {
2698
+ # enable: false, # required
2699
+ # },
2700
+ # },
2607
2701
  # })
2608
2702
  #
2609
2703
  # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/UpdateDetector AWS API Documentation
@@ -2760,6 +2854,48 @@ module Aws::GuardDuty
2760
2854
  req.send_request(options)
2761
2855
  end
2762
2856
 
2857
+ # Contains information on member accounts to be updated.
2858
+ #
2859
+ # @option params [required, String] :detector_id
2860
+ # The detector ID of the master account.
2861
+ #
2862
+ # @option params [required, Array<String>] :account_ids
2863
+ # A list of member account IDs to be updated.
2864
+ #
2865
+ # @option params [Types::DataSourceConfigurations] :data_sources
2866
+ # An object describes which data sources will be updated.
2867
+ #
2868
+ # @return [Types::UpdateMemberDetectorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2869
+ #
2870
+ # * {Types::UpdateMemberDetectorsResponse#unprocessed_accounts #unprocessed_accounts} => Array&lt;Types::UnprocessedAccount&gt;
2871
+ #
2872
+ # @example Request syntax with placeholder values
2873
+ #
2874
+ # resp = client.update_member_detectors({
2875
+ # detector_id: "DetectorId", # required
2876
+ # account_ids: ["AccountId"], # required
2877
+ # data_sources: {
2878
+ # s3_logs: {
2879
+ # enable: false, # required
2880
+ # },
2881
+ # },
2882
+ # })
2883
+ #
2884
+ # @example Response structure
2885
+ #
2886
+ # resp.unprocessed_accounts #=> Array
2887
+ # resp.unprocessed_accounts[0].account_id #=> String
2888
+ # resp.unprocessed_accounts[0].result #=> String
2889
+ #
2890
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/UpdateMemberDetectors AWS API Documentation
2891
+ #
2892
+ # @overload update_member_detectors(params = {})
2893
+ # @param [Hash] params ({})
2894
+ def update_member_detectors(params = {}, options = {})
2895
+ req = build_request(:update_member_detectors, params)
2896
+ req.send_request(options)
2897
+ end
2898
+
2763
2899
  # Updates the delegated administrator account with the values provided.
2764
2900
  #
2765
2901
  # @option params [required, String] :detector_id
@@ -2769,6 +2905,9 @@ module Aws::GuardDuty
2769
2905
  # Indicates whether to automatically enable member accounts in the
2770
2906
  # organization.
2771
2907
  #
2908
+ # @option params [Types::OrganizationDataSourceConfigurations] :data_sources
2909
+ # An object describes which data sources will be updated.
2910
+ #
2772
2911
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2773
2912
  #
2774
2913
  # @example Request syntax with placeholder values
@@ -2776,6 +2915,11 @@ module Aws::GuardDuty
2776
2915
  # resp = client.update_organization_configuration({
2777
2916
  # detector_id: "DetectorId", # required
2778
2917
  # auto_enable: false, # required
2918
+ # data_sources: {
2919
+ # s3_logs: {
2920
+ # auto_enable: false, # required
2921
+ # },
2922
+ # },
2779
2923
  # })
2780
2924
  #
2781
2925
  # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/UpdateOrganizationConfiguration AWS API Documentation
@@ -2878,7 +3022,7 @@ module Aws::GuardDuty
2878
3022
  params: params,
2879
3023
  config: config)
2880
3024
  context[:gem_name] = 'aws-sdk-guardduty'
2881
- context[:gem_version] = '1.32.0'
3025
+ context[:gem_version] = '1.37.0'
2882
3026
  Seahorse::Client::Request.new(handlers, context)
2883
3027
  end
2884
3028
 
@@ -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:
@@ -13,11 +15,13 @@ module Aws::GuardDuty
13
15
 
14
16
  AcceptInvitationRequest = Shapes::StructureShape.new(name: 'AcceptInvitationRequest')
15
17
  AcceptInvitationResponse = Shapes::StructureShape.new(name: 'AcceptInvitationResponse')
18
+ AccessControlList = Shapes::StructureShape.new(name: 'AccessControlList')
16
19
  AccessKeyDetails = Shapes::StructureShape.new(name: 'AccessKeyDetails')
17
20
  AccountDetail = Shapes::StructureShape.new(name: 'AccountDetail')
18
21
  AccountDetails = Shapes::ListShape.new(name: 'AccountDetails')
19
22
  AccountId = Shapes::StringShape.new(name: 'AccountId')
20
23
  AccountIds = Shapes::ListShape.new(name: 'AccountIds')
24
+ AccountLevelPermissions = Shapes::StructureShape.new(name: 'AccountLevelPermissions')
21
25
  Action = Shapes::StructureShape.new(name: 'Action')
22
26
  AdminAccount = Shapes::StructureShape.new(name: 'AdminAccount')
23
27
  AdminAccounts = Shapes::ListShape.new(name: 'AdminAccounts')
@@ -26,9 +30,13 @@ module Aws::GuardDuty
26
30
  ArchiveFindingsResponse = Shapes::StructureShape.new(name: 'ArchiveFindingsResponse')
27
31
  AwsApiCallAction = Shapes::StructureShape.new(name: 'AwsApiCallAction')
28
32
  BadRequestException = Shapes::StructureShape.new(name: 'BadRequestException')
33
+ BlockPublicAccess = Shapes::StructureShape.new(name: 'BlockPublicAccess')
29
34
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
35
+ BucketLevelPermissions = Shapes::StructureShape.new(name: 'BucketLevelPermissions')
36
+ BucketPolicy = Shapes::StructureShape.new(name: 'BucketPolicy')
30
37
  City = Shapes::StructureShape.new(name: 'City')
31
38
  ClientToken = Shapes::StringShape.new(name: 'ClientToken')
39
+ CloudTrailConfigurationResult = Shapes::StructureShape.new(name: 'CloudTrailConfigurationResult')
32
40
  Condition = Shapes::StructureShape.new(name: 'Condition')
33
41
  CountBySeverity = Shapes::MapShape.new(name: 'CountBySeverity')
34
42
  Country = Shapes::StructureShape.new(name: 'Country')
@@ -47,8 +55,13 @@ module Aws::GuardDuty
47
55
  CreateThreatIntelSetRequest = Shapes::StructureShape.new(name: 'CreateThreatIntelSetRequest')
48
56
  CreateThreatIntelSetResponse = Shapes::StructureShape.new(name: 'CreateThreatIntelSetResponse')
49
57
  Criterion = Shapes::MapShape.new(name: 'Criterion')
58
+ DNSLogsConfigurationResult = Shapes::StructureShape.new(name: 'DNSLogsConfigurationResult')
59
+ DataSourceConfigurations = Shapes::StructureShape.new(name: 'DataSourceConfigurations')
60
+ DataSourceConfigurationsResult = Shapes::StructureShape.new(name: 'DataSourceConfigurationsResult')
61
+ DataSourceStatus = Shapes::StringShape.new(name: 'DataSourceStatus')
50
62
  DeclineInvitationsRequest = Shapes::StructureShape.new(name: 'DeclineInvitationsRequest')
51
63
  DeclineInvitationsResponse = Shapes::StructureShape.new(name: 'DeclineInvitationsResponse')
64
+ DefaultServerSideEncryption = Shapes::StructureShape.new(name: 'DefaultServerSideEncryption')
52
65
  DeleteDetectorRequest = Shapes::StructureShape.new(name: 'DeleteDetectorRequest')
53
66
  DeleteDetectorResponse = Shapes::StructureShape.new(name: 'DeleteDetectorResponse')
54
67
  DeleteFilterRequest = Shapes::StructureShape.new(name: 'DeleteFilterRequest')
@@ -106,6 +119,7 @@ module Aws::GuardDuty
106
119
  FindingType = Shapes::StringShape.new(name: 'FindingType')
107
120
  FindingTypes = Shapes::ListShape.new(name: 'FindingTypes')
108
121
  Findings = Shapes::ListShape.new(name: 'Findings')
122
+ FlowLogsConfigurationResult = Shapes::StructureShape.new(name: 'FlowLogsConfigurationResult')
109
123
  GeoLocation = Shapes::StructureShape.new(name: 'GeoLocation')
110
124
  GetDetectorRequest = Shapes::StructureShape.new(name: 'GetDetectorRequest')
111
125
  GetDetectorResponse = Shapes::StructureShape.new(name: 'GetDetectorResponse')
@@ -121,6 +135,8 @@ module Aws::GuardDuty
121
135
  GetInvitationsCountResponse = Shapes::StructureShape.new(name: 'GetInvitationsCountResponse')
122
136
  GetMasterAccountRequest = Shapes::StructureShape.new(name: 'GetMasterAccountRequest')
123
137
  GetMasterAccountResponse = Shapes::StructureShape.new(name: 'GetMasterAccountResponse')
138
+ GetMemberDetectorsRequest = Shapes::StructureShape.new(name: 'GetMemberDetectorsRequest')
139
+ GetMemberDetectorsResponse = Shapes::StructureShape.new(name: 'GetMemberDetectorsResponse')
124
140
  GetMembersRequest = Shapes::StructureShape.new(name: 'GetMembersRequest')
125
141
  GetMembersResponse = Shapes::StructureShape.new(name: 'GetMembersResponse')
126
142
  GetThreatIntelSetRequest = Shapes::StructureShape.new(name: 'GetThreatIntelSetRequest')
@@ -165,6 +181,8 @@ module Aws::GuardDuty
165
181
  Master = Shapes::StructureShape.new(name: 'Master')
166
182
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
167
183
  Member = Shapes::StructureShape.new(name: 'Member')
184
+ MemberDataSourceConfiguration = Shapes::StructureShape.new(name: 'MemberDataSourceConfiguration')
185
+ MemberDataSourceConfigurations = Shapes::ListShape.new(name: 'MemberDataSourceConfigurations')
168
186
  Members = Shapes::ListShape.new(name: 'Members')
169
187
  Name = Shapes::StringShape.new(name: 'Name')
170
188
  Neq = Shapes::ListShape.new(name: 'Neq')
@@ -174,6 +192,12 @@ module Aws::GuardDuty
174
192
  NotEquals = Shapes::ListShape.new(name: 'NotEquals')
175
193
  OrderBy = Shapes::StringShape.new(name: 'OrderBy')
176
194
  Organization = Shapes::StructureShape.new(name: 'Organization')
195
+ OrganizationDataSourceConfigurations = Shapes::StructureShape.new(name: 'OrganizationDataSourceConfigurations')
196
+ OrganizationDataSourceConfigurationsResult = Shapes::StructureShape.new(name: 'OrganizationDataSourceConfigurationsResult')
197
+ OrganizationS3LogsConfiguration = Shapes::StructureShape.new(name: 'OrganizationS3LogsConfiguration')
198
+ OrganizationS3LogsConfigurationResult = Shapes::StructureShape.new(name: 'OrganizationS3LogsConfigurationResult')
199
+ Owner = Shapes::StructureShape.new(name: 'Owner')
200
+ PermissionConfiguration = Shapes::StructureShape.new(name: 'PermissionConfiguration')
177
201
  PortProbeAction = Shapes::StructureShape.new(name: 'PortProbeAction')
178
202
  PortProbeDetail = Shapes::StructureShape.new(name: 'PortProbeDetail')
179
203
  PortProbeDetails = Shapes::ListShape.new(name: 'PortProbeDetails')
@@ -181,10 +205,15 @@ module Aws::GuardDuty
181
205
  PrivateIpAddresses = Shapes::ListShape.new(name: 'PrivateIpAddresses')
182
206
  ProductCode = Shapes::StructureShape.new(name: 'ProductCode')
183
207
  ProductCodes = Shapes::ListShape.new(name: 'ProductCodes')
208
+ PublicAccess = Shapes::StructureShape.new(name: 'PublicAccess')
184
209
  PublishingStatus = Shapes::StringShape.new(name: 'PublishingStatus')
185
210
  RemoteIpDetails = Shapes::StructureShape.new(name: 'RemoteIpDetails')
186
211
  RemotePortDetails = Shapes::StructureShape.new(name: 'RemotePortDetails')
187
212
  Resource = Shapes::StructureShape.new(name: 'Resource')
213
+ S3BucketDetail = Shapes::StructureShape.new(name: 'S3BucketDetail')
214
+ S3BucketDetails = Shapes::ListShape.new(name: 'S3BucketDetails')
215
+ S3LogsConfiguration = Shapes::StructureShape.new(name: 'S3LogsConfiguration')
216
+ S3LogsConfigurationResult = Shapes::StructureShape.new(name: 'S3LogsConfigurationResult')
188
217
  SecurityGroup = Shapes::StructureShape.new(name: 'SecurityGroup')
189
218
  SecurityGroups = Shapes::ListShape.new(name: 'SecurityGroups')
190
219
  Service = Shapes::StructureShape.new(name: 'Service')
@@ -208,6 +237,7 @@ module Aws::GuardDuty
208
237
  ThreatIntelligenceDetail = Shapes::StructureShape.new(name: 'ThreatIntelligenceDetail')
209
238
  ThreatIntelligenceDetails = Shapes::ListShape.new(name: 'ThreatIntelligenceDetails')
210
239
  ThreatNames = Shapes::ListShape.new(name: 'ThreatNames')
240
+ Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
211
241
  UnarchiveFindingsRequest = Shapes::StructureShape.new(name: 'UnarchiveFindingsRequest')
212
242
  UnarchiveFindingsResponse = Shapes::StructureShape.new(name: 'UnarchiveFindingsResponse')
213
243
  UnprocessedAccount = Shapes::StructureShape.new(name: 'UnprocessedAccount')
@@ -222,6 +252,8 @@ module Aws::GuardDuty
222
252
  UpdateFindingsFeedbackResponse = Shapes::StructureShape.new(name: 'UpdateFindingsFeedbackResponse')
223
253
  UpdateIPSetRequest = Shapes::StructureShape.new(name: 'UpdateIPSetRequest')
224
254
  UpdateIPSetResponse = Shapes::StructureShape.new(name: 'UpdateIPSetResponse')
255
+ UpdateMemberDetectorsRequest = Shapes::StructureShape.new(name: 'UpdateMemberDetectorsRequest')
256
+ UpdateMemberDetectorsResponse = Shapes::StructureShape.new(name: 'UpdateMemberDetectorsResponse')
225
257
  UpdateOrganizationConfigurationRequest = Shapes::StructureShape.new(name: 'UpdateOrganizationConfigurationRequest')
226
258
  UpdateOrganizationConfigurationResponse = Shapes::StructureShape.new(name: 'UpdateOrganizationConfigurationResponse')
227
259
  UpdatePublishingDestinationRequest = Shapes::StructureShape.new(name: 'UpdatePublishingDestinationRequest')
@@ -236,6 +268,10 @@ module Aws::GuardDuty
236
268
 
237
269
  AcceptInvitationResponse.struct_class = Types::AcceptInvitationResponse
238
270
 
271
+ AccessControlList.add_member(:allows_public_read_access, Shapes::ShapeRef.new(shape: Boolean, location_name: "allowsPublicReadAccess"))
272
+ AccessControlList.add_member(:allows_public_write_access, Shapes::ShapeRef.new(shape: Boolean, location_name: "allowsPublicWriteAccess"))
273
+ AccessControlList.struct_class = Types::AccessControlList
274
+
239
275
  AccessKeyDetails.add_member(:access_key_id, Shapes::ShapeRef.new(shape: String, location_name: "accessKeyId"))
240
276
  AccessKeyDetails.add_member(:principal_id, Shapes::ShapeRef.new(shape: String, location_name: "principalId"))
241
277
  AccessKeyDetails.add_member(:user_name, Shapes::ShapeRef.new(shape: String, location_name: "userName"))
@@ -250,6 +286,9 @@ module Aws::GuardDuty
250
286
 
251
287
  AccountIds.member = Shapes::ShapeRef.new(shape: AccountId)
252
288
 
289
+ AccountLevelPermissions.add_member(:block_public_access, Shapes::ShapeRef.new(shape: BlockPublicAccess, location_name: "blockPublicAccess"))
290
+ AccountLevelPermissions.struct_class = Types::AccountLevelPermissions
291
+
253
292
  Action.add_member(:action_type, Shapes::ShapeRef.new(shape: String, location_name: "actionType"))
254
293
  Action.add_member(:aws_api_call_action, Shapes::ShapeRef.new(shape: AwsApiCallAction, location_name: "awsApiCallAction"))
255
294
  Action.add_member(:dns_request_action, Shapes::ShapeRef.new(shape: DnsRequestAction, location_name: "dnsRequestAction"))
@@ -280,9 +319,27 @@ module Aws::GuardDuty
280
319
  BadRequestException.add_member(:type, Shapes::ShapeRef.new(shape: String, location_name: "__type"))
281
320
  BadRequestException.struct_class = Types::BadRequestException
282
321
 
322
+ BlockPublicAccess.add_member(:ignore_public_acls, Shapes::ShapeRef.new(shape: Boolean, location_name: "ignorePublicAcls"))
323
+ BlockPublicAccess.add_member(:restrict_public_buckets, Shapes::ShapeRef.new(shape: Boolean, location_name: "restrictPublicBuckets"))
324
+ BlockPublicAccess.add_member(:block_public_acls, Shapes::ShapeRef.new(shape: Boolean, location_name: "blockPublicAcls"))
325
+ BlockPublicAccess.add_member(:block_public_policy, Shapes::ShapeRef.new(shape: Boolean, location_name: "blockPublicPolicy"))
326
+ BlockPublicAccess.struct_class = Types::BlockPublicAccess
327
+
328
+ BucketLevelPermissions.add_member(:access_control_list, Shapes::ShapeRef.new(shape: AccessControlList, location_name: "accessControlList"))
329
+ BucketLevelPermissions.add_member(:bucket_policy, Shapes::ShapeRef.new(shape: BucketPolicy, location_name: "bucketPolicy"))
330
+ BucketLevelPermissions.add_member(:block_public_access, Shapes::ShapeRef.new(shape: BlockPublicAccess, location_name: "blockPublicAccess"))
331
+ BucketLevelPermissions.struct_class = Types::BucketLevelPermissions
332
+
333
+ BucketPolicy.add_member(:allows_public_read_access, Shapes::ShapeRef.new(shape: Boolean, location_name: "allowsPublicReadAccess"))
334
+ BucketPolicy.add_member(:allows_public_write_access, Shapes::ShapeRef.new(shape: Boolean, location_name: "allowsPublicWriteAccess"))
335
+ BucketPolicy.struct_class = Types::BucketPolicy
336
+
283
337
  City.add_member(:city_name, Shapes::ShapeRef.new(shape: String, location_name: "cityName"))
284
338
  City.struct_class = Types::City
285
339
 
340
+ CloudTrailConfigurationResult.add_member(:status, Shapes::ShapeRef.new(shape: DataSourceStatus, required: true, location_name: "status"))
341
+ CloudTrailConfigurationResult.struct_class = Types::CloudTrailConfigurationResult
342
+
286
343
  Condition.add_member(:eq, Shapes::ShapeRef.new(shape: Eq, deprecated: true, location_name: "eq"))
287
344
  Condition.add_member(:neq, Shapes::ShapeRef.new(shape: Neq, deprecated: true, location_name: "neq"))
288
345
  Condition.add_member(:gt, Shapes::ShapeRef.new(shape: Integer, deprecated: true, location_name: "gt"))
@@ -307,6 +364,7 @@ module Aws::GuardDuty
307
364
  CreateDetectorRequest.add_member(:enable, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "enable"))
308
365
  CreateDetectorRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
309
366
  CreateDetectorRequest.add_member(:finding_publishing_frequency, Shapes::ShapeRef.new(shape: FindingPublishingFrequency, location_name: "findingPublishingFrequency"))
367
+ CreateDetectorRequest.add_member(:data_sources, Shapes::ShapeRef.new(shape: DataSourceConfigurations, location_name: "dataSources"))
310
368
  CreateDetectorRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
311
369
  CreateDetectorRequest.struct_class = Types::CreateDetectorRequest
312
370
 
@@ -375,12 +433,28 @@ module Aws::GuardDuty
375
433
  Criterion.key = Shapes::ShapeRef.new(shape: String)
376
434
  Criterion.value = Shapes::ShapeRef.new(shape: Condition)
377
435
 
436
+ DNSLogsConfigurationResult.add_member(:status, Shapes::ShapeRef.new(shape: DataSourceStatus, required: true, location_name: "status"))
437
+ DNSLogsConfigurationResult.struct_class = Types::DNSLogsConfigurationResult
438
+
439
+ DataSourceConfigurations.add_member(:s3_logs, Shapes::ShapeRef.new(shape: S3LogsConfiguration, location_name: "s3Logs"))
440
+ DataSourceConfigurations.struct_class = Types::DataSourceConfigurations
441
+
442
+ DataSourceConfigurationsResult.add_member(:cloud_trail, Shapes::ShapeRef.new(shape: CloudTrailConfigurationResult, required: true, location_name: "cloudTrail"))
443
+ DataSourceConfigurationsResult.add_member(:dns_logs, Shapes::ShapeRef.new(shape: DNSLogsConfigurationResult, required: true, location_name: "dnsLogs"))
444
+ DataSourceConfigurationsResult.add_member(:flow_logs, Shapes::ShapeRef.new(shape: FlowLogsConfigurationResult, required: true, location_name: "flowLogs"))
445
+ DataSourceConfigurationsResult.add_member(:s3_logs, Shapes::ShapeRef.new(shape: S3LogsConfigurationResult, required: true, location_name: "s3Logs"))
446
+ DataSourceConfigurationsResult.struct_class = Types::DataSourceConfigurationsResult
447
+
378
448
  DeclineInvitationsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, required: true, location_name: "accountIds"))
379
449
  DeclineInvitationsRequest.struct_class = Types::DeclineInvitationsRequest
380
450
 
381
451
  DeclineInvitationsResponse.add_member(:unprocessed_accounts, Shapes::ShapeRef.new(shape: UnprocessedAccounts, required: true, location_name: "unprocessedAccounts"))
382
452
  DeclineInvitationsResponse.struct_class = Types::DeclineInvitationsResponse
383
453
 
454
+ DefaultServerSideEncryption.add_member(:encryption_type, Shapes::ShapeRef.new(shape: String, location_name: "encryptionType"))
455
+ DefaultServerSideEncryption.add_member(:kms_master_key_arn, Shapes::ShapeRef.new(shape: String, location_name: "kmsMasterKeyArn"))
456
+ DefaultServerSideEncryption.struct_class = Types::DefaultServerSideEncryption
457
+
384
458
  DeleteDetectorRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
385
459
  DeleteDetectorRequest.struct_class = Types::DeleteDetectorRequest
386
460
 
@@ -428,6 +502,7 @@ module Aws::GuardDuty
428
502
 
429
503
  DescribeOrganizationConfigurationResponse.add_member(:auto_enable, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "autoEnable"))
430
504
  DescribeOrganizationConfigurationResponse.add_member(:member_account_limit_reached, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "memberAccountLimitReached"))
505
+ DescribeOrganizationConfigurationResponse.add_member(:data_sources, Shapes::ShapeRef.new(shape: OrganizationDataSourceConfigurationsResult, location_name: "dataSources"))
431
506
  DescribeOrganizationConfigurationResponse.struct_class = Types::DescribeOrganizationConfigurationResponse
432
507
 
433
508
  DescribePublishingDestinationRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
@@ -522,6 +597,9 @@ module Aws::GuardDuty
522
597
 
523
598
  Findings.member = Shapes::ShapeRef.new(shape: Finding)
524
599
 
600
+ FlowLogsConfigurationResult.add_member(:status, Shapes::ShapeRef.new(shape: DataSourceStatus, required: true, location_name: "status"))
601
+ FlowLogsConfigurationResult.struct_class = Types::FlowLogsConfigurationResult
602
+
525
603
  GeoLocation.add_member(:lat, Shapes::ShapeRef.new(shape: Double, location_name: "lat"))
526
604
  GeoLocation.add_member(:lon, Shapes::ShapeRef.new(shape: Double, location_name: "lon"))
527
605
  GeoLocation.struct_class = Types::GeoLocation
@@ -534,6 +612,7 @@ module Aws::GuardDuty
534
612
  GetDetectorResponse.add_member(:service_role, Shapes::ShapeRef.new(shape: String, required: true, location_name: "serviceRole"))
535
613
  GetDetectorResponse.add_member(:status, Shapes::ShapeRef.new(shape: DetectorStatus, required: true, location_name: "status"))
536
614
  GetDetectorResponse.add_member(:updated_at, Shapes::ShapeRef.new(shape: String, location_name: "updatedAt"))
615
+ GetDetectorResponse.add_member(:data_sources, Shapes::ShapeRef.new(shape: DataSourceConfigurationsResult, location_name: "dataSources"))
537
616
  GetDetectorResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
538
617
  GetDetectorResponse.struct_class = Types::GetDetectorResponse
539
618
 
@@ -587,6 +666,14 @@ module Aws::GuardDuty
587
666
  GetMasterAccountResponse.add_member(:master, Shapes::ShapeRef.new(shape: Master, required: true, location_name: "master"))
588
667
  GetMasterAccountResponse.struct_class = Types::GetMasterAccountResponse
589
668
 
669
+ GetMemberDetectorsRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
670
+ GetMemberDetectorsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, required: true, location_name: "accountIds"))
671
+ GetMemberDetectorsRequest.struct_class = Types::GetMemberDetectorsRequest
672
+
673
+ GetMemberDetectorsResponse.add_member(:member_data_source_configurations, Shapes::ShapeRef.new(shape: MemberDataSourceConfigurations, required: true, location_name: "members"))
674
+ GetMemberDetectorsResponse.add_member(:unprocessed_accounts, Shapes::ShapeRef.new(shape: UnprocessedAccounts, required: true, location_name: "unprocessedAccounts"))
675
+ GetMemberDetectorsResponse.struct_class = Types::GetMemberDetectorsResponse
676
+
590
677
  GetMembersRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
591
678
  GetMembersRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, required: true, location_name: "accountIds"))
592
679
  GetMembersRequest.struct_class = Types::GetMembersRequest
@@ -759,6 +846,12 @@ module Aws::GuardDuty
759
846
  Member.add_member(:updated_at, Shapes::ShapeRef.new(shape: String, required: true, location_name: "updatedAt"))
760
847
  Member.struct_class = Types::Member
761
848
 
849
+ MemberDataSourceConfiguration.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "accountId"))
850
+ MemberDataSourceConfiguration.add_member(:data_sources, Shapes::ShapeRef.new(shape: DataSourceConfigurationsResult, required: true, location_name: "dataSources"))
851
+ MemberDataSourceConfiguration.struct_class = Types::MemberDataSourceConfiguration
852
+
853
+ MemberDataSourceConfigurations.member = Shapes::ShapeRef.new(shape: MemberDataSourceConfiguration)
854
+
762
855
  Members.member = Shapes::ShapeRef.new(shape: Member)
763
856
 
764
857
  Neq.member = Shapes::ShapeRef.new(shape: String)
@@ -794,6 +887,25 @@ module Aws::GuardDuty
794
887
  Organization.add_member(:org, Shapes::ShapeRef.new(shape: String, location_name: "org"))
795
888
  Organization.struct_class = Types::Organization
796
889
 
890
+ OrganizationDataSourceConfigurations.add_member(:s3_logs, Shapes::ShapeRef.new(shape: OrganizationS3LogsConfiguration, location_name: "s3Logs"))
891
+ OrganizationDataSourceConfigurations.struct_class = Types::OrganizationDataSourceConfigurations
892
+
893
+ OrganizationDataSourceConfigurationsResult.add_member(:s3_logs, Shapes::ShapeRef.new(shape: OrganizationS3LogsConfigurationResult, required: true, location_name: "s3Logs"))
894
+ OrganizationDataSourceConfigurationsResult.struct_class = Types::OrganizationDataSourceConfigurationsResult
895
+
896
+ OrganizationS3LogsConfiguration.add_member(:auto_enable, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "autoEnable"))
897
+ OrganizationS3LogsConfiguration.struct_class = Types::OrganizationS3LogsConfiguration
898
+
899
+ OrganizationS3LogsConfigurationResult.add_member(:auto_enable, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "autoEnable"))
900
+ OrganizationS3LogsConfigurationResult.struct_class = Types::OrganizationS3LogsConfigurationResult
901
+
902
+ Owner.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "id"))
903
+ Owner.struct_class = Types::Owner
904
+
905
+ PermissionConfiguration.add_member(:bucket_level_permissions, Shapes::ShapeRef.new(shape: BucketLevelPermissions, location_name: "bucketLevelPermissions"))
906
+ PermissionConfiguration.add_member(:account_level_permissions, Shapes::ShapeRef.new(shape: AccountLevelPermissions, location_name: "accountLevelPermissions"))
907
+ PermissionConfiguration.struct_class = Types::PermissionConfiguration
908
+
797
909
  PortProbeAction.add_member(:blocked, Shapes::ShapeRef.new(shape: Boolean, location_name: "blocked"))
798
910
  PortProbeAction.add_member(:port_probe_details, Shapes::ShapeRef.new(shape: PortProbeDetails, location_name: "portProbeDetails"))
799
911
  PortProbeAction.struct_class = Types::PortProbeAction
@@ -817,6 +929,10 @@ module Aws::GuardDuty
817
929
 
818
930
  ProductCodes.member = Shapes::ShapeRef.new(shape: ProductCode)
819
931
 
932
+ PublicAccess.add_member(:permission_configuration, Shapes::ShapeRef.new(shape: PermissionConfiguration, location_name: "permissionConfiguration"))
933
+ PublicAccess.add_member(:effective_permission, Shapes::ShapeRef.new(shape: String, location_name: "effectivePermission"))
934
+ PublicAccess.struct_class = Types::PublicAccess
935
+
820
936
  RemoteIpDetails.add_member(:city, Shapes::ShapeRef.new(shape: City, location_name: "city"))
821
937
  RemoteIpDetails.add_member(:country, Shapes::ShapeRef.new(shape: Country, location_name: "country"))
822
938
  RemoteIpDetails.add_member(:geo_location, Shapes::ShapeRef.new(shape: GeoLocation, location_name: "geoLocation"))
@@ -829,10 +945,29 @@ module Aws::GuardDuty
829
945
  RemotePortDetails.struct_class = Types::RemotePortDetails
830
946
 
831
947
  Resource.add_member(:access_key_details, Shapes::ShapeRef.new(shape: AccessKeyDetails, location_name: "accessKeyDetails"))
948
+ Resource.add_member(:s3_bucket_details, Shapes::ShapeRef.new(shape: S3BucketDetails, location_name: "s3BucketDetails"))
832
949
  Resource.add_member(:instance_details, Shapes::ShapeRef.new(shape: InstanceDetails, location_name: "instanceDetails"))
833
950
  Resource.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, location_name: "resourceType"))
834
951
  Resource.struct_class = Types::Resource
835
952
 
953
+ S3BucketDetail.add_member(:arn, Shapes::ShapeRef.new(shape: String, location_name: "arn"))
954
+ S3BucketDetail.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "name"))
955
+ S3BucketDetail.add_member(:type, Shapes::ShapeRef.new(shape: String, location_name: "type"))
956
+ S3BucketDetail.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "createdAt"))
957
+ S3BucketDetail.add_member(:owner, Shapes::ShapeRef.new(shape: Owner, location_name: "owner"))
958
+ S3BucketDetail.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
959
+ S3BucketDetail.add_member(:default_server_side_encryption, Shapes::ShapeRef.new(shape: DefaultServerSideEncryption, location_name: "defaultServerSideEncryption"))
960
+ S3BucketDetail.add_member(:public_access, Shapes::ShapeRef.new(shape: PublicAccess, location_name: "publicAccess"))
961
+ S3BucketDetail.struct_class = Types::S3BucketDetail
962
+
963
+ S3BucketDetails.member = Shapes::ShapeRef.new(shape: S3BucketDetail)
964
+
965
+ S3LogsConfiguration.add_member(:enable, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "enable"))
966
+ S3LogsConfiguration.struct_class = Types::S3LogsConfiguration
967
+
968
+ S3LogsConfigurationResult.add_member(:status, Shapes::ShapeRef.new(shape: DataSourceStatus, required: true, location_name: "status"))
969
+ S3LogsConfigurationResult.struct_class = Types::S3LogsConfigurationResult
970
+
836
971
  SecurityGroup.add_member(:group_id, Shapes::ShapeRef.new(shape: String, location_name: "groupId"))
837
972
  SecurityGroup.add_member(:group_name, Shapes::ShapeRef.new(shape: String, location_name: "groupName"))
838
973
  SecurityGroup.struct_class = Types::SecurityGroup
@@ -917,6 +1052,7 @@ module Aws::GuardDuty
917
1052
  UpdateDetectorRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
918
1053
  UpdateDetectorRequest.add_member(:enable, Shapes::ShapeRef.new(shape: Boolean, location_name: "enable"))
919
1054
  UpdateDetectorRequest.add_member(:finding_publishing_frequency, Shapes::ShapeRef.new(shape: FindingPublishingFrequency, location_name: "findingPublishingFrequency"))
1055
+ UpdateDetectorRequest.add_member(:data_sources, Shapes::ShapeRef.new(shape: DataSourceConfigurations, location_name: "dataSources"))
920
1056
  UpdateDetectorRequest.struct_class = Types::UpdateDetectorRequest
921
1057
 
922
1058
  UpdateDetectorResponse.struct_class = Types::UpdateDetectorResponse
@@ -949,8 +1085,17 @@ module Aws::GuardDuty
949
1085
 
950
1086
  UpdateIPSetResponse.struct_class = Types::UpdateIPSetResponse
951
1087
 
1088
+ UpdateMemberDetectorsRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
1089
+ UpdateMemberDetectorsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, required: true, location_name: "accountIds"))
1090
+ UpdateMemberDetectorsRequest.add_member(:data_sources, Shapes::ShapeRef.new(shape: DataSourceConfigurations, location_name: "dataSources"))
1091
+ UpdateMemberDetectorsRequest.struct_class = Types::UpdateMemberDetectorsRequest
1092
+
1093
+ UpdateMemberDetectorsResponse.add_member(:unprocessed_accounts, Shapes::ShapeRef.new(shape: UnprocessedAccounts, required: true, location_name: "unprocessedAccounts"))
1094
+ UpdateMemberDetectorsResponse.struct_class = Types::UpdateMemberDetectorsResponse
1095
+
952
1096
  UpdateOrganizationConfigurationRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
953
1097
  UpdateOrganizationConfigurationRequest.add_member(:auto_enable, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "autoEnable"))
1098
+ UpdateOrganizationConfigurationRequest.add_member(:data_sources, Shapes::ShapeRef.new(shape: OrganizationDataSourceConfigurations, location_name: "dataSources"))
954
1099
  UpdateOrganizationConfigurationRequest.struct_class = Types::UpdateOrganizationConfigurationRequest
955
1100
 
956
1101
  UpdateOrganizationConfigurationResponse.struct_class = Types::UpdateOrganizationConfigurationResponse
@@ -1289,6 +1434,16 @@ module Aws::GuardDuty
1289
1434
  o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1290
1435
  end)
1291
1436
 
1437
+ api.add_operation(:get_member_detectors, Seahorse::Model::Operation.new.tap do |o|
1438
+ o.name = "GetMemberDetectors"
1439
+ o.http_method = "POST"
1440
+ o.http_request_uri = "/detector/{detectorId}/member/detector/get"
1441
+ o.input = Shapes::ShapeRef.new(shape: GetMemberDetectorsRequest)
1442
+ o.output = Shapes::ShapeRef.new(shape: GetMemberDetectorsResponse)
1443
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1444
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1445
+ end)
1446
+
1292
1447
  api.add_operation(:get_members, Seahorse::Model::Operation.new.tap do |o|
1293
1448
  o.name = "GetMembers"
1294
1449
  o.http_method = "POST"
@@ -1563,6 +1718,16 @@ module Aws::GuardDuty
1563
1718
  o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1564
1719
  end)
1565
1720
 
1721
+ api.add_operation(:update_member_detectors, Seahorse::Model::Operation.new.tap do |o|
1722
+ o.name = "UpdateMemberDetectors"
1723
+ o.http_method = "POST"
1724
+ o.http_request_uri = "/detector/{detectorId}/member/detector/update"
1725
+ o.input = Shapes::ShapeRef.new(shape: UpdateMemberDetectorsRequest)
1726
+ o.output = Shapes::ShapeRef.new(shape: UpdateMemberDetectorsResponse)
1727
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1728
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1729
+ end)
1730
+
1566
1731
  api.add_operation(:update_organization_configuration, Seahorse::Model::Operation.new.tap do |o|
1567
1732
  o.name = "UpdateOrganizationConfiguration"
1568
1733
  o.http_method = "POST"