aws-sdk-guardduty 1.3.0 → 1.4.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
  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