aws-sdk-guardduty 1.3.0 → 1.4.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
  SHA1:
3
- metadata.gz: efa5fd7d86024c8cb5c34b84c8b03206575921dd
4
- data.tar.gz: 469e4ba1f4ebe504ac0915c044f2d46f22e61813
3
+ metadata.gz: a07ca2c24b16cd4ef9105c985071e8ec24a941f7
4
+ data.tar.gz: 760b5280b9be348ab677ab62509f066fe2947ce8
5
5
  SHA512:
6
- metadata.gz: 95e4e0302530c2782d7cac5863f129d260864d881d98d18f07c92a04b36637759094a71d3ca931d794ddb21bb9f917f43ad038b6da2d47c13d061e17a6798683
7
- data.tar.gz: 89c867f9d4c08c7c6175335fa51bf8f5a4a76003664d9208f0b81530475d6df5b21da937ba5268a9cafd9980fb3b893bc2ed6f136098186b5939e196f7b869ff
6
+ metadata.gz: fabf4a6b19626f7c49e6c1b0199d6ca767e67f2043b0eb27f18b0881672243cd253ffea65b9a17d1bb9ccb44e811c6c2f0f4d59d5249c0533bc75ca8c8961ee6
7
+ data.tar.gz: 287a60622b46dbdd4f0d67db9016563ec7e1ce4b6741b0eb7a4b24a1a84a4a8a2b0bf6ddd8be6cf4729d47d8d811c875fa262b8b3cf1fbde477562b20ad0dbce
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-guardduty/customizations'
42
42
  # @service
43
43
  module Aws::GuardDuty
44
44
 
45
- GEM_VERSION = '1.3.0'
45
+ GEM_VERSION = '1.4.0'
46
46
 
47
47
  end
@@ -232,6 +232,73 @@ module Aws::GuardDuty
232
232
  req.send_request(options)
233
233
  end
234
234
 
235
+ # Creates a filter using the specified finding criteria.
236
+ #
237
+ # @option params [String] :action
238
+ # Specifies the action that is to be applied to the findings that match
239
+ # the filter.
240
+ #
241
+ # @option params [String] :client_token
242
+ # The idempotency token for the create request.**A suitable default value is auto-generated.** You should normally
243
+ # not need to pass this option.**
244
+ #
245
+ # @option params [String] :description
246
+ # The description of the filter.
247
+ #
248
+ # @option params [required, String] :detector_id
249
+ #
250
+ # @option params [Types::FindingCriteria] :finding_criteria
251
+ # Represents the criteria to be used in the filter for querying
252
+ # findings.
253
+ #
254
+ # @option params [String] :name
255
+ # The name of the filter.
256
+ #
257
+ # @option params [Integer] :rank
258
+ # Specifies the position of the filter in the list of current filters.
259
+ # Also specifies the order in which this filter is applied to the
260
+ # findings.
261
+ #
262
+ # @return [Types::CreateFilterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
263
+ #
264
+ # * {Types::CreateFilterResponse#name #name} => String
265
+ #
266
+ # @example Request syntax with placeholder values
267
+ #
268
+ # resp = client.create_filter({
269
+ # action: "NOOP", # accepts NOOP, ARCHIVE
270
+ # client_token: "__stringMin0Max64",
271
+ # description: "FilterDescription",
272
+ # detector_id: "__string", # required
273
+ # finding_criteria: {
274
+ # criterion: {
275
+ # "__string" => {
276
+ # eq: ["__string"],
277
+ # gt: 1,
278
+ # gte: 1,
279
+ # lt: 1,
280
+ # lte: 1,
281
+ # neq: ["__string"],
282
+ # },
283
+ # },
284
+ # },
285
+ # name: "FilterName",
286
+ # rank: 1,
287
+ # })
288
+ #
289
+ # @example Response structure
290
+ #
291
+ # resp.name #=> String
292
+ #
293
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/CreateFilter AWS API Documentation
294
+ #
295
+ # @overload create_filter(params = {})
296
+ # @param [Hash] params ({})
297
+ def create_filter(params = {}, options = {})
298
+ req = build_request(:create_filter, params)
299
+ req.send_request(options)
300
+ end
301
+
235
302
  # Creates a new IPSet - a list of trusted IP addresses that have been
236
303
  # whitelisted for secure communication with AWS infrastructure and
237
304
  # applications.
@@ -451,6 +518,30 @@ module Aws::GuardDuty
451
518
  req.send_request(options)
452
519
  end
453
520
 
521
+ # Deletes the filter specified by the filter name.
522
+ #
523
+ # @option params [required, String] :detector_id
524
+ #
525
+ # @option params [required, String] :filter_name
526
+ #
527
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
528
+ #
529
+ # @example Request syntax with placeholder values
530
+ #
531
+ # resp = client.delete_filter({
532
+ # detector_id: "__string", # required
533
+ # filter_name: "__string", # required
534
+ # })
535
+ #
536
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/DeleteFilter AWS API Documentation
537
+ #
538
+ # @overload delete_filter(params = {})
539
+ # @param [Hash] params ({})
540
+ def delete_filter(params = {}, options = {})
541
+ req = build_request(:delete_filter, params)
542
+ req.send_request(options)
543
+ end
544
+
454
545
  # Deletes the IPSet specified by the IPSet ID.
455
546
  #
456
547
  # @option params [required, String] :detector_id
@@ -656,6 +747,52 @@ module Aws::GuardDuty
656
747
  req.send_request(options)
657
748
  end
658
749
 
750
+ # Returns the details of the filter specified by the filter name.
751
+ #
752
+ # @option params [required, String] :detector_id
753
+ #
754
+ # @option params [required, String] :filter_name
755
+ #
756
+ # @return [Types::GetFilterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
757
+ #
758
+ # * {Types::GetFilterResponse#action #action} => String
759
+ # * {Types::GetFilterResponse#description #description} => String
760
+ # * {Types::GetFilterResponse#finding_criteria #finding_criteria} => Types::FindingCriteria
761
+ # * {Types::GetFilterResponse#name #name} => String
762
+ # * {Types::GetFilterResponse#rank #rank} => Integer
763
+ #
764
+ # @example Request syntax with placeholder values
765
+ #
766
+ # resp = client.get_filter({
767
+ # detector_id: "__string", # required
768
+ # filter_name: "__string", # required
769
+ # })
770
+ #
771
+ # @example Response structure
772
+ #
773
+ # resp.action #=> String, one of "NOOP", "ARCHIVE"
774
+ # resp.description #=> String
775
+ # resp.finding_criteria.criterion #=> Hash
776
+ # resp.finding_criteria.criterion["__string"].eq #=> Array
777
+ # resp.finding_criteria.criterion["__string"].eq[0] #=> String
778
+ # resp.finding_criteria.criterion["__string"].gt #=> Integer
779
+ # resp.finding_criteria.criterion["__string"].gte #=> Integer
780
+ # resp.finding_criteria.criterion["__string"].lt #=> Integer
781
+ # resp.finding_criteria.criterion["__string"].lte #=> Integer
782
+ # resp.finding_criteria.criterion["__string"].neq #=> Array
783
+ # resp.finding_criteria.criterion["__string"].neq[0] #=> String
784
+ # resp.name #=> String
785
+ # resp.rank #=> Integer
786
+ #
787
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/GetFilter AWS API Documentation
788
+ #
789
+ # @overload get_filter(params = {})
790
+ # @param [Hash] params ({})
791
+ def get_filter(params = {}, options = {})
792
+ req = build_request(:get_filter, params)
793
+ req.send_request(options)
794
+ end
795
+
659
796
  # Describes Amazon GuardDuty findings specified by finding IDs.
660
797
  #
661
798
  # @option params [required, String] :detector_id
@@ -699,6 +836,7 @@ module Aws::GuardDuty
699
836
  # resp.findings[0].resource.instance_details.availability_zone #=> String
700
837
  # resp.findings[0].resource.instance_details.iam_instance_profile.arn #=> String
701
838
  # resp.findings[0].resource.instance_details.iam_instance_profile.id #=> String
839
+ # resp.findings[0].resource.instance_details.image_description #=> String
702
840
  # resp.findings[0].resource.instance_details.image_id #=> String
703
841
  # resp.findings[0].resource.instance_details.instance_id #=> String
704
842
  # resp.findings[0].resource.instance_details.instance_state #=> String
@@ -707,6 +845,7 @@ module Aws::GuardDuty
707
845
  # resp.findings[0].resource.instance_details.network_interfaces #=> Array
708
846
  # resp.findings[0].resource.instance_details.network_interfaces[0].ipv_6_addresses #=> Array
709
847
  # resp.findings[0].resource.instance_details.network_interfaces[0].ipv_6_addresses[0] #=> String
848
+ # resp.findings[0].resource.instance_details.network_interfaces[0].network_interface_id #=> String
710
849
  # resp.findings[0].resource.instance_details.network_interfaces[0].private_dns_name #=> String
711
850
  # resp.findings[0].resource.instance_details.network_interfaces[0].private_ip_address #=> String
712
851
  # resp.findings[0].resource.instance_details.network_interfaces[0].private_ip_addresses #=> Array
@@ -1025,7 +1164,9 @@ module Aws::GuardDuty
1025
1164
  # @option params [required, String] :detector_id
1026
1165
  #
1027
1166
  # @option params [Boolean] :disable_email_notification
1028
- # Indicates whether invite member email notification is disabled
1167
+ # A boolean value that specifies whether you want to disable email
1168
+ # notification to the accounts that you’re inviting to GuardDuty as
1169
+ # members.
1029
1170
  #
1030
1171
  # @option params [String] :message
1031
1172
  # The invitation message that you want to send to the accounts that
@@ -1095,6 +1236,44 @@ module Aws::GuardDuty
1095
1236
  req.send_request(options)
1096
1237
  end
1097
1238
 
1239
+ # Returns a paginated list of the current filters.
1240
+ #
1241
+ # @option params [required, String] :detector_id
1242
+ #
1243
+ # @option params [Integer] :max_results
1244
+ # You can use this parameter to indicate the maximum number of items
1245
+ # that you want in the response.
1246
+ #
1247
+ # @option params [String] :next_token
1248
+ #
1249
+ # @return [Types::ListFiltersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1250
+ #
1251
+ # * {Types::ListFiltersResponse#filter_names #filter_names} => Array<String>
1252
+ # * {Types::ListFiltersResponse#next_token #next_token} => String
1253
+ #
1254
+ # @example Request syntax with placeholder values
1255
+ #
1256
+ # resp = client.list_filters({
1257
+ # detector_id: "__string", # required
1258
+ # max_results: 1,
1259
+ # next_token: "__string",
1260
+ # })
1261
+ #
1262
+ # @example Response structure
1263
+ #
1264
+ # resp.filter_names #=> Array
1265
+ # resp.filter_names[0] #=> String
1266
+ # resp.next_token #=> String
1267
+ #
1268
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/ListFilters AWS API Documentation
1269
+ #
1270
+ # @overload list_filters(params = {})
1271
+ # @param [Hash] params ({})
1272
+ def list_filters(params = {}, options = {})
1273
+ req = build_request(:list_filters, params)
1274
+ req.send_request(options)
1275
+ end
1276
+
1098
1277
  # Lists Amazon GuardDuty findings for the specified detector ID.
1099
1278
  #
1100
1279
  # @option params [required, String] :detector_id
@@ -1452,6 +1631,67 @@ module Aws::GuardDuty
1452
1631
  req.send_request(options)
1453
1632
  end
1454
1633
 
1634
+ # Updates the filter specified by the filter name.
1635
+ #
1636
+ # @option params [String] :action
1637
+ # Specifies the action that is to be applied to the findings that match
1638
+ # the filter.
1639
+ #
1640
+ # @option params [String] :description
1641
+ # The description of the filter.
1642
+ #
1643
+ # @option params [required, String] :detector_id
1644
+ #
1645
+ # @option params [required, String] :filter_name
1646
+ #
1647
+ # @option params [Types::FindingCriteria] :finding_criteria
1648
+ # Represents the criteria to be used in the filter for querying
1649
+ # findings.
1650
+ #
1651
+ # @option params [Integer] :rank
1652
+ # Specifies the position of the filter in the list of current filters.
1653
+ # Also specifies the order in which this filter is applied to the
1654
+ # findings.
1655
+ #
1656
+ # @return [Types::UpdateFilterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1657
+ #
1658
+ # * {Types::UpdateFilterResponse#name #name} => String
1659
+ #
1660
+ # @example Request syntax with placeholder values
1661
+ #
1662
+ # resp = client.update_filter({
1663
+ # action: "NOOP", # accepts NOOP, ARCHIVE
1664
+ # description: "FilterDescription",
1665
+ # detector_id: "__string", # required
1666
+ # filter_name: "__string", # required
1667
+ # finding_criteria: {
1668
+ # criterion: {
1669
+ # "__string" => {
1670
+ # eq: ["__string"],
1671
+ # gt: 1,
1672
+ # gte: 1,
1673
+ # lt: 1,
1674
+ # lte: 1,
1675
+ # neq: ["__string"],
1676
+ # },
1677
+ # },
1678
+ # },
1679
+ # rank: 1,
1680
+ # })
1681
+ #
1682
+ # @example Response structure
1683
+ #
1684
+ # resp.name #=> String
1685
+ #
1686
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/UpdateFilter AWS API Documentation
1687
+ #
1688
+ # @overload update_filter(params = {})
1689
+ # @param [Hash] params ({})
1690
+ def update_filter(params = {}, options = {})
1691
+ req = build_request(:update_filter, params)
1692
+ req.send_request(options)
1693
+ end
1694
+
1455
1695
  # Marks specified Amazon GuardDuty findings as useful or not useful.
1456
1696
  #
1457
1697
  # @option params [String] :comments
@@ -1575,7 +1815,7 @@ module Aws::GuardDuty
1575
1815
  params: params,
1576
1816
  config: config)
1577
1817
  context[:gem_name] = 'aws-sdk-guardduty'
1578
- context[:gem_version] = '1.3.0'
1818
+ context[:gem_version] = '1.4.0'
1579
1819
  Seahorse::Client::Request.new(handlers, context)
1580
1820
  end
1581
1821
 
@@ -31,6 +31,8 @@ module Aws::GuardDuty
31
31
  Country = Shapes::StructureShape.new(name: 'Country')
32
32
  CreateDetectorRequest = Shapes::StructureShape.new(name: 'CreateDetectorRequest')
33
33
  CreateDetectorResponse = Shapes::StructureShape.new(name: 'CreateDetectorResponse')
34
+ CreateFilterRequest = Shapes::StructureShape.new(name: 'CreateFilterRequest')
35
+ CreateFilterResponse = Shapes::StructureShape.new(name: 'CreateFilterResponse')
34
36
  CreateIPSetRequest = Shapes::StructureShape.new(name: 'CreateIPSetRequest')
35
37
  CreateIPSetResponse = Shapes::StructureShape.new(name: 'CreateIPSetResponse')
36
38
  CreateMembersRequest = Shapes::StructureShape.new(name: 'CreateMembersRequest')
@@ -44,6 +46,8 @@ module Aws::GuardDuty
44
46
  DeclineInvitationsResponse = Shapes::StructureShape.new(name: 'DeclineInvitationsResponse')
45
47
  DeleteDetectorRequest = Shapes::StructureShape.new(name: 'DeleteDetectorRequest')
46
48
  DeleteDetectorResponse = Shapes::StructureShape.new(name: 'DeleteDetectorResponse')
49
+ DeleteFilterRequest = Shapes::StructureShape.new(name: 'DeleteFilterRequest')
50
+ DeleteFilterResponse = Shapes::StructureShape.new(name: 'DeleteFilterResponse')
47
51
  DeleteIPSetRequest = Shapes::StructureShape.new(name: 'DeleteIPSetRequest')
48
52
  DeleteIPSetResponse = Shapes::StructureShape.new(name: 'DeleteIPSetResponse')
49
53
  DeleteInvitationsRequest = Shapes::StructureShape.new(name: 'DeleteInvitationsRequest')
@@ -67,6 +71,11 @@ module Aws::GuardDuty
67
71
  Eq = Shapes::ListShape.new(name: 'Eq')
68
72
  ErrorResponse = Shapes::StructureShape.new(name: 'ErrorResponse')
69
73
  Feedback = Shapes::StringShape.new(name: 'Feedback')
74
+ FilterAction = Shapes::StringShape.new(name: 'FilterAction')
75
+ FilterDescription = Shapes::StringShape.new(name: 'FilterDescription')
76
+ FilterName = Shapes::StringShape.new(name: 'FilterName')
77
+ FilterNames = Shapes::ListShape.new(name: 'FilterNames')
78
+ FilterRank = Shapes::IntegerShape.new(name: 'FilterRank')
70
79
  Finding = Shapes::StructureShape.new(name: 'Finding')
71
80
  FindingCriteria = Shapes::StructureShape.new(name: 'FindingCriteria')
72
81
  FindingId = Shapes::StringShape.new(name: 'FindingId')
@@ -80,6 +89,8 @@ module Aws::GuardDuty
80
89
  GeoLocation = Shapes::StructureShape.new(name: 'GeoLocation')
81
90
  GetDetectorRequest = Shapes::StructureShape.new(name: 'GetDetectorRequest')
82
91
  GetDetectorResponse = Shapes::StructureShape.new(name: 'GetDetectorResponse')
92
+ GetFilterRequest = Shapes::StructureShape.new(name: 'GetFilterRequest')
93
+ GetFilterResponse = Shapes::StructureShape.new(name: 'GetFilterResponse')
83
94
  GetFindingsRequest = Shapes::StructureShape.new(name: 'GetFindingsRequest')
84
95
  GetFindingsResponse = Shapes::StructureShape.new(name: 'GetFindingsResponse')
85
96
  GetFindingsStatisticsRequest = Shapes::StructureShape.new(name: 'GetFindingsStatisticsRequest')
@@ -111,6 +122,8 @@ module Aws::GuardDuty
111
122
  Ipv6Addresses = Shapes::ListShape.new(name: 'Ipv6Addresses')
112
123
  ListDetectorsRequest = Shapes::StructureShape.new(name: 'ListDetectorsRequest')
113
124
  ListDetectorsResponse = Shapes::StructureShape.new(name: 'ListDetectorsResponse')
125
+ ListFiltersRequest = Shapes::StructureShape.new(name: 'ListFiltersRequest')
126
+ ListFiltersResponse = Shapes::StructureShape.new(name: 'ListFiltersResponse')
114
127
  ListFindingsRequest = Shapes::StructureShape.new(name: 'ListFindingsRequest')
115
128
  ListFindingsResponse = Shapes::StructureShape.new(name: 'ListFindingsResponse')
116
129
  ListIPSetsRequest = Shapes::StructureShape.new(name: 'ListIPSetsRequest')
@@ -133,6 +146,7 @@ module Aws::GuardDuty
133
146
  Neq = Shapes::ListShape.new(name: 'Neq')
134
147
  NetworkConnectionAction = Shapes::StructureShape.new(name: 'NetworkConnectionAction')
135
148
  NetworkInterface = Shapes::StructureShape.new(name: 'NetworkInterface')
149
+ NetworkInterfaceId = Shapes::StringShape.new(name: 'NetworkInterfaceId')
136
150
  NetworkInterfaces = Shapes::ListShape.new(name: 'NetworkInterfaces')
137
151
  NextToken = Shapes::StringShape.new(name: 'NextToken')
138
152
  OrderBy = Shapes::StringShape.new(name: 'OrderBy')
@@ -169,6 +183,8 @@ module Aws::GuardDuty
169
183
  UnprocessedAccounts = Shapes::ListShape.new(name: 'UnprocessedAccounts')
170
184
  UpdateDetectorRequest = Shapes::StructureShape.new(name: 'UpdateDetectorRequest')
171
185
  UpdateDetectorResponse = Shapes::StructureShape.new(name: 'UpdateDetectorResponse')
186
+ UpdateFilterRequest = Shapes::StructureShape.new(name: 'UpdateFilterRequest')
187
+ UpdateFilterResponse = Shapes::StructureShape.new(name: 'UpdateFilterResponse')
172
188
  UpdateFindingsFeedbackRequest = Shapes::StructureShape.new(name: 'UpdateFindingsFeedbackRequest')
173
189
  UpdateFindingsFeedbackResponse = Shapes::StructureShape.new(name: 'UpdateFindingsFeedbackResponse')
174
190
  UpdateIPSetRequest = Shapes::StructureShape.new(name: 'UpdateIPSetRequest')
@@ -184,6 +200,7 @@ module Aws::GuardDuty
184
200
  __mapOfCondition = Shapes::MapShape.new(name: '__mapOfCondition')
185
201
  __mapOfCountBySeverityFindingStatistic = Shapes::MapShape.new(name: '__mapOfCountBySeverityFindingStatistic')
186
202
  __string = Shapes::StringShape.new(name: '__string')
203
+ __stringMin0Max64 = Shapes::StringShape.new(name: '__stringMin0Max64')
187
204
  __timestamp = Shapes::TimestampShape.new(name: '__timestamp')
188
205
 
189
206
  AcceptInvitationRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "detectorId"))
@@ -248,6 +265,18 @@ module Aws::GuardDuty
248
265
  CreateDetectorResponse.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, location_name: "detectorId"))
249
266
  CreateDetectorResponse.struct_class = Types::CreateDetectorResponse
250
267
 
268
+ CreateFilterRequest.add_member(:action, Shapes::ShapeRef.new(shape: FilterAction, location_name: "action"))
269
+ CreateFilterRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: __stringMin0Max64, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
270
+ CreateFilterRequest.add_member(:description, Shapes::ShapeRef.new(shape: FilterDescription, location_name: "description"))
271
+ CreateFilterRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "detectorId"))
272
+ CreateFilterRequest.add_member(:finding_criteria, Shapes::ShapeRef.new(shape: FindingCriteria, location_name: "findingCriteria"))
273
+ CreateFilterRequest.add_member(:name, Shapes::ShapeRef.new(shape: FilterName, location_name: "name"))
274
+ CreateFilterRequest.add_member(:rank, Shapes::ShapeRef.new(shape: FilterRank, location_name: "rank"))
275
+ CreateFilterRequest.struct_class = Types::CreateFilterRequest
276
+
277
+ CreateFilterResponse.add_member(:name, Shapes::ShapeRef.new(shape: FilterName, location_name: "name"))
278
+ CreateFilterResponse.struct_class = Types::CreateFilterResponse
279
+
251
280
  CreateIPSetRequest.add_member(:activate, Shapes::ShapeRef.new(shape: Activate, location_name: "activate"))
252
281
  CreateIPSetRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "detectorId"))
253
282
  CreateIPSetRequest.add_member(:format, Shapes::ShapeRef.new(shape: IpSetFormat, location_name: "format"))
@@ -292,6 +321,12 @@ module Aws::GuardDuty
292
321
 
293
322
  DeleteDetectorResponse.struct_class = Types::DeleteDetectorResponse
294
323
 
324
+ DeleteFilterRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "detectorId"))
325
+ DeleteFilterRequest.add_member(:filter_name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "filterName"))
326
+ DeleteFilterRequest.struct_class = Types::DeleteFilterRequest
327
+
328
+ DeleteFilterResponse.struct_class = Types::DeleteFilterResponse
329
+
295
330
  DeleteIPSetRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "detectorId"))
296
331
  DeleteIPSetRequest.add_member(:ip_set_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "ipSetId"))
297
332
  DeleteIPSetRequest.struct_class = Types::DeleteIPSetRequest
@@ -342,6 +377,8 @@ module Aws::GuardDuty
342
377
  ErrorResponse.add_member(:type, Shapes::ShapeRef.new(shape: __string, location_name: "__type"))
343
378
  ErrorResponse.struct_class = Types::ErrorResponse
344
379
 
380
+ FilterNames.member = Shapes::ShapeRef.new(shape: FilterName)
381
+
345
382
  Finding.add_member(:account_id, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "accountId"))
346
383
  Finding.add_member(:arn, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "arn"))
347
384
  Finding.add_member(:confidence, Shapes::ShapeRef.new(shape: __double, location_name: "confidence"))
@@ -386,6 +423,17 @@ module Aws::GuardDuty
386
423
  GetDetectorResponse.add_member(:updated_at, Shapes::ShapeRef.new(shape: UpdatedAt, location_name: "updatedAt"))
387
424
  GetDetectorResponse.struct_class = Types::GetDetectorResponse
388
425
 
426
+ GetFilterRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "detectorId"))
427
+ GetFilterRequest.add_member(:filter_name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "filterName"))
428
+ GetFilterRequest.struct_class = Types::GetFilterRequest
429
+
430
+ GetFilterResponse.add_member(:action, Shapes::ShapeRef.new(shape: FilterAction, location_name: "action"))
431
+ GetFilterResponse.add_member(:description, Shapes::ShapeRef.new(shape: FilterDescription, location_name: "description"))
432
+ GetFilterResponse.add_member(:finding_criteria, Shapes::ShapeRef.new(shape: FindingCriteria, location_name: "findingCriteria"))
433
+ GetFilterResponse.add_member(:name, Shapes::ShapeRef.new(shape: FilterName, location_name: "name"))
434
+ GetFilterResponse.add_member(:rank, Shapes::ShapeRef.new(shape: FilterRank, location_name: "rank"))
435
+ GetFilterResponse.struct_class = Types::GetFilterResponse
436
+
389
437
  GetFindingsRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "detectorId"))
390
438
  GetFindingsRequest.add_member(:finding_ids, Shapes::ShapeRef.new(shape: FindingIds, location_name: "findingIds"))
391
439
  GetFindingsRequest.add_member(:sort_criteria, Shapes::ShapeRef.new(shape: SortCriteria, location_name: "sortCriteria"))
@@ -447,6 +495,7 @@ module Aws::GuardDuty
447
495
 
448
496
  InstanceDetails.add_member(:availability_zone, Shapes::ShapeRef.new(shape: __string, location_name: "availabilityZone"))
449
497
  InstanceDetails.add_member(:iam_instance_profile, Shapes::ShapeRef.new(shape: IamInstanceProfile, location_name: "iamInstanceProfile"))
498
+ InstanceDetails.add_member(:image_description, Shapes::ShapeRef.new(shape: __string, location_name: "imageDescription"))
450
499
  InstanceDetails.add_member(:image_id, Shapes::ShapeRef.new(shape: __string, location_name: "imageId"))
451
500
  InstanceDetails.add_member(:instance_id, Shapes::ShapeRef.new(shape: __string, location_name: "instanceId"))
452
501
  InstanceDetails.add_member(:instance_state, Shapes::ShapeRef.new(shape: __string, location_name: "instanceState"))
@@ -487,6 +536,15 @@ module Aws::GuardDuty
487
536
  ListDetectorsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
488
537
  ListDetectorsResponse.struct_class = Types::ListDetectorsResponse
489
538
 
539
+ ListFiltersRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "detectorId"))
540
+ ListFiltersRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
541
+ ListFiltersRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: __string, location: "querystring", location_name: "nextToken"))
542
+ ListFiltersRequest.struct_class = Types::ListFiltersRequest
543
+
544
+ ListFiltersResponse.add_member(:filter_names, Shapes::ShapeRef.new(shape: FilterNames, location_name: "filterNames"))
545
+ ListFiltersResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
546
+ ListFiltersResponse.struct_class = Types::ListFiltersResponse
547
+
490
548
  ListFindingsRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "detectorId"))
491
549
  ListFindingsRequest.add_member(:finding_criteria, Shapes::ShapeRef.new(shape: FindingCriteria, location_name: "findingCriteria"))
492
550
  ListFindingsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
@@ -566,6 +624,7 @@ module Aws::GuardDuty
566
624
  NetworkConnectionAction.struct_class = Types::NetworkConnectionAction
567
625
 
568
626
  NetworkInterface.add_member(:ipv_6_addresses, Shapes::ShapeRef.new(shape: Ipv6Addresses, location_name: "ipv6Addresses"))
627
+ NetworkInterface.add_member(:network_interface_id, Shapes::ShapeRef.new(shape: NetworkInterfaceId, location_name: "networkInterfaceId"))
569
628
  NetworkInterface.add_member(:private_dns_name, Shapes::ShapeRef.new(shape: PrivateDnsName, location_name: "privateDnsName"))
570
629
  NetworkInterface.add_member(:private_ip_address, Shapes::ShapeRef.new(shape: PrivateIpAddress, location_name: "privateIpAddress"))
571
630
  NetworkInterface.add_member(:private_ip_addresses, Shapes::ShapeRef.new(shape: PrivateIpAddresses, location_name: "privateIpAddresses"))
@@ -681,6 +740,17 @@ module Aws::GuardDuty
681
740
 
682
741
  UpdateDetectorResponse.struct_class = Types::UpdateDetectorResponse
683
742
 
743
+ UpdateFilterRequest.add_member(:action, Shapes::ShapeRef.new(shape: FilterAction, location_name: "action"))
744
+ UpdateFilterRequest.add_member(:description, Shapes::ShapeRef.new(shape: FilterDescription, location_name: "description"))
745
+ UpdateFilterRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "detectorId"))
746
+ UpdateFilterRequest.add_member(:filter_name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "filterName"))
747
+ UpdateFilterRequest.add_member(:finding_criteria, Shapes::ShapeRef.new(shape: FindingCriteria, location_name: "findingCriteria"))
748
+ UpdateFilterRequest.add_member(:rank, Shapes::ShapeRef.new(shape: FilterRank, location_name: "rank"))
749
+ UpdateFilterRequest.struct_class = Types::UpdateFilterRequest
750
+
751
+ UpdateFilterResponse.add_member(:name, Shapes::ShapeRef.new(shape: FilterName, location_name: "name"))
752
+ UpdateFilterResponse.struct_class = Types::UpdateFilterResponse
753
+
684
754
  UpdateFindingsFeedbackRequest.add_member(:comments, Shapes::ShapeRef.new(shape: Comments, location_name: "comments"))
685
755
  UpdateFindingsFeedbackRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "detectorId"))
686
756
  UpdateFindingsFeedbackRequest.add_member(:feedback, Shapes::ShapeRef.new(shape: Feedback, location_name: "feedback"))
@@ -760,6 +830,16 @@ module Aws::GuardDuty
760
830
  o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
761
831
  end)
762
832
 
833
+ api.add_operation(:create_filter, Seahorse::Model::Operation.new.tap do |o|
834
+ o.name = "CreateFilter"
835
+ o.http_method = "POST"
836
+ o.http_request_uri = "/detector/{detectorId}/filter"
837
+ o.input = Shapes::ShapeRef.new(shape: CreateFilterRequest)
838
+ o.output = Shapes::ShapeRef.new(shape: CreateFilterResponse)
839
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
840
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
841
+ end)
842
+
763
843
  api.add_operation(:create_ip_set, Seahorse::Model::Operation.new.tap do |o|
764
844
  o.name = "CreateIPSet"
765
845
  o.http_method = "POST"
@@ -820,6 +900,16 @@ module Aws::GuardDuty
820
900
  o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
821
901
  end)
822
902
 
903
+ api.add_operation(:delete_filter, Seahorse::Model::Operation.new.tap do |o|
904
+ o.name = "DeleteFilter"
905
+ o.http_method = "DELETE"
906
+ o.http_request_uri = "/detector/{detectorId}/filter/{filterName}"
907
+ o.input = Shapes::ShapeRef.new(shape: DeleteFilterRequest)
908
+ o.output = Shapes::ShapeRef.new(shape: DeleteFilterResponse)
909
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
910
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
911
+ end)
912
+
823
913
  api.add_operation(:delete_ip_set, Seahorse::Model::Operation.new.tap do |o|
824
914
  o.name = "DeleteIPSet"
825
915
  o.http_method = "DELETE"
@@ -890,6 +980,16 @@ module Aws::GuardDuty
890
980
  o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
891
981
  end)
892
982
 
983
+ api.add_operation(:get_filter, Seahorse::Model::Operation.new.tap do |o|
984
+ o.name = "GetFilter"
985
+ o.http_method = "GET"
986
+ o.http_request_uri = "/detector/{detectorId}/filter/{filterName}"
987
+ o.input = Shapes::ShapeRef.new(shape: GetFilterRequest)
988
+ o.output = Shapes::ShapeRef.new(shape: GetFilterResponse)
989
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
990
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
991
+ end)
992
+
893
993
  api.add_operation(:get_findings, Seahorse::Model::Operation.new.tap do |o|
894
994
  o.name = "GetFindings"
895
995
  o.http_method = "POST"
@@ -986,6 +1086,22 @@ module Aws::GuardDuty
986
1086
  )
987
1087
  end)
988
1088
 
1089
+ api.add_operation(:list_filters, Seahorse::Model::Operation.new.tap do |o|
1090
+ o.name = "ListFilters"
1091
+ o.http_method = "GET"
1092
+ o.http_request_uri = "/detector/{detectorId}/filter"
1093
+ o.input = Shapes::ShapeRef.new(shape: ListFiltersRequest)
1094
+ o.output = Shapes::ShapeRef.new(shape: ListFiltersResponse)
1095
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1096
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1097
+ o[:pager] = Aws::Pager.new(
1098
+ limit_key: "max_results",
1099
+ tokens: {
1100
+ "next_token" => "next_token"
1101
+ }
1102
+ )
1103
+ end)
1104
+
989
1105
  api.add_operation(:list_findings, Seahorse::Model::Operation.new.tap do |o|
990
1106
  o.name = "ListFindings"
991
1107
  o.http_method = "POST"
@@ -1106,6 +1222,16 @@ module Aws::GuardDuty
1106
1222
  o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1107
1223
  end)
1108
1224
 
1225
+ api.add_operation(:update_filter, Seahorse::Model::Operation.new.tap do |o|
1226
+ o.name = "UpdateFilter"
1227
+ o.http_method = "POST"
1228
+ o.http_request_uri = "/detector/{detectorId}/filter/{filterName}"
1229
+ o.input = Shapes::ShapeRef.new(shape: UpdateFilterRequest)
1230
+ o.output = Shapes::ShapeRef.new(shape: UpdateFilterResponse)
1231
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1232
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
1233
+ end)
1234
+
1109
1235
  api.add_operation(:update_findings_feedback, Seahorse::Model::Operation.new.tap do |o|
1110
1236
  o.name = "UpdateFindingsFeedback"
1111
1237
  o.http_method = "POST"
@@ -319,6 +319,90 @@ module Aws::GuardDuty
319
319
  include Aws::Structure
320
320
  end
321
321
 
322
+ # CreateFilter request object.
323
+ #
324
+ # @note When making an API call, you may pass CreateFilterRequest
325
+ # data as a hash:
326
+ #
327
+ # {
328
+ # action: "NOOP", # accepts NOOP, ARCHIVE
329
+ # client_token: "__stringMin0Max64",
330
+ # description: "FilterDescription",
331
+ # detector_id: "__string", # required
332
+ # finding_criteria: {
333
+ # criterion: {
334
+ # "__string" => {
335
+ # eq: ["__string"],
336
+ # gt: 1,
337
+ # gte: 1,
338
+ # lt: 1,
339
+ # lte: 1,
340
+ # neq: ["__string"],
341
+ # },
342
+ # },
343
+ # },
344
+ # name: "FilterName",
345
+ # rank: 1,
346
+ # }
347
+ #
348
+ # @!attribute [rw] action
349
+ # Specifies the action that is to be applied to the findings that
350
+ # match the filter.
351
+ # @return [String]
352
+ #
353
+ # @!attribute [rw] client_token
354
+ # The idempotency token for the create request.**A suitable default value is auto-generated.** You should normally
355
+ # not need to pass this option.
356
+ # @return [String]
357
+ #
358
+ # @!attribute [rw] description
359
+ # The description of the filter.
360
+ # @return [String]
361
+ #
362
+ # @!attribute [rw] detector_id
363
+ # @return [String]
364
+ #
365
+ # @!attribute [rw] finding_criteria
366
+ # Represents the criteria to be used in the filter for querying
367
+ # findings.
368
+ # @return [Types::FindingCriteria]
369
+ #
370
+ # @!attribute [rw] name
371
+ # The name of the filter.
372
+ # @return [String]
373
+ #
374
+ # @!attribute [rw] rank
375
+ # Specifies the position of the filter in the list of current filters.
376
+ # Also specifies the order in which this filter is applied to the
377
+ # findings.
378
+ # @return [Integer]
379
+ #
380
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/CreateFilterRequest AWS API Documentation
381
+ #
382
+ class CreateFilterRequest < Struct.new(
383
+ :action,
384
+ :client_token,
385
+ :description,
386
+ :detector_id,
387
+ :finding_criteria,
388
+ :name,
389
+ :rank)
390
+ include Aws::Structure
391
+ end
392
+
393
+ # CreateFilter response object.
394
+ #
395
+ # @!attribute [rw] name
396
+ # The name of the successfully created filter.
397
+ # @return [String]
398
+ #
399
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/CreateFilterResponse AWS API Documentation
400
+ #
401
+ class CreateFilterResponse < Struct.new(
402
+ :name)
403
+ include Aws::Structure
404
+ end
405
+
322
406
  # Create IP Set Request
323
407
  #
324
408
  # @note When making an API call, you may pass CreateIPSetRequest
@@ -570,6 +654,32 @@ module Aws::GuardDuty
570
654
  #
571
655
  class DeleteDetectorResponse < Aws::EmptyStructure; end
572
656
 
657
+ # @note When making an API call, you may pass DeleteFilterRequest
658
+ # data as a hash:
659
+ #
660
+ # {
661
+ # detector_id: "__string", # required
662
+ # filter_name: "__string", # required
663
+ # }
664
+ #
665
+ # @!attribute [rw] detector_id
666
+ # @return [String]
667
+ #
668
+ # @!attribute [rw] filter_name
669
+ # @return [String]
670
+ #
671
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/DeleteFilterRequest AWS API Documentation
672
+ #
673
+ class DeleteFilterRequest < Struct.new(
674
+ :detector_id,
675
+ :filter_name)
676
+ include Aws::Structure
677
+ end
678
+
679
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/DeleteFilterResponse AWS API Documentation
680
+ #
681
+ class DeleteFilterResponse < Aws::EmptyStructure; end
682
+
573
683
  # @note When making an API call, you may pass DeleteIPSetRequest
574
684
  # data as a hash:
575
685
  #
@@ -990,6 +1100,65 @@ module Aws::GuardDuty
990
1100
  include Aws::Structure
991
1101
  end
992
1102
 
1103
+ # @note When making an API call, you may pass GetFilterRequest
1104
+ # data as a hash:
1105
+ #
1106
+ # {
1107
+ # detector_id: "__string", # required
1108
+ # filter_name: "__string", # required
1109
+ # }
1110
+ #
1111
+ # @!attribute [rw] detector_id
1112
+ # @return [String]
1113
+ #
1114
+ # @!attribute [rw] filter_name
1115
+ # @return [String]
1116
+ #
1117
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/GetFilterRequest AWS API Documentation
1118
+ #
1119
+ class GetFilterRequest < Struct.new(
1120
+ :detector_id,
1121
+ :filter_name)
1122
+ include Aws::Structure
1123
+ end
1124
+
1125
+ # GetFilter response object.
1126
+ #
1127
+ # @!attribute [rw] action
1128
+ # Specifies the action that is to be applied to the findings that
1129
+ # match the filter.
1130
+ # @return [String]
1131
+ #
1132
+ # @!attribute [rw] description
1133
+ # The description of the filter.
1134
+ # @return [String]
1135
+ #
1136
+ # @!attribute [rw] finding_criteria
1137
+ # Represents the criteria to be used in the filter for querying
1138
+ # findings.
1139
+ # @return [Types::FindingCriteria]
1140
+ #
1141
+ # @!attribute [rw] name
1142
+ # The name of the filter.
1143
+ # @return [String]
1144
+ #
1145
+ # @!attribute [rw] rank
1146
+ # Specifies the position of the filter in the list of current filters.
1147
+ # Also specifies the order in which this filter is applied to the
1148
+ # findings.
1149
+ # @return [Integer]
1150
+ #
1151
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/GetFilterResponse AWS API Documentation
1152
+ #
1153
+ class GetFilterResponse < Struct.new(
1154
+ :action,
1155
+ :description,
1156
+ :finding_criteria,
1157
+ :name,
1158
+ :rank)
1159
+ include Aws::Structure
1160
+ end
1161
+
993
1162
  # Get Findings Request
994
1163
  #
995
1164
  # @note When making an API call, you may pass GetFindingsRequest
@@ -1321,6 +1490,10 @@ module Aws::GuardDuty
1321
1490
  # The profile information of the EC2 instance.
1322
1491
  # @return [Types::IamInstanceProfile]
1323
1492
  #
1493
+ # @!attribute [rw] image_description
1494
+ # The image description of the EC2 instance.
1495
+ # @return [String]
1496
+ #
1324
1497
  # @!attribute [rw] image_id
1325
1498
  # The image ID of the EC2 instance.
1326
1499
  # @return [String]
@@ -1362,6 +1535,7 @@ module Aws::GuardDuty
1362
1535
  class InstanceDetails < Struct.new(
1363
1536
  :availability_zone,
1364
1537
  :iam_instance_profile,
1538
+ :image_description,
1365
1539
  :image_id,
1366
1540
  :instance_id,
1367
1541
  :instance_state,
@@ -1426,7 +1600,9 @@ module Aws::GuardDuty
1426
1600
  # @return [String]
1427
1601
  #
1428
1602
  # @!attribute [rw] disable_email_notification
1429
- # Indicates whether invite member email notification is disabled
1603
+ # A boolean value that specifies whether you want to disable email
1604
+ # notification to the accounts that you’re inviting to GuardDuty as
1605
+ # members.
1430
1606
  # @return [Boolean]
1431
1607
  #
1432
1608
  # @!attribute [rw] message
@@ -1504,6 +1680,57 @@ module Aws::GuardDuty
1504
1680
  include Aws::Structure
1505
1681
  end
1506
1682
 
1683
+ # @note When making an API call, you may pass ListFiltersRequest
1684
+ # data as a hash:
1685
+ #
1686
+ # {
1687
+ # detector_id: "__string", # required
1688
+ # max_results: 1,
1689
+ # next_token: "__string",
1690
+ # }
1691
+ #
1692
+ # @!attribute [rw] detector_id
1693
+ # @return [String]
1694
+ #
1695
+ # @!attribute [rw] max_results
1696
+ # You can use this parameter to indicate the maximum number of items
1697
+ # that you want in the response.
1698
+ # @return [Integer]
1699
+ #
1700
+ # @!attribute [rw] next_token
1701
+ # @return [String]
1702
+ #
1703
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/ListFiltersRequest AWS API Documentation
1704
+ #
1705
+ class ListFiltersRequest < Struct.new(
1706
+ :detector_id,
1707
+ :max_results,
1708
+ :next_token)
1709
+ include Aws::Structure
1710
+ end
1711
+
1712
+ # ListFilters response object.
1713
+ #
1714
+ # @!attribute [rw] filter_names
1715
+ # A list of filter names
1716
+ # @return [Array<String>]
1717
+ #
1718
+ # @!attribute [rw] next_token
1719
+ # You can use this parameter when paginating results. Set the value of
1720
+ # this parameter to null on your first call to the list action. For
1721
+ # subsequent calls to the action fill nextToken in the request with
1722
+ # the value of NextToken from the previous response to continue
1723
+ # listing data.
1724
+ # @return [String]
1725
+ #
1726
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/ListFiltersResponse AWS API Documentation
1727
+ #
1728
+ class ListFiltersResponse < Struct.new(
1729
+ :filter_names,
1730
+ :next_token)
1731
+ include Aws::Structure
1732
+ end
1733
+
1507
1734
  # List Findings Request
1508
1735
  #
1509
1736
  # @note When making an API call, you may pass ListFindingsRequest
@@ -1929,6 +2156,10 @@ module Aws::GuardDuty
1929
2156
  # A list of EC2 instance IPv6 address information.
1930
2157
  # @return [Array<String>]
1931
2158
  #
2159
+ # @!attribute [rw] network_interface_id
2160
+ # The ID of the network interface
2161
+ # @return [String]
2162
+ #
1932
2163
  # @!attribute [rw] private_dns_name
1933
2164
  # Private DNS name of the EC2 instance.
1934
2165
  # @return [String]
@@ -1965,6 +2196,7 @@ module Aws::GuardDuty
1965
2196
  #
1966
2197
  class NetworkInterface < Struct.new(
1967
2198
  :ipv_6_addresses,
2199
+ :network_interface_id,
1968
2200
  :private_dns_name,
1969
2201
  :private_ip_address,
1970
2202
  :private_ip_addresses,
@@ -2431,6 +2663,82 @@ module Aws::GuardDuty
2431
2663
  #
2432
2664
  class UpdateDetectorResponse < Aws::EmptyStructure; end
2433
2665
 
2666
+ # UpdateFilter request object.
2667
+ #
2668
+ # @note When making an API call, you may pass UpdateFilterRequest
2669
+ # data as a hash:
2670
+ #
2671
+ # {
2672
+ # action: "NOOP", # accepts NOOP, ARCHIVE
2673
+ # description: "FilterDescription",
2674
+ # detector_id: "__string", # required
2675
+ # filter_name: "__string", # required
2676
+ # finding_criteria: {
2677
+ # criterion: {
2678
+ # "__string" => {
2679
+ # eq: ["__string"],
2680
+ # gt: 1,
2681
+ # gte: 1,
2682
+ # lt: 1,
2683
+ # lte: 1,
2684
+ # neq: ["__string"],
2685
+ # },
2686
+ # },
2687
+ # },
2688
+ # rank: 1,
2689
+ # }
2690
+ #
2691
+ # @!attribute [rw] action
2692
+ # Specifies the action that is to be applied to the findings that
2693
+ # match the filter.
2694
+ # @return [String]
2695
+ #
2696
+ # @!attribute [rw] description
2697
+ # The description of the filter.
2698
+ # @return [String]
2699
+ #
2700
+ # @!attribute [rw] detector_id
2701
+ # @return [String]
2702
+ #
2703
+ # @!attribute [rw] filter_name
2704
+ # @return [String]
2705
+ #
2706
+ # @!attribute [rw] finding_criteria
2707
+ # Represents the criteria to be used in the filter for querying
2708
+ # findings.
2709
+ # @return [Types::FindingCriteria]
2710
+ #
2711
+ # @!attribute [rw] rank
2712
+ # Specifies the position of the filter in the list of current filters.
2713
+ # Also specifies the order in which this filter is applied to the
2714
+ # findings.
2715
+ # @return [Integer]
2716
+ #
2717
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/UpdateFilterRequest AWS API Documentation
2718
+ #
2719
+ class UpdateFilterRequest < Struct.new(
2720
+ :action,
2721
+ :description,
2722
+ :detector_id,
2723
+ :filter_name,
2724
+ :finding_criteria,
2725
+ :rank)
2726
+ include Aws::Structure
2727
+ end
2728
+
2729
+ # UpdateFilter response object.
2730
+ #
2731
+ # @!attribute [rw] name
2732
+ # The name of the filter.
2733
+ # @return [String]
2734
+ #
2735
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/UpdateFilterResponse AWS API Documentation
2736
+ #
2737
+ class UpdateFilterResponse < Struct.new(
2738
+ :name)
2739
+ include Aws::Structure
2740
+ end
2741
+
2434
2742
  # Update findings feedback body
2435
2743
  #
2436
2744
  # @note When making an API call, you may pass UpdateFindingsFeedbackRequest
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.3.0
4
+ version: 1.4.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: 2018-04-30 00:00:00.000000000 Z
11
+ date: 2018-05-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core