aws-sdk-guardduty 1.85.0 → 1.86.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0127ffee286d134a03e62ae968b8210d28fa50372e74145c798c05b4573b225e
4
- data.tar.gz: fb1bf98faaf6bb7c9eeff60d7eaffbd008bf5cf5a781588894d9b7fb041f5a87
3
+ metadata.gz: 71e132b3fd29f5b9a317c73d560f28728ec006e1768881e44cbcdd1db378ddcc
4
+ data.tar.gz: f047f6bdde39f530020f4b5fe2488a792a63f579407261b2c646c8838b62387e
5
5
  SHA512:
6
- metadata.gz: '078533a2c05c970133b4a0a4c0640ea32ffcb1ef668d91bb6219848c0edb3a676fe38b9ed0961fd06ca9805633cb4c697fc314ead1fd30bf231c8c16c99e1cbb'
7
- data.tar.gz: 7dd2d22dafcf3f58c381d800d83a89778327188318b9966396c1fcf2e214ddddc5c3daca06d6b38989dcf86d359d866c26285fca7089bb1b4b2ec085fb1e9a44
6
+ metadata.gz: cb96d3223a6bf1ab7e0be73e0d43fc713b01dbe325b80d51a795888cad106514edcb01832d8d90c7f11a64f3ef9378cb2002885c271a098c8982f411b2166c27
7
+ data.tar.gz: 800a099087206222d84f1389cd39e9839c6e9040ff1ac16ac290c857ae32cbfeb1a198a56708b7bfb47ff97bd25020b9b02b1abaf44afdfabdeb3ef8ec05a393
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.86.0 (2023-12-20)
5
+ ------------------
6
+
7
+ * Feature - This release 1) introduces a new API: GetOrganizationStatistics , and 2) adds a new UsageStatisticType TOP_ACCOUNTS_BY_FEATURE for GetUsageStatistics API
8
+
4
9
  1.85.0 (2023-11-28)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.85.0
1
+ 1.86.0
@@ -968,22 +968,30 @@ module Aws::GuardDuty
968
968
  # organization delegated administrator account. A delegated
969
969
  # administrator must enable GuardDuty prior to being added as a member.
970
970
  #
971
+ # When you use CreateMembers as an Organizations delegated
972
+ # administrator, GuardDuty applies your organization's auto-enable
973
+ # settings to the member accounts in this request, irrespective of the
974
+ # accounts being new or existing members. For more information about the
975
+ # existing auto-enable settings for your organization, see
976
+ # [DescribeOrganizationConfiguration][1].
977
+ #
971
978
  # If you are adding accounts by invitation, before using
972
- # [InviteMembers][1], use `CreateMembers` after GuardDuty has been
979
+ # [InviteMembers][2], use `CreateMembers` after GuardDuty has been
973
980
  # enabled in potential member accounts.
974
981
  #
975
982
  # If you disassociate a member from a GuardDuty delegated administrator,
976
983
  # the member account details obtained from this API, including the
977
984
  # associated email addresses, will be retained. This is done so that the
978
- # delegated administrator can invoke the [InviteMembers][1] API without
985
+ # delegated administrator can invoke the [InviteMembers][2] API without
979
986
  # the need to invoke the CreateMembers API again. To remove the details
980
987
  # associated with a member account, the delegated administrator must
981
- # invoke the [DeleteMembers][2] API.
988
+ # invoke the [DeleteMembers][3] API.
982
989
  #
983
990
  #
984
991
  #
985
- # [1]: https://docs.aws.amazon.com/guardduty/latest/APIReference/API_InviteMembers.html
986
- # [2]: https://docs.aws.amazon.com/guardduty/latest/APIReference/API_DeleteMembers.html
992
+ # [1]: https://docs.aws.amazon.com/guardduty/latest/APIReference/API_DescribeOrganizationConfiguration.html
993
+ # [2]: https://docs.aws.amazon.com/guardduty/latest/APIReference/API_InviteMembers.html
994
+ # [3]: https://docs.aws.amazon.com/guardduty/latest/APIReference/API_DeleteMembers.html
987
995
  #
988
996
  # @option params [required, String] :detector_id
989
997
  # The unique ID of the detector of the GuardDuty account that you want
@@ -1852,8 +1860,8 @@ module Aws::GuardDuty
1852
1860
  # Retrieves aggregated statistics for your account. If you are a
1853
1861
  # GuardDuty administrator, you can retrieve the statistics for all the
1854
1862
  # resources associated with the active member accounts in your
1855
- # organization who have enabled EKS Runtime Monitoring and have the
1856
- # GuardDuty agent running on their EKS nodes.
1863
+ # organization who have enabled Runtime Monitoring and have the
1864
+ # GuardDuty security agent running on their resources.
1857
1865
  #
1858
1866
  # @option params [required, String] :detector_id
1859
1867
  # The unique ID of the GuardDuty detector associated to the coverage
@@ -2823,6 +2831,40 @@ module Aws::GuardDuty
2823
2831
  req.send_request(options)
2824
2832
  end
2825
2833
 
2834
+ # Retrieves how many active member accounts in your Amazon Web Services
2835
+ # organization have each feature enabled within GuardDuty. Only a
2836
+ # delegated GuardDuty administrator of an organization can run this API.
2837
+ #
2838
+ # When you create a new Amazon Web Services organization, it might take
2839
+ # up to 24 hours to generate the statistics for the entire organization.
2840
+ #
2841
+ # @return [Types::GetOrganizationStatisticsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2842
+ #
2843
+ # * {Types::GetOrganizationStatisticsResponse#organization_details #organization_details} => Types::OrganizationDetails
2844
+ #
2845
+ # @example Response structure
2846
+ #
2847
+ # resp.organization_details.updated_at #=> Time
2848
+ # resp.organization_details.organization_statistics.total_accounts_count #=> Integer
2849
+ # resp.organization_details.organization_statistics.member_accounts_count #=> Integer
2850
+ # resp.organization_details.organization_statistics.active_accounts_count #=> Integer
2851
+ # resp.organization_details.organization_statistics.enabled_accounts_count #=> Integer
2852
+ # resp.organization_details.organization_statistics.count_by_feature #=> Array
2853
+ # resp.organization_details.organization_statistics.count_by_feature[0].name #=> String, one of "S3_DATA_EVENTS", "EKS_AUDIT_LOGS", "EBS_MALWARE_PROTECTION", "RDS_LOGIN_EVENTS", "EKS_RUNTIME_MONITORING", "LAMBDA_NETWORK_LOGS", "RUNTIME_MONITORING"
2854
+ # resp.organization_details.organization_statistics.count_by_feature[0].enabled_accounts_count #=> Integer
2855
+ # resp.organization_details.organization_statistics.count_by_feature[0].additional_configuration #=> Array
2856
+ # resp.organization_details.organization_statistics.count_by_feature[0].additional_configuration[0].name #=> String, one of "EKS_ADDON_MANAGEMENT", "ECS_FARGATE_AGENT_MANAGEMENT"
2857
+ # resp.organization_details.organization_statistics.count_by_feature[0].additional_configuration[0].enabled_accounts_count #=> Integer
2858
+ #
2859
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/GetOrganizationStatistics AWS API Documentation
2860
+ #
2861
+ # @overload get_organization_statistics(params = {})
2862
+ # @param [Hash] params ({})
2863
+ def get_organization_statistics(params = {}, options = {})
2864
+ req = build_request(:get_organization_statistics, params)
2865
+ req.send_request(options)
2866
+ end
2867
+
2826
2868
  # Provides the number of days left for each data source used in the free
2827
2869
  # trial period.
2828
2870
  #
@@ -2959,7 +3001,7 @@ module Aws::GuardDuty
2959
3001
  #
2960
3002
  # resp = client.get_usage_statistics({
2961
3003
  # detector_id: "DetectorId", # required
2962
- # usage_statistic_type: "SUM_BY_ACCOUNT", # required, accepts SUM_BY_ACCOUNT, SUM_BY_DATA_SOURCE, SUM_BY_RESOURCE, TOP_RESOURCES, SUM_BY_FEATURES
3004
+ # usage_statistic_type: "SUM_BY_ACCOUNT", # required, accepts SUM_BY_ACCOUNT, SUM_BY_DATA_SOURCE, SUM_BY_RESOURCE, TOP_RESOURCES, SUM_BY_FEATURES, TOP_ACCOUNTS_BY_FEATURE
2963
3005
  # usage_criteria: { # required
2964
3006
  # account_ids: ["AccountId"],
2965
3007
  # data_sources: ["FLOW_LOGS"], # accepts FLOW_LOGS, CLOUD_TRAIL, DNS_LOGS, S3_LOGS, KUBERNETES_AUDIT_LOGS, EC2_MALWARE_SCAN
@@ -2977,6 +3019,12 @@ module Aws::GuardDuty
2977
3019
  # resp.usage_statistics.sum_by_account[0].account_id #=> String
2978
3020
  # resp.usage_statistics.sum_by_account[0].total.amount #=> String
2979
3021
  # resp.usage_statistics.sum_by_account[0].total.unit #=> String
3022
+ # resp.usage_statistics.top_accounts_by_feature #=> Array
3023
+ # resp.usage_statistics.top_accounts_by_feature[0].feature #=> String, one of "FLOW_LOGS", "CLOUD_TRAIL", "DNS_LOGS", "S3_DATA_EVENTS", "EKS_AUDIT_LOGS", "EBS_MALWARE_PROTECTION", "RDS_LOGIN_EVENTS", "LAMBDA_NETWORK_LOGS", "EKS_RUNTIME_MONITORING", "FARGATE_RUNTIME_MONITORING", "EC2_RUNTIME_MONITORING"
3024
+ # resp.usage_statistics.top_accounts_by_feature[0].accounts #=> Array
3025
+ # resp.usage_statistics.top_accounts_by_feature[0].accounts[0].account_id #=> String
3026
+ # resp.usage_statistics.top_accounts_by_feature[0].accounts[0].total.amount #=> String
3027
+ # resp.usage_statistics.top_accounts_by_feature[0].accounts[0].total.unit #=> String
2980
3028
  # resp.usage_statistics.sum_by_data_source #=> Array
2981
3029
  # resp.usage_statistics.sum_by_data_source[0].data_source #=> String, one of "FLOW_LOGS", "CLOUD_TRAIL", "DNS_LOGS", "S3_LOGS", "KUBERNETES_AUDIT_LOGS", "EC2_MALWARE_SCAN"
2982
3030
  # resp.usage_statistics.sum_by_data_source[0].total.amount #=> String
@@ -3085,8 +3133,8 @@ module Aws::GuardDuty
3085
3133
  # GuardDuty administrator, you can retrieve all resources associated
3086
3134
  # with the active member accounts in your organization.
3087
3135
  #
3088
- # Make sure the accounts have EKS Runtime Monitoring enabled and
3089
- # GuardDuty agent running on their EKS nodes.
3136
+ # Make sure the accounts have Runtime Monitoring enabled and GuardDuty
3137
+ # agent running on their resources.
3090
3138
  #
3091
3139
  # @option params [required, String] :detector_id
3092
3140
  # The unique ID of the detector whose coverage details you want to
@@ -4548,7 +4596,7 @@ module Aws::GuardDuty
4548
4596
  params: params,
4549
4597
  config: config)
4550
4598
  context[:gem_name] = 'aws-sdk-guardduty'
4551
- context[:gem_version] = '1.85.0'
4599
+ context[:gem_version] = '1.86.0'
4552
4600
  Seahorse::Client::Request.new(handlers, context)
4553
4601
  end
4554
4602
 
@@ -225,6 +225,7 @@ module Aws::GuardDuty
225
225
  GetMemberDetectorsResponse = Shapes::StructureShape.new(name: 'GetMemberDetectorsResponse')
226
226
  GetMembersRequest = Shapes::StructureShape.new(name: 'GetMembersRequest')
227
227
  GetMembersResponse = Shapes::StructureShape.new(name: 'GetMembersResponse')
228
+ GetOrganizationStatisticsResponse = Shapes::StructureShape.new(name: 'GetOrganizationStatisticsResponse')
228
229
  GetRemainingFreeTrialDaysRequest = Shapes::StructureShape.new(name: 'GetRemainingFreeTrialDaysRequest')
229
230
  GetRemainingFreeTrialDaysResponse = Shapes::StructureShape.new(name: 'GetRemainingFreeTrialDaysResponse')
230
231
  GetThreatIntelSetRequest = Shapes::StructureShape.new(name: 'GetThreatIntelSetRequest')
@@ -335,10 +336,15 @@ module Aws::GuardDuty
335
336
  OrganizationAdditionalConfigurations = Shapes::ListShape.new(name: 'OrganizationAdditionalConfigurations')
336
337
  OrganizationDataSourceConfigurations = Shapes::StructureShape.new(name: 'OrganizationDataSourceConfigurations')
337
338
  OrganizationDataSourceConfigurationsResult = Shapes::StructureShape.new(name: 'OrganizationDataSourceConfigurationsResult')
339
+ OrganizationDetails = Shapes::StructureShape.new(name: 'OrganizationDetails')
338
340
  OrganizationEbsVolumes = Shapes::StructureShape.new(name: 'OrganizationEbsVolumes')
339
341
  OrganizationEbsVolumesResult = Shapes::StructureShape.new(name: 'OrganizationEbsVolumesResult')
340
342
  OrganizationFeatureConfiguration = Shapes::StructureShape.new(name: 'OrganizationFeatureConfiguration')
341
343
  OrganizationFeatureConfigurationResult = Shapes::StructureShape.new(name: 'OrganizationFeatureConfigurationResult')
344
+ OrganizationFeatureStatistics = Shapes::StructureShape.new(name: 'OrganizationFeatureStatistics')
345
+ OrganizationFeatureStatisticsAdditionalConfiguration = Shapes::StructureShape.new(name: 'OrganizationFeatureStatisticsAdditionalConfiguration')
346
+ OrganizationFeatureStatisticsAdditionalConfigurations = Shapes::ListShape.new(name: 'OrganizationFeatureStatisticsAdditionalConfigurations')
347
+ OrganizationFeatureStatisticsResults = Shapes::ListShape.new(name: 'OrganizationFeatureStatisticsResults')
342
348
  OrganizationFeaturesConfigurations = Shapes::ListShape.new(name: 'OrganizationFeaturesConfigurations')
343
349
  OrganizationFeaturesConfigurationsResults = Shapes::ListShape.new(name: 'OrganizationFeaturesConfigurationsResults')
344
350
  OrganizationKubernetesAuditLogsConfiguration = Shapes::StructureShape.new(name: 'OrganizationKubernetesAuditLogsConfiguration')
@@ -351,6 +357,7 @@ module Aws::GuardDuty
351
357
  OrganizationS3LogsConfigurationResult = Shapes::StructureShape.new(name: 'OrganizationS3LogsConfigurationResult')
352
358
  OrganizationScanEc2InstanceWithFindings = Shapes::StructureShape.new(name: 'OrganizationScanEc2InstanceWithFindings')
353
359
  OrganizationScanEc2InstanceWithFindingsResult = Shapes::StructureShape.new(name: 'OrganizationScanEc2InstanceWithFindingsResult')
360
+ OrganizationStatistics = Shapes::StructureShape.new(name: 'OrganizationStatistics')
354
361
  Owner = Shapes::StructureShape.new(name: 'Owner')
355
362
  PermissionConfiguration = Shapes::StructureShape.new(name: 'PermissionConfiguration')
356
363
  PortProbeAction = Shapes::StructureShape.new(name: 'PortProbeAction')
@@ -475,6 +482,10 @@ module Aws::GuardDuty
475
482
  UsageResourceResultList = Shapes::ListShape.new(name: 'UsageResourceResultList')
476
483
  UsageStatisticType = Shapes::StringShape.new(name: 'UsageStatisticType')
477
484
  UsageStatistics = Shapes::StructureShape.new(name: 'UsageStatistics')
485
+ UsageTopAccountResult = Shapes::StructureShape.new(name: 'UsageTopAccountResult')
486
+ UsageTopAccountsByFeatureList = Shapes::ListShape.new(name: 'UsageTopAccountsByFeatureList')
487
+ UsageTopAccountsResult = Shapes::StructureShape.new(name: 'UsageTopAccountsResult')
488
+ UsageTopAccountsResultList = Shapes::ListShape.new(name: 'UsageTopAccountsResultList')
478
489
  Volume = Shapes::StructureShape.new(name: 'Volume')
479
490
  VolumeDetail = Shapes::StructureShape.new(name: 'VolumeDetail')
480
491
  VolumeDetails = Shapes::ListShape.new(name: 'VolumeDetails')
@@ -1228,6 +1239,9 @@ module Aws::GuardDuty
1228
1239
  GetMembersResponse.add_member(:unprocessed_accounts, Shapes::ShapeRef.new(shape: UnprocessedAccounts, required: true, location_name: "unprocessedAccounts"))
1229
1240
  GetMembersResponse.struct_class = Types::GetMembersResponse
1230
1241
 
1242
+ GetOrganizationStatisticsResponse.add_member(:organization_details, Shapes::ShapeRef.new(shape: OrganizationDetails, location_name: "organizationDetails"))
1243
+ GetOrganizationStatisticsResponse.struct_class = Types::GetOrganizationStatisticsResponse
1244
+
1231
1245
  GetRemainingFreeTrialDaysRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
1232
1246
  GetRemainingFreeTrialDaysRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, location_name: "accountIds"))
1233
1247
  GetRemainingFreeTrialDaysRequest.struct_class = Types::GetRemainingFreeTrialDaysRequest
@@ -1652,6 +1666,10 @@ module Aws::GuardDuty
1652
1666
  OrganizationDataSourceConfigurationsResult.add_member(:malware_protection, Shapes::ShapeRef.new(shape: OrganizationMalwareProtectionConfigurationResult, location_name: "malwareProtection"))
1653
1667
  OrganizationDataSourceConfigurationsResult.struct_class = Types::OrganizationDataSourceConfigurationsResult
1654
1668
 
1669
+ OrganizationDetails.add_member(:updated_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "updatedAt"))
1670
+ OrganizationDetails.add_member(:organization_statistics, Shapes::ShapeRef.new(shape: OrganizationStatistics, location_name: "organizationStatistics"))
1671
+ OrganizationDetails.struct_class = Types::OrganizationDetails
1672
+
1655
1673
  OrganizationEbsVolumes.add_member(:auto_enable, Shapes::ShapeRef.new(shape: Boolean, location_name: "autoEnable"))
1656
1674
  OrganizationEbsVolumes.struct_class = Types::OrganizationEbsVolumes
1657
1675
 
@@ -1668,6 +1686,19 @@ module Aws::GuardDuty
1668
1686
  OrganizationFeatureConfigurationResult.add_member(:additional_configuration, Shapes::ShapeRef.new(shape: OrganizationAdditionalConfigurationResults, location_name: "additionalConfiguration"))
1669
1687
  OrganizationFeatureConfigurationResult.struct_class = Types::OrganizationFeatureConfigurationResult
1670
1688
 
1689
+ OrganizationFeatureStatistics.add_member(:name, Shapes::ShapeRef.new(shape: OrgFeature, location_name: "name"))
1690
+ OrganizationFeatureStatistics.add_member(:enabled_accounts_count, Shapes::ShapeRef.new(shape: Integer, location_name: "enabledAccountsCount"))
1691
+ OrganizationFeatureStatistics.add_member(:additional_configuration, Shapes::ShapeRef.new(shape: OrganizationFeatureStatisticsAdditionalConfigurations, location_name: "additionalConfiguration"))
1692
+ OrganizationFeatureStatistics.struct_class = Types::OrganizationFeatureStatistics
1693
+
1694
+ OrganizationFeatureStatisticsAdditionalConfiguration.add_member(:name, Shapes::ShapeRef.new(shape: OrgFeatureAdditionalConfiguration, location_name: "name"))
1695
+ OrganizationFeatureStatisticsAdditionalConfiguration.add_member(:enabled_accounts_count, Shapes::ShapeRef.new(shape: Integer, location_name: "enabledAccountsCount"))
1696
+ OrganizationFeatureStatisticsAdditionalConfiguration.struct_class = Types::OrganizationFeatureStatisticsAdditionalConfiguration
1697
+
1698
+ OrganizationFeatureStatisticsAdditionalConfigurations.member = Shapes::ShapeRef.new(shape: OrganizationFeatureStatisticsAdditionalConfiguration)
1699
+
1700
+ OrganizationFeatureStatisticsResults.member = Shapes::ShapeRef.new(shape: OrganizationFeatureStatistics)
1701
+
1671
1702
  OrganizationFeaturesConfigurations.member = Shapes::ShapeRef.new(shape: OrganizationFeatureConfiguration)
1672
1703
 
1673
1704
  OrganizationFeaturesConfigurationsResults.member = Shapes::ShapeRef.new(shape: OrganizationFeatureConfigurationResult)
@@ -1702,6 +1733,13 @@ module Aws::GuardDuty
1702
1733
  OrganizationScanEc2InstanceWithFindingsResult.add_member(:ebs_volumes, Shapes::ShapeRef.new(shape: OrganizationEbsVolumesResult, location_name: "ebsVolumes"))
1703
1734
  OrganizationScanEc2InstanceWithFindingsResult.struct_class = Types::OrganizationScanEc2InstanceWithFindingsResult
1704
1735
 
1736
+ OrganizationStatistics.add_member(:total_accounts_count, Shapes::ShapeRef.new(shape: Integer, location_name: "totalAccountsCount"))
1737
+ OrganizationStatistics.add_member(:member_accounts_count, Shapes::ShapeRef.new(shape: Integer, location_name: "memberAccountsCount"))
1738
+ OrganizationStatistics.add_member(:active_accounts_count, Shapes::ShapeRef.new(shape: Integer, location_name: "activeAccountsCount"))
1739
+ OrganizationStatistics.add_member(:enabled_accounts_count, Shapes::ShapeRef.new(shape: Integer, location_name: "enabledAccountsCount"))
1740
+ OrganizationStatistics.add_member(:count_by_feature, Shapes::ShapeRef.new(shape: OrganizationFeatureStatisticsResults, location_name: "countByFeature"))
1741
+ OrganizationStatistics.struct_class = Types::OrganizationStatistics
1742
+
1705
1743
  Owner.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "id"))
1706
1744
  Owner.struct_class = Types::Owner
1707
1745
 
@@ -2154,12 +2192,25 @@ module Aws::GuardDuty
2154
2192
  UsageResourceResultList.member = Shapes::ShapeRef.new(shape: UsageResourceResult)
2155
2193
 
2156
2194
  UsageStatistics.add_member(:sum_by_account, Shapes::ShapeRef.new(shape: UsageAccountResultList, location_name: "sumByAccount"))
2195
+ UsageStatistics.add_member(:top_accounts_by_feature, Shapes::ShapeRef.new(shape: UsageTopAccountsResultList, location_name: "topAccountsByFeature"))
2157
2196
  UsageStatistics.add_member(:sum_by_data_source, Shapes::ShapeRef.new(shape: UsageDataSourceResultList, location_name: "sumByDataSource"))
2158
2197
  UsageStatistics.add_member(:sum_by_resource, Shapes::ShapeRef.new(shape: UsageResourceResultList, location_name: "sumByResource"))
2159
2198
  UsageStatistics.add_member(:top_resources, Shapes::ShapeRef.new(shape: UsageResourceResultList, location_name: "topResources"))
2160
2199
  UsageStatistics.add_member(:sum_by_feature, Shapes::ShapeRef.new(shape: UsageFeatureResultList, location_name: "sumByFeature"))
2161
2200
  UsageStatistics.struct_class = Types::UsageStatistics
2162
2201
 
2202
+ UsageTopAccountResult.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "accountId"))
2203
+ UsageTopAccountResult.add_member(:total, Shapes::ShapeRef.new(shape: Total, location_name: "total"))
2204
+ UsageTopAccountResult.struct_class = Types::UsageTopAccountResult
2205
+
2206
+ UsageTopAccountsByFeatureList.member = Shapes::ShapeRef.new(shape: UsageTopAccountResult)
2207
+
2208
+ UsageTopAccountsResult.add_member(:feature, Shapes::ShapeRef.new(shape: UsageFeature, location_name: "feature"))
2209
+ UsageTopAccountsResult.add_member(:accounts, Shapes::ShapeRef.new(shape: UsageTopAccountsByFeatureList, location_name: "accounts"))
2210
+ UsageTopAccountsResult.struct_class = Types::UsageTopAccountsResult
2211
+
2212
+ UsageTopAccountsResultList.member = Shapes::ShapeRef.new(shape: UsageTopAccountsResult)
2213
+
2163
2214
  Volume.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "name"))
2164
2215
  Volume.add_member(:host_path, Shapes::ShapeRef.new(shape: HostPath, location_name: "hostPath"))
2165
2216
  Volume.struct_class = Types::Volume
@@ -2601,6 +2652,16 @@ module Aws::GuardDuty
2601
2652
  o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
2602
2653
  end)
2603
2654
 
2655
+ api.add_operation(:get_organization_statistics, Seahorse::Model::Operation.new.tap do |o|
2656
+ o.name = "GetOrganizationStatistics"
2657
+ o.http_method = "GET"
2658
+ o.http_request_uri = "/organization/statistics"
2659
+ o.input = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2660
+ o.output = Shapes::ShapeRef.new(shape: GetOrganizationStatisticsResponse)
2661
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
2662
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
2663
+ end)
2664
+
2604
2665
  api.add_operation(:get_remaining_free_trial_days, Seahorse::Model::Operation.new.tap do |o|
2605
2666
  o.name = "GetRemainingFreeTrialDays"
2606
2667
  o.http_method = "POST"
@@ -544,6 +544,20 @@ module Aws::GuardDuty
544
544
  end
545
545
  end
546
546
 
547
+ class GetOrganizationStatistics
548
+ def self.build(context)
549
+ unless context.config.regional_endpoint
550
+ endpoint = context.config.endpoint.to_s
551
+ end
552
+ Aws::GuardDuty::EndpointParameters.new(
553
+ region: context.config.region,
554
+ use_dual_stack: context.config.use_dualstack_endpoint,
555
+ use_fips: context.config.use_fips_endpoint,
556
+ endpoint: endpoint,
557
+ )
558
+ end
559
+ end
560
+
547
561
  class GetRemainingFreeTrialDays
548
562
  def self.build(context)
549
563
  unless context.config.regional_endpoint
@@ -133,6 +133,8 @@ module Aws::GuardDuty
133
133
  Aws::GuardDuty::Endpoints::GetMemberDetectors.build(context)
134
134
  when :get_members
135
135
  Aws::GuardDuty::Endpoints::GetMembers.build(context)
136
+ when :get_organization_statistics
137
+ Aws::GuardDuty::Endpoints::GetOrganizationStatistics.build(context)
136
138
  when :get_remaining_free_trial_days
137
139
  Aws::GuardDuty::Endpoints::GetRemainingFreeTrialDays.build(context)
138
140
  when :get_threat_intel_set
@@ -810,13 +810,18 @@ module Aws::GuardDuty
810
810
 
811
811
  # <note markdown="1"> This API is also used when you use GuardDuty Runtime Monitoring for
812
812
  # your Amazon EC2 instances (currently in preview release) and is
813
- # subject to change.
813
+ # subject to change. The use of this API is subject to Section 2 of the
814
+ # [Amazon Web Services Service Terms][1] ("Betas and Previews").
814
815
  #
815
816
  # </note>
816
817
  #
817
818
  # Contains information about the Amazon EC2 instance runtime coverage
818
819
  # details.
819
820
  #
821
+ #
822
+ #
823
+ # [1]: http://aws.amazon.com/service-terms/
824
+ #
820
825
  # @!attribute [rw] instance_id
821
826
  # The Amazon EC2 instance ID.
822
827
  # @return [String]
@@ -845,7 +850,7 @@ module Aws::GuardDuty
845
850
  # manage the GuardDuty security agent updates for this resource.
846
851
  #
847
852
  # <note markdown="1"> The `DISABLED` status doesn't apply to Amazon EC2 instances and
848
- # Amazon EKS clusters that run on Amazon EC2 instances.
853
+ # Amazon EKS clusters.
849
854
  #
850
855
  # </note>
851
856
  # @return [String]
@@ -1059,12 +1064,17 @@ module Aws::GuardDuty
1059
1064
  # @!attribute [rw] ec2_instance_details
1060
1065
  # <note markdown="1"> This API is also used when you use GuardDuty Runtime Monitoring for
1061
1066
  # your Amazon EC2 instances (currently in preview release) and is
1062
- # subject to change.
1067
+ # subject to change. The use of this API is subject to Section 2 of
1068
+ # the [Amazon Web Services Service Terms][1] ("Betas and Previews").
1063
1069
  #
1064
1070
  # </note>
1065
1071
  #
1066
1072
  # Information about the Amazon EC2 instance assessed for runtime
1067
1073
  # coverage.
1074
+ #
1075
+ #
1076
+ #
1077
+ # [1]: http://aws.amazon.com/service-terms/
1068
1078
  # @return [Types::CoverageEc2InstanceDetails]
1069
1079
  #
1070
1080
  # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/CoverageResourceDetails AWS API Documentation
@@ -2798,12 +2808,12 @@ module Aws::GuardDuty
2798
2808
  include Aws::Structure
2799
2809
  end
2800
2810
 
2801
- # Contains information about AWS Fargate details associated with an
2802
- # Amazon ECS cluster.
2811
+ # Contains information about Amazon Web Services Fargate details
2812
+ # associated with an Amazon ECS cluster.
2803
2813
  #
2804
2814
  # @!attribute [rw] issues
2805
- # Runtime coverage issues identified for the resource running on AWS
2806
- # Fargate.
2815
+ # Runtime coverage issues identified for the resource running on
2816
+ # Amazon Web Services Fargate.
2807
2817
  # @return [Array<String>]
2808
2818
  #
2809
2819
  # @!attribute [rw] management_type
@@ -2813,11 +2823,13 @@ module Aws::GuardDuty
2813
2823
  # * `AUTO_MANAGED` indicates that GuardDuty deploys and manages
2814
2824
  # updates for this resource.
2815
2825
  #
2816
- # * `MANUAL` indicates that you are responsible to deploy, update, and
2817
- # manage the GuardDuty security agent updates for this resource.
2818
- #
2819
2826
  # * `DISABLED` indicates that the deployment of the GuardDuty security
2820
2827
  # agent is disabled for this resource.
2828
+ #
2829
+ # <note markdown="1"> The `MANUAL` status doesn't apply to the Amazon Web Services
2830
+ # Fargate (Amazon ECS only) woprkloads.
2831
+ #
2832
+ # </note>
2821
2833
  # @return [String]
2822
2834
  #
2823
2835
  # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/FargateDetails AWS API Documentation
@@ -3513,6 +3525,18 @@ module Aws::GuardDuty
3513
3525
  include Aws::Structure
3514
3526
  end
3515
3527
 
3528
+ # @!attribute [rw] organization_details
3529
+ # Information about the statistics report for your organization.
3530
+ # @return [Types::OrganizationDetails]
3531
+ #
3532
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/GetOrganizationStatisticsResponse AWS API Documentation
3533
+ #
3534
+ class GetOrganizationStatisticsResponse < Struct.new(
3535
+ :organization_details)
3536
+ SENSITIVE = []
3537
+ include Aws::Structure
3538
+ end
3539
+
3516
3540
  # @!attribute [rw] detector_id
3517
3541
  # The unique ID of the detector of the GuardDuty member account.
3518
3542
  # @return [String]
@@ -5603,6 +5627,28 @@ module Aws::GuardDuty
5603
5627
  include Aws::Structure
5604
5628
  end
5605
5629
 
5630
+ # Information about GuardDuty coverage statistics for members in your
5631
+ # Amazon Web Services organization.
5632
+ #
5633
+ # @!attribute [rw] updated_at
5634
+ # The timestamp at which the organization statistics was last updated.
5635
+ # This is in UTC format.
5636
+ # @return [Time]
5637
+ #
5638
+ # @!attribute [rw] organization_statistics
5639
+ # Information about the GuardDuty coverage statistics for members in
5640
+ # your Amazon Web Services organization.
5641
+ # @return [Types::OrganizationStatistics]
5642
+ #
5643
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/OrganizationDetails AWS API Documentation
5644
+ #
5645
+ class OrganizationDetails < Struct.new(
5646
+ :updated_at,
5647
+ :organization_statistics)
5648
+ SENSITIVE = []
5649
+ include Aws::Structure
5650
+ end
5651
+
5606
5652
  # Organization-wide EBS volumes scan configuration.
5607
5653
  #
5608
5654
  # @!attribute [rw] auto_enable
@@ -5716,6 +5762,52 @@ module Aws::GuardDuty
5716
5762
  include Aws::Structure
5717
5763
  end
5718
5764
 
5765
+ # Information about the number of accounts that have enabled a specific
5766
+ # feature.
5767
+ #
5768
+ # @!attribute [rw] name
5769
+ # Name of the feature.
5770
+ # @return [String]
5771
+ #
5772
+ # @!attribute [rw] enabled_accounts_count
5773
+ # Total number of accounts that have enabled a specific feature.
5774
+ # @return [Integer]
5775
+ #
5776
+ # @!attribute [rw] additional_configuration
5777
+ # Name of the additional configuration.
5778
+ # @return [Array<Types::OrganizationFeatureStatisticsAdditionalConfiguration>]
5779
+ #
5780
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/OrganizationFeatureStatistics AWS API Documentation
5781
+ #
5782
+ class OrganizationFeatureStatistics < Struct.new(
5783
+ :name,
5784
+ :enabled_accounts_count,
5785
+ :additional_configuration)
5786
+ SENSITIVE = []
5787
+ include Aws::Structure
5788
+ end
5789
+
5790
+ # Information about the coverage statistic for the additional
5791
+ # configuration of the feature.
5792
+ #
5793
+ # @!attribute [rw] name
5794
+ # Name of the additional configuration within a feature.
5795
+ # @return [String]
5796
+ #
5797
+ # @!attribute [rw] enabled_accounts_count
5798
+ # Total number of accounts that have enabled the additional
5799
+ # configuration.
5800
+ # @return [Integer]
5801
+ #
5802
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/OrganizationFeatureStatisticsAdditionalConfiguration AWS API Documentation
5803
+ #
5804
+ class OrganizationFeatureStatisticsAdditionalConfiguration < Struct.new(
5805
+ :name,
5806
+ :enabled_accounts_count)
5807
+ SENSITIVE = []
5808
+ include Aws::Structure
5809
+ end
5810
+
5719
5811
  # Organization-wide Kubernetes audit logs configuration.
5720
5812
  #
5721
5813
  # @!attribute [rw] auto_enable
@@ -5873,6 +5965,47 @@ module Aws::GuardDuty
5873
5965
  include Aws::Structure
5874
5966
  end
5875
5967
 
5968
+ # Information about the coverage statistics of the features for the
5969
+ # entire Amazon Web Services organization.
5970
+ #
5971
+ # When you create a new Amazon Web Services organization, it might take
5972
+ # up to 24 hours to generate the statistics summary for this
5973
+ # organization.
5974
+ #
5975
+ # @!attribute [rw] total_accounts_count
5976
+ # Total number of accounts in your Amazon Web Services organization.
5977
+ # @return [Integer]
5978
+ #
5979
+ # @!attribute [rw] member_accounts_count
5980
+ # Total number of accounts in your Amazon Web Services organization
5981
+ # that are associated with GuardDuty.
5982
+ # @return [Integer]
5983
+ #
5984
+ # @!attribute [rw] active_accounts_count
5985
+ # Total number of active accounts in your Amazon Web Services
5986
+ # organization that are associated with GuardDuty.
5987
+ # @return [Integer]
5988
+ #
5989
+ # @!attribute [rw] enabled_accounts_count
5990
+ # Total number of accounts that have enabled GuardDuty.
5991
+ # @return [Integer]
5992
+ #
5993
+ # @!attribute [rw] count_by_feature
5994
+ # Retrieves the coverage statistics for each feature.
5995
+ # @return [Array<Types::OrganizationFeatureStatistics>]
5996
+ #
5997
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/OrganizationStatistics AWS API Documentation
5998
+ #
5999
+ class OrganizationStatistics < Struct.new(
6000
+ :total_accounts_count,
6001
+ :member_accounts_count,
6002
+ :active_accounts_count,
6003
+ :enabled_accounts_count,
6004
+ :count_by_feature)
6005
+ SENSITIVE = []
6006
+ include Aws::Structure
6007
+ end
6008
+
5876
6009
  # Contains information on the owner of the bucket.
5877
6010
  #
5878
6011
  # @!attribute [rw] id
@@ -7853,6 +7986,13 @@ module Aws::GuardDuty
7853
7986
  # The usage statistic sum organized by account ID.
7854
7987
  # @return [Array<Types::UsageAccountResult>]
7855
7988
  #
7989
+ # @!attribute [rw] top_accounts_by_feature
7990
+ # Lists the top 50 accounts by feature that have generated the most
7991
+ # GuardDuty usage, in the order from most to least expensive.
7992
+ #
7993
+ # Currently, this doesn't support `RDS_LOGIN_EVENTS`.
7994
+ # @return [Array<Types::UsageTopAccountsResult>]
7995
+ #
7856
7996
  # @!attribute [rw] sum_by_data_source
7857
7997
  # The usage statistic sum organized by on data source.
7858
7998
  # @return [Array<Types::UsageDataSourceResult>]
@@ -7874,6 +8014,7 @@ module Aws::GuardDuty
7874
8014
  #
7875
8015
  class UsageStatistics < Struct.new(
7876
8016
  :sum_by_account,
8017
+ :top_accounts_by_feature,
7877
8018
  :sum_by_data_source,
7878
8019
  :sum_by_resource,
7879
8020
  :top_resources,
@@ -7882,6 +8023,50 @@ module Aws::GuardDuty
7882
8023
  include Aws::Structure
7883
8024
  end
7884
8025
 
8026
+ # Contains information on the total of usage based on the topmost 50
8027
+ # account IDs.
8028
+ #
8029
+ # @!attribute [rw] account_id
8030
+ # The unique account ID.
8031
+ # @return [String]
8032
+ #
8033
+ # @!attribute [rw] total
8034
+ # Contains the total usage with the corresponding currency unit for
8035
+ # that value.
8036
+ # @return [Types::Total]
8037
+ #
8038
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/UsageTopAccountResult AWS API Documentation
8039
+ #
8040
+ class UsageTopAccountResult < Struct.new(
8041
+ :account_id,
8042
+ :total)
8043
+ SENSITIVE = []
8044
+ include Aws::Structure
8045
+ end
8046
+
8047
+ # Information about the usage statistics, calculated by top accounts by
8048
+ # feature.
8049
+ #
8050
+ # @!attribute [rw] feature
8051
+ # Features by which you can generate the usage statistics.
8052
+ #
8053
+ # `RDS_LOGIN_EVENTS` is currently not supported with
8054
+ # `topAccountsByFeature`.
8055
+ # @return [String]
8056
+ #
8057
+ # @!attribute [rw] accounts
8058
+ # The accounts that contributed to the total usage cost.
8059
+ # @return [Array<Types::UsageTopAccountResult>]
8060
+ #
8061
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/UsageTopAccountsResult AWS API Documentation
8062
+ #
8063
+ class UsageTopAccountsResult < Struct.new(
8064
+ :feature,
8065
+ :accounts)
8066
+ SENSITIVE = []
8067
+ include Aws::Structure
8068
+ end
8069
+
7885
8070
  # Volume used by the Kubernetes workload.
7886
8071
  #
7887
8072
  # @!attribute [rw] name
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-guardduty/customizations'
52
52
  # @!group service
53
53
  module Aws::GuardDuty
54
54
 
55
- GEM_VERSION = '1.85.0'
55
+ GEM_VERSION = '1.86.0'
56
56
 
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-guardduty
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.85.0
4
+ version: 1.86.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-11-28 00:00:00.000000000 Z
11
+ date: 2023-12-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core