aws-sdk-guardduty 1.67.0 → 1.69.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: 7b41a9b2a921a007298a97ebab767ea77f33b1f8a64eba2e1a3ec7ef551b27a9
4
- data.tar.gz: 30856538aa33c440691add29c523fe45528cedaeb7baba8443ce751ebeb738a3
3
+ metadata.gz: d4cb3b0b40af8d3c0281d0ef709d2de4b79fdcbc40222392b77de735d0dc9be7
4
+ data.tar.gz: e150d644e72afeb5ddd569885094c01faf5013a9ada8c829709be759c87b6dd7
5
5
  SHA512:
6
- metadata.gz: c2d8016a45d7521d7e155b38a70982daebec8faf94bc61de8fe4f201000e875ca6b8355b6ece7e6ea9bbb9e307e9ac47e650cc29ef119067943859f53acf7a27
7
- data.tar.gz: 820ab0c3bafd31270bf6fab637465942aa9740f79b12ea37437b1e52ca6463e5f7a6656e16b8224b6e152055f19bf3c0e623707a69c6ecdbbe88c7a54d4fe230
6
+ metadata.gz: 01eaaeb32c936ecc847ce87d4e601d4f54b173d077c1599c5a658038f9e9e55a4583c09a622022569c897fd80c51544e14c0026816ff558119069b0c8be16d07
7
+ data.tar.gz: '018ee2c776fe65ed41a3eecf6e5e485e7709eb6d49e363883dc918d2bb48a8f24b56ebde0dbc91989812576507a08d21aef7c412a2ff7a800455668cc2741799'
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.69.0 (2023-04-27)
5
+ ------------------
6
+
7
+ * Feature - Added API support to initiate on-demand malware scan on specific resources.
8
+
9
+ 1.68.0 (2023-04-20)
10
+ ------------------
11
+
12
+ * Feature - This release adds support for the new Lambda Protection feature.
13
+
4
14
  1.67.0 (2023-03-30)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.67.0
1
+ 1.69.0
@@ -543,7 +543,7 @@ module Aws::GuardDuty
543
543
  # },
544
544
  # features: [
545
545
  # {
546
- # name: "S3_DATA_EVENTS", # accepts S3_DATA_EVENTS, EKS_AUDIT_LOGS, EBS_MALWARE_PROTECTION, RDS_LOGIN_EVENTS, EKS_RUNTIME_MONITORING
546
+ # name: "S3_DATA_EVENTS", # accepts S3_DATA_EVENTS, EKS_AUDIT_LOGS, EBS_MALWARE_PROTECTION, RDS_LOGIN_EVENTS, EKS_RUNTIME_MONITORING, LAMBDA_NETWORK_LOGS
547
547
  # status: "ENABLED", # accepts ENABLED, DISABLED
548
548
  # additional_configuration: [
549
549
  # {
@@ -1342,7 +1342,7 @@ module Aws::GuardDuty
1342
1342
  # filter_criteria: {
1343
1343
  # filter_criterion: [
1344
1344
  # {
1345
- # criterion_key: "EC2_INSTANCE_ARN", # accepts EC2_INSTANCE_ARN, SCAN_ID, ACCOUNT_ID, GUARDDUTY_FINDING_ID, SCAN_START_TIME, SCAN_STATUS
1345
+ # criterion_key: "EC2_INSTANCE_ARN", # accepts EC2_INSTANCE_ARN, SCAN_ID, ACCOUNT_ID, GUARDDUTY_FINDING_ID, SCAN_START_TIME, SCAN_STATUS, SCAN_TYPE
1346
1346
  # filter_condition: {
1347
1347
  # equals_value: "NonEmptyString",
1348
1348
  # greater_than: 1,
@@ -1363,7 +1363,7 @@ module Aws::GuardDuty
1363
1363
  # resp.scans[0].detector_id #=> String
1364
1364
  # resp.scans[0].admin_detector_id #=> String
1365
1365
  # resp.scans[0].scan_id #=> String
1366
- # resp.scans[0].scan_status #=> String, one of "RUNNING", "COMPLETED", "FAILED"
1366
+ # resp.scans[0].scan_status #=> String, one of "RUNNING", "COMPLETED", "FAILED", "SKIPPED"
1367
1367
  # resp.scans[0].failure_reason #=> String
1368
1368
  # resp.scans[0].scan_start_time #=> Time
1369
1369
  # resp.scans[0].scan_end_time #=> Time
@@ -1382,6 +1382,7 @@ module Aws::GuardDuty
1382
1382
  # resp.scans[0].attached_volumes[0].encryption_type #=> String
1383
1383
  # resp.scans[0].attached_volumes[0].snapshot_arn #=> String
1384
1384
  # resp.scans[0].attached_volumes[0].kms_key_arn #=> String
1385
+ # resp.scans[0].scan_type #=> String, one of "GUARDDUTY_INITIATED", "ON_DEMAND"
1385
1386
  # resp.next_token #=> String
1386
1387
  #
1387
1388
  # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/DescribeMalwareScans AWS API Documentation
@@ -1447,7 +1448,7 @@ module Aws::GuardDuty
1447
1448
  # resp.data_sources.kubernetes.audit_logs.auto_enable #=> Boolean
1448
1449
  # resp.data_sources.malware_protection.scan_ec2_instance_with_findings.ebs_volumes.auto_enable #=> Boolean
1449
1450
  # resp.features #=> Array
1450
- # resp.features[0].name #=> String, one of "S3_DATA_EVENTS", "EKS_AUDIT_LOGS", "EBS_MALWARE_PROTECTION", "RDS_LOGIN_EVENTS", "EKS_RUNTIME_MONITORING"
1451
+ # resp.features[0].name #=> String, one of "S3_DATA_EVENTS", "EKS_AUDIT_LOGS", "EBS_MALWARE_PROTECTION", "RDS_LOGIN_EVENTS", "EKS_RUNTIME_MONITORING", "LAMBDA_NETWORK_LOGS"
1451
1452
  # resp.features[0].auto_enable #=> String, one of "NEW", "NONE"
1452
1453
  # resp.features[0].additional_configuration #=> Array
1453
1454
  # resp.features[0].additional_configuration[0].name #=> String, one of "EKS_ADDON_MANAGEMENT"
@@ -1782,7 +1783,7 @@ module Aws::GuardDuty
1782
1783
  # resp.tags #=> Hash
1783
1784
  # resp.tags["TagKey"] #=> String
1784
1785
  # resp.features #=> Array
1785
- # resp.features[0].name #=> String, one of "FLOW_LOGS", "CLOUD_TRAIL", "DNS_LOGS", "S3_DATA_EVENTS", "EKS_AUDIT_LOGS", "EBS_MALWARE_PROTECTION", "RDS_LOGIN_EVENTS", "EKS_RUNTIME_MONITORING"
1786
+ # resp.features[0].name #=> String, one of "FLOW_LOGS", "CLOUD_TRAIL", "DNS_LOGS", "S3_DATA_EVENTS", "EKS_AUDIT_LOGS", "EBS_MALWARE_PROTECTION", "RDS_LOGIN_EVENTS", "EKS_RUNTIME_MONITORING", "LAMBDA_NETWORK_LOGS"
1786
1787
  # resp.features[0].status #=> String, one of "ENABLED", "DISABLED"
1787
1788
  # resp.features[0].updated_at #=> Time
1788
1789
  # resp.features[0].additional_configuration #=> Array
@@ -2058,6 +2059,22 @@ module Aws::GuardDuty
2058
2059
  # resp.findings[0].resource.rds_db_user_details.database #=> String
2059
2060
  # resp.findings[0].resource.rds_db_user_details.ssl #=> String
2060
2061
  # resp.findings[0].resource.rds_db_user_details.auth_method #=> String
2062
+ # resp.findings[0].resource.lambda_details.function_arn #=> String
2063
+ # resp.findings[0].resource.lambda_details.function_name #=> String
2064
+ # resp.findings[0].resource.lambda_details.description #=> String
2065
+ # resp.findings[0].resource.lambda_details.last_modified_at #=> Time
2066
+ # resp.findings[0].resource.lambda_details.revision_id #=> String
2067
+ # resp.findings[0].resource.lambda_details.function_version #=> String
2068
+ # resp.findings[0].resource.lambda_details.role #=> String
2069
+ # resp.findings[0].resource.lambda_details.vpc_config.subnet_ids #=> Array
2070
+ # resp.findings[0].resource.lambda_details.vpc_config.subnet_ids[0] #=> String
2071
+ # resp.findings[0].resource.lambda_details.vpc_config.vpc_id #=> String
2072
+ # resp.findings[0].resource.lambda_details.vpc_config.security_groups #=> Array
2073
+ # resp.findings[0].resource.lambda_details.vpc_config.security_groups[0].group_id #=> String
2074
+ # resp.findings[0].resource.lambda_details.vpc_config.security_groups[0].group_name #=> String
2075
+ # resp.findings[0].resource.lambda_details.tags #=> Array
2076
+ # resp.findings[0].resource.lambda_details.tags[0].key #=> String
2077
+ # resp.findings[0].resource.lambda_details.tags[0].value #=> String
2061
2078
  # resp.findings[0].schema_version #=> String
2062
2079
  # resp.findings[0].service.action.action_type #=> String
2063
2080
  # resp.findings[0].service.action.aws_api_call_action.api #=> String
@@ -2188,6 +2205,7 @@ module Aws::GuardDuty
2188
2205
  # resp.findings[0].service.ebs_volume_scan_details.scan_detections.threat_detected_by_name.threat_names[0].file_paths[0].volume_arn #=> String
2189
2206
  # resp.findings[0].service.ebs_volume_scan_details.scan_detections.threat_detected_by_name.threat_names[0].file_paths[0].hash #=> String
2190
2207
  # resp.findings[0].service.ebs_volume_scan_details.scan_detections.threat_detected_by_name.threat_names[0].file_paths[0].file_name #=> String
2208
+ # resp.findings[0].service.ebs_volume_scan_details.scan_type #=> String, one of "GUARDDUTY_INITIATED", "ON_DEMAND"
2191
2209
  # resp.findings[0].service.runtime_details.process.name #=> String
2192
2210
  # resp.findings[0].service.runtime_details.process.executable_path #=> String
2193
2211
  # resp.findings[0].service.runtime_details.process.executable_sha_256 #=> String
@@ -2528,7 +2546,7 @@ module Aws::GuardDuty
2528
2546
  # resp.member_data_source_configurations[0].data_sources.malware_protection.scan_ec2_instance_with_findings.ebs_volumes.reason #=> String
2529
2547
  # resp.member_data_source_configurations[0].data_sources.malware_protection.service_role #=> String
2530
2548
  # resp.member_data_source_configurations[0].features #=> Array
2531
- # resp.member_data_source_configurations[0].features[0].name #=> String, one of "S3_DATA_EVENTS", "EKS_AUDIT_LOGS", "EBS_MALWARE_PROTECTION", "RDS_LOGIN_EVENTS", "EKS_RUNTIME_MONITORING"
2549
+ # resp.member_data_source_configurations[0].features[0].name #=> String, one of "S3_DATA_EVENTS", "EKS_AUDIT_LOGS", "EBS_MALWARE_PROTECTION", "RDS_LOGIN_EVENTS", "EKS_RUNTIME_MONITORING", "LAMBDA_NETWORK_LOGS"
2532
2550
  # resp.member_data_source_configurations[0].features[0].status #=> String, one of "ENABLED", "DISABLED"
2533
2551
  # resp.member_data_source_configurations[0].features[0].updated_at #=> Time
2534
2552
  # resp.member_data_source_configurations[0].features[0].additional_configuration #=> Array
@@ -2627,7 +2645,7 @@ module Aws::GuardDuty
2627
2645
  # resp.accounts[0].data_sources.kubernetes.audit_logs.free_trial_days_remaining #=> Integer
2628
2646
  # resp.accounts[0].data_sources.malware_protection.scan_ec2_instance_with_findings.free_trial_days_remaining #=> Integer
2629
2647
  # resp.accounts[0].features #=> Array
2630
- # resp.accounts[0].features[0].name #=> String, one of "FLOW_LOGS", "CLOUD_TRAIL", "DNS_LOGS", "S3_DATA_EVENTS", "EKS_AUDIT_LOGS", "EBS_MALWARE_PROTECTION", "RDS_LOGIN_EVENTS", "EKS_RUNTIME_MONITORING"
2648
+ # resp.accounts[0].features[0].name #=> String, one of "FLOW_LOGS", "CLOUD_TRAIL", "DNS_LOGS", "S3_DATA_EVENTS", "EKS_AUDIT_LOGS", "EBS_MALWARE_PROTECTION", "RDS_LOGIN_EVENTS", "EKS_RUNTIME_MONITORING", "LAMBDA_NETWORK_LOGS"
2631
2649
  # resp.accounts[0].features[0].free_trial_days_remaining #=> Integer
2632
2650
  # resp.unprocessed_accounts #=> Array
2633
2651
  # resp.unprocessed_accounts[0].account_id #=> String
@@ -3517,6 +3535,40 @@ module Aws::GuardDuty
3517
3535
  req.send_request(options)
3518
3536
  end
3519
3537
 
3538
+ # Initiates the malware scan. Invoking this API will automatically
3539
+ # create the [Service-linked role ][1] in the corresponding account.
3540
+ #
3541
+ #
3542
+ #
3543
+ # [1]: https://docs.aws.amazon.com/guardduty/latest/ug/slr-permissions-malware-protection.html
3544
+ #
3545
+ # @option params [required, String] :resource_arn
3546
+ # Amazon Resource Name (ARN) of the resource for which you invoked the
3547
+ # API.
3548
+ #
3549
+ # @return [Types::StartMalwareScanResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3550
+ #
3551
+ # * {Types::StartMalwareScanResponse#scan_id #scan_id} => String
3552
+ #
3553
+ # @example Request syntax with placeholder values
3554
+ #
3555
+ # resp = client.start_malware_scan({
3556
+ # resource_arn: "ResourceArn", # required
3557
+ # })
3558
+ #
3559
+ # @example Response structure
3560
+ #
3561
+ # resp.scan_id #=> String
3562
+ #
3563
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/StartMalwareScan AWS API Documentation
3564
+ #
3565
+ # @overload start_malware_scan(params = {})
3566
+ # @param [Hash] params ({})
3567
+ def start_malware_scan(params = {}, options = {})
3568
+ req = build_request(:start_malware_scan, params)
3569
+ req.send_request(options)
3570
+ end
3571
+
3520
3572
  # Turns on GuardDuty monitoring of the specified member accounts. Use
3521
3573
  # this operation to restart monitoring of accounts that you stopped
3522
3574
  # monitoring with the [StopMonitoringMembers][1] operation.
@@ -3742,7 +3794,7 @@ module Aws::GuardDuty
3742
3794
  # },
3743
3795
  # features: [
3744
3796
  # {
3745
- # name: "S3_DATA_EVENTS", # accepts S3_DATA_EVENTS, EKS_AUDIT_LOGS, EBS_MALWARE_PROTECTION, RDS_LOGIN_EVENTS, EKS_RUNTIME_MONITORING
3797
+ # name: "S3_DATA_EVENTS", # accepts S3_DATA_EVENTS, EKS_AUDIT_LOGS, EBS_MALWARE_PROTECTION, RDS_LOGIN_EVENTS, EKS_RUNTIME_MONITORING, LAMBDA_NETWORK_LOGS
3746
3798
  # status: "ENABLED", # accepts ENABLED, DISABLED
3747
3799
  # additional_configuration: [
3748
3800
  # {
@@ -4024,7 +4076,7 @@ module Aws::GuardDuty
4024
4076
  # },
4025
4077
  # features: [
4026
4078
  # {
4027
- # name: "S3_DATA_EVENTS", # accepts S3_DATA_EVENTS, EKS_AUDIT_LOGS, EBS_MALWARE_PROTECTION, RDS_LOGIN_EVENTS, EKS_RUNTIME_MONITORING
4079
+ # name: "S3_DATA_EVENTS", # accepts S3_DATA_EVENTS, EKS_AUDIT_LOGS, EBS_MALWARE_PROTECTION, RDS_LOGIN_EVENTS, EKS_RUNTIME_MONITORING, LAMBDA_NETWORK_LOGS
4028
4080
  # status: "ENABLED", # accepts ENABLED, DISABLED
4029
4081
  # additional_configuration: [
4030
4082
  # {
@@ -4122,7 +4174,7 @@ module Aws::GuardDuty
4122
4174
  # },
4123
4175
  # features: [
4124
4176
  # {
4125
- # name: "S3_DATA_EVENTS", # accepts S3_DATA_EVENTS, EKS_AUDIT_LOGS, EBS_MALWARE_PROTECTION, RDS_LOGIN_EVENTS, EKS_RUNTIME_MONITORING
4177
+ # name: "S3_DATA_EVENTS", # accepts S3_DATA_EVENTS, EKS_AUDIT_LOGS, EBS_MALWARE_PROTECTION, RDS_LOGIN_EVENTS, EKS_RUNTIME_MONITORING, LAMBDA_NETWORK_LOGS
4126
4178
  # auto_enable: "NEW", # accepts NEW, NONE
4127
4179
  # additional_configuration: [
4128
4180
  # {
@@ -4235,7 +4287,7 @@ module Aws::GuardDuty
4235
4287
  params: params,
4236
4288
  config: config)
4237
4289
  context[:gem_name] = 'aws-sdk-guardduty'
4238
- context[:gem_version] = '1.67.0'
4290
+ context[:gem_version] = '1.69.0'
4239
4291
  Seahorse::Client::Request.new(handlers, context)
4240
4292
  end
4241
4293
 
@@ -46,6 +46,7 @@ module Aws::GuardDuty
46
46
  ClientToken = Shapes::StringShape.new(name: 'ClientToken')
47
47
  CloudTrailConfigurationResult = Shapes::StructureShape.new(name: 'CloudTrailConfigurationResult')
48
48
  Condition = Shapes::StructureShape.new(name: 'Condition')
49
+ ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
49
50
  Container = Shapes::StructureShape.new(name: 'Container')
50
51
  Containers = Shapes::ListShape.new(name: 'Containers')
51
52
  CountByCoverageStatus = Shapes::MapShape.new(name: 'CountByCoverageStatus')
@@ -242,6 +243,7 @@ module Aws::GuardDuty
242
243
  KubernetesDetails = Shapes::StructureShape.new(name: 'KubernetesDetails')
243
244
  KubernetesUserDetails = Shapes::StructureShape.new(name: 'KubernetesUserDetails')
244
245
  KubernetesWorkloadDetails = Shapes::StructureShape.new(name: 'KubernetesWorkloadDetails')
246
+ LambdaDetails = Shapes::StructureShape.new(name: 'LambdaDetails')
245
247
  Lineage = Shapes::ListShape.new(name: 'Lineage')
246
248
  LineageObject = Shapes::StructureShape.new(name: 'LineageObject')
247
249
  ListCoverageRequest = Shapes::StructureShape.new(name: 'ListCoverageRequest')
@@ -346,6 +348,7 @@ module Aws::GuardDuty
346
348
  RemoteIpDetails = Shapes::StructureShape.new(name: 'RemoteIpDetails')
347
349
  RemotePortDetails = Shapes::StructureShape.new(name: 'RemotePortDetails')
348
350
  Resource = Shapes::StructureShape.new(name: 'Resource')
351
+ ResourceArn = Shapes::StringShape.new(name: 'ResourceArn')
349
352
  ResourceDetails = Shapes::StructureShape.new(name: 'ResourceDetails')
350
353
  ResourceList = Shapes::ListShape.new(name: 'ResourceList')
351
354
  ResourceType = Shapes::StringShape.new(name: 'ResourceType')
@@ -370,6 +373,7 @@ module Aws::GuardDuty
370
373
  ScanStatus = Shapes::StringShape.new(name: 'ScanStatus')
371
374
  ScanThreatName = Shapes::StructureShape.new(name: 'ScanThreatName')
372
375
  ScanThreatNames = Shapes::ListShape.new(name: 'ScanThreatNames')
376
+ ScanType = Shapes::StringShape.new(name: 'ScanType')
373
377
  ScannedItemCount = Shapes::StructureShape.new(name: 'ScannedItemCount')
374
378
  Scans = Shapes::ListShape.new(name: 'Scans')
375
379
  SecurityContext = Shapes::StructureShape.new(name: 'SecurityContext')
@@ -380,11 +384,14 @@ module Aws::GuardDuty
380
384
  SortCriteria = Shapes::StructureShape.new(name: 'SortCriteria')
381
385
  SourceIps = Shapes::ListShape.new(name: 'SourceIps')
382
386
  Sources = Shapes::ListShape.new(name: 'Sources')
387
+ StartMalwareScanRequest = Shapes::StructureShape.new(name: 'StartMalwareScanRequest')
388
+ StartMalwareScanResponse = Shapes::StructureShape.new(name: 'StartMalwareScanResponse')
383
389
  StartMonitoringMembersRequest = Shapes::StructureShape.new(name: 'StartMonitoringMembersRequest')
384
390
  StartMonitoringMembersResponse = Shapes::StructureShape.new(name: 'StartMonitoringMembersResponse')
385
391
  StopMonitoringMembersRequest = Shapes::StructureShape.new(name: 'StopMonitoringMembersRequest')
386
392
  StopMonitoringMembersResponse = Shapes::StructureShape.new(name: 'StopMonitoringMembersResponse')
387
393
  String = Shapes::StringShape.new(name: 'String')
394
+ SubnetIds = Shapes::ListShape.new(name: 'SubnetIds')
388
395
  Tag = Shapes::StructureShape.new(name: 'Tag')
389
396
  TagKey = Shapes::StringShape.new(name: 'TagKey')
390
397
  TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
@@ -448,6 +455,7 @@ module Aws::GuardDuty
448
455
  VolumeMount = Shapes::StructureShape.new(name: 'VolumeMount')
449
456
  VolumeMounts = Shapes::ListShape.new(name: 'VolumeMounts')
450
457
  Volumes = Shapes::ListShape.new(name: 'Volumes')
458
+ VpcConfig = Shapes::StructureShape.new(name: 'VpcConfig')
451
459
 
452
460
  AcceptAdministratorInvitationRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
453
461
  AcceptAdministratorInvitationRequest.add_member(:administrator_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "administratorId"))
@@ -575,6 +583,10 @@ module Aws::GuardDuty
575
583
  Condition.add_member(:less_than_or_equal, Shapes::ShapeRef.new(shape: Long, location_name: "lessThanOrEqual"))
576
584
  Condition.struct_class = Types::Condition
577
585
 
586
+ ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
587
+ ConflictException.add_member(:type, Shapes::ShapeRef.new(shape: String, location_name: "__type"))
588
+ ConflictException.struct_class = Types::ConflictException
589
+
578
590
  Container.add_member(:container_runtime, Shapes::ShapeRef.new(shape: String, location_name: "containerRuntime"))
579
591
  Container.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "id"))
580
592
  Container.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "name"))
@@ -914,6 +926,7 @@ module Aws::GuardDuty
914
926
  EbsVolumeScanDetails.add_member(:trigger_finding_id, Shapes::ShapeRef.new(shape: String, location_name: "triggerFindingId"))
915
927
  EbsVolumeScanDetails.add_member(:sources, Shapes::ShapeRef.new(shape: Sources, location_name: "sources"))
916
928
  EbsVolumeScanDetails.add_member(:scan_detections, Shapes::ShapeRef.new(shape: ScanDetections, location_name: "scanDetections"))
929
+ EbsVolumeScanDetails.add_member(:scan_type, Shapes::ShapeRef.new(shape: ScanType, location_name: "scanType"))
917
930
  EbsVolumeScanDetails.struct_class = Types::EbsVolumeScanDetails
918
931
 
919
932
  EbsVolumesResult.add_member(:status, Shapes::ShapeRef.new(shape: DataSourceStatus, location_name: "status"))
@@ -1253,6 +1266,17 @@ module Aws::GuardDuty
1253
1266
  KubernetesWorkloadDetails.add_member(:volumes, Shapes::ShapeRef.new(shape: Volumes, location_name: "volumes"))
1254
1267
  KubernetesWorkloadDetails.struct_class = Types::KubernetesWorkloadDetails
1255
1268
 
1269
+ LambdaDetails.add_member(:function_arn, Shapes::ShapeRef.new(shape: String, location_name: "functionArn"))
1270
+ LambdaDetails.add_member(:function_name, Shapes::ShapeRef.new(shape: String, location_name: "functionName"))
1271
+ LambdaDetails.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "description"))
1272
+ LambdaDetails.add_member(:last_modified_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastModifiedAt"))
1273
+ LambdaDetails.add_member(:revision_id, Shapes::ShapeRef.new(shape: String, location_name: "revisionId"))
1274
+ LambdaDetails.add_member(:function_version, Shapes::ShapeRef.new(shape: String, location_name: "functionVersion"))
1275
+ LambdaDetails.add_member(:role, Shapes::ShapeRef.new(shape: String, location_name: "role"))
1276
+ LambdaDetails.add_member(:vpc_config, Shapes::ShapeRef.new(shape: VpcConfig, location_name: "vpcConfig"))
1277
+ LambdaDetails.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
1278
+ LambdaDetails.struct_class = Types::LambdaDetails
1279
+
1256
1280
  Lineage.member = Shapes::ShapeRef.new(shape: LineageObject)
1257
1281
 
1258
1282
  LineageObject.add_member(:start_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "startTime"))
@@ -1645,6 +1669,7 @@ module Aws::GuardDuty
1645
1669
  Resource.add_member(:container_details, Shapes::ShapeRef.new(shape: Container, location_name: "containerDetails"))
1646
1670
  Resource.add_member(:rds_db_instance_details, Shapes::ShapeRef.new(shape: RdsDbInstanceDetails, location_name: "rdsDbInstanceDetails"))
1647
1671
  Resource.add_member(:rds_db_user_details, Shapes::ShapeRef.new(shape: RdsDbUserDetails, location_name: "rdsDbUserDetails"))
1672
+ Resource.add_member(:lambda_details, Shapes::ShapeRef.new(shape: LambdaDetails, location_name: "lambdaDetails"))
1648
1673
  Resource.struct_class = Types::Resource
1649
1674
 
1650
1675
  ResourceDetails.add_member(:instance_arn, Shapes::ShapeRef.new(shape: InstanceArn, location_name: "instanceArn"))
@@ -1710,6 +1735,7 @@ module Aws::GuardDuty
1710
1735
  Scan.add_member(:total_bytes, Shapes::ShapeRef.new(shape: PositiveLong, location_name: "totalBytes"))
1711
1736
  Scan.add_member(:file_count, Shapes::ShapeRef.new(shape: PositiveLong, location_name: "fileCount"))
1712
1737
  Scan.add_member(:attached_volumes, Shapes::ShapeRef.new(shape: VolumeDetails, location_name: "attachedVolumes"))
1738
+ Scan.add_member(:scan_type, Shapes::ShapeRef.new(shape: ScanType, location_name: "scanType"))
1713
1739
  Scan.struct_class = Types::Scan
1714
1740
 
1715
1741
  ScanCondition.add_member(:map_equals, Shapes::ShapeRef.new(shape: MapEquals, required: true, location_name: "mapEquals"))
@@ -1799,6 +1825,12 @@ module Aws::GuardDuty
1799
1825
 
1800
1826
  Sources.member = Shapes::ShapeRef.new(shape: String)
1801
1827
 
1828
+ StartMalwareScanRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "resourceArn"))
1829
+ StartMalwareScanRequest.struct_class = Types::StartMalwareScanRequest
1830
+
1831
+ StartMalwareScanResponse.add_member(:scan_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "scanId"))
1832
+ StartMalwareScanResponse.struct_class = Types::StartMalwareScanResponse
1833
+
1802
1834
  StartMonitoringMembersRequest.add_member(:detector_id, Shapes::ShapeRef.new(shape: DetectorId, required: true, location: "uri", location_name: "detectorId"))
1803
1835
  StartMonitoringMembersRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, required: true, location_name: "accountIds"))
1804
1836
  StartMonitoringMembersRequest.struct_class = Types::StartMonitoringMembersRequest
@@ -1813,6 +1845,8 @@ module Aws::GuardDuty
1813
1845
  StopMonitoringMembersResponse.add_member(:unprocessed_accounts, Shapes::ShapeRef.new(shape: UnprocessedAccounts, required: true, location_name: "unprocessedAccounts"))
1814
1846
  StopMonitoringMembersResponse.struct_class = Types::StopMonitoringMembersResponse
1815
1847
 
1848
+ SubnetIds.member = Shapes::ShapeRef.new(shape: String)
1849
+
1816
1850
  Tag.add_member(:key, Shapes::ShapeRef.new(shape: String, location_name: "key"))
1817
1851
  Tag.add_member(:value, Shapes::ShapeRef.new(shape: String, location_name: "value"))
1818
1852
  Tag.struct_class = Types::Tag
@@ -2018,6 +2052,11 @@ module Aws::GuardDuty
2018
2052
 
2019
2053
  Volumes.member = Shapes::ShapeRef.new(shape: Volume)
2020
2054
 
2055
+ VpcConfig.add_member(:subnet_ids, Shapes::ShapeRef.new(shape: SubnetIds, location_name: "subnetIds"))
2056
+ VpcConfig.add_member(:vpc_id, Shapes::ShapeRef.new(shape: String, location_name: "vpcId"))
2057
+ VpcConfig.add_member(:security_groups, Shapes::ShapeRef.new(shape: SecurityGroups, location_name: "securityGroups"))
2058
+ VpcConfig.struct_class = Types::VpcConfig
2059
+
2021
2060
 
2022
2061
  # @api private
2023
2062
  API = Seahorse::Model::Api.new.tap do |api|
@@ -2647,6 +2686,17 @@ module Aws::GuardDuty
2647
2686
  )
2648
2687
  end)
2649
2688
 
2689
+ api.add_operation(:start_malware_scan, Seahorse::Model::Operation.new.tap do |o|
2690
+ o.name = "StartMalwareScan"
2691
+ o.http_method = "POST"
2692
+ o.http_request_uri = "/malware-scan/start"
2693
+ o.input = Shapes::ShapeRef.new(shape: StartMalwareScanRequest)
2694
+ o.output = Shapes::ShapeRef.new(shape: StartMalwareScanResponse)
2695
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
2696
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
2697
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
2698
+ end)
2699
+
2650
2700
  api.add_operation(:start_monitoring_members, Seahorse::Model::Operation.new.tap do |o|
2651
2701
  o.name = "StartMonitoringMembers"
2652
2702
  o.http_method = "POST"
@@ -753,6 +753,20 @@ module Aws::GuardDuty
753
753
  end
754
754
  end
755
755
 
756
+ class StartMalwareScan
757
+ def self.build(context)
758
+ unless context.config.regional_endpoint
759
+ endpoint = context.config.endpoint.to_s
760
+ end
761
+ Aws::GuardDuty::EndpointParameters.new(
762
+ region: context.config.region,
763
+ use_dual_stack: context.config.use_dualstack_endpoint,
764
+ use_fips: context.config.use_fips_endpoint,
765
+ endpoint: endpoint,
766
+ )
767
+ end
768
+ end
769
+
756
770
  class StartMonitoringMembers
757
771
  def self.build(context)
758
772
  unless context.config.regional_endpoint
@@ -28,6 +28,7 @@ module Aws::GuardDuty
28
28
  #
29
29
  # ## Error Classes
30
30
  # * {BadRequestException}
31
+ # * {ConflictException}
31
32
  # * {InternalServerErrorException}
32
33
  #
33
34
  # Additionally, error classes are dynamically generated for service errors based on the error code
@@ -56,6 +57,26 @@ module Aws::GuardDuty
56
57
  end
57
58
  end
58
59
 
60
+ class ConflictException < ServiceError
61
+
62
+ # @param [Seahorse::Client::RequestContext] context
63
+ # @param [String] message
64
+ # @param [Aws::GuardDuty::Types::ConflictException] data
65
+ def initialize(context, message, data = Aws::EmptyStructure.new)
66
+ super(context, message, data)
67
+ end
68
+
69
+ # @return [String]
70
+ def message
71
+ @message || @data[:message]
72
+ end
73
+
74
+ # @return [String]
75
+ def type
76
+ @data[:type]
77
+ end
78
+ end
79
+
59
80
  class InternalServerErrorException < ServiceError
60
81
 
61
82
  # @param [Seahorse::Client::RequestContext] context
@@ -162,6 +162,8 @@ module Aws::GuardDuty
162
162
  Aws::GuardDuty::Endpoints::ListTagsForResource.build(context)
163
163
  when :list_threat_intel_sets
164
164
  Aws::GuardDuty::Endpoints::ListThreatIntelSets.build(context)
165
+ when :start_malware_scan
166
+ Aws::GuardDuty::Endpoints::StartMalwareScan.build(context)
165
167
  when :start_monitoring_members
166
168
  Aws::GuardDuty::Endpoints::StartMonitoringMembers.build(context)
167
169
  when :stop_monitoring_members
@@ -591,6 +591,25 @@ module Aws::GuardDuty
591
591
  include Aws::Structure
592
592
  end
593
593
 
594
+ # A request conflict exception object.
595
+ #
596
+ # @!attribute [rw] message
597
+ # The error message.
598
+ # @return [String]
599
+ #
600
+ # @!attribute [rw] type
601
+ # The error type.
602
+ # @return [String]
603
+ #
604
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/ConflictException AWS API Documentation
605
+ #
606
+ class ConflictException < Struct.new(
607
+ :message,
608
+ :type)
609
+ SENSITIVE = []
610
+ include Aws::Structure
611
+ end
612
+
594
613
  # Details of a container.
595
614
  #
596
615
  # @!attribute [rw] container_runtime
@@ -2201,6 +2220,10 @@ module Aws::GuardDuty
2201
2220
  # Contains a complete view providing malware scan result details.
2202
2221
  # @return [Types::ScanDetections]
2203
2222
  #
2223
+ # @!attribute [rw] scan_type
2224
+ # Specifies the scan type that invoked the malware scan.
2225
+ # @return [String]
2226
+ #
2204
2227
  # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/EbsVolumeScanDetails AWS API Documentation
2205
2228
  #
2206
2229
  class EbsVolumeScanDetails < Struct.new(
@@ -2209,7 +2232,8 @@ module Aws::GuardDuty
2209
2232
  :scan_completed_at,
2210
2233
  :trigger_finding_id,
2211
2234
  :sources,
2212
- :scan_detections)
2235
+ :scan_detections,
2236
+ :scan_type)
2213
2237
  SENSITIVE = []
2214
2238
  include Aws::Structure
2215
2239
  end
@@ -3685,6 +3709,63 @@ module Aws::GuardDuty
3685
3709
  include Aws::Structure
3686
3710
  end
3687
3711
 
3712
+ # Information about the Lambda function involved in the finding.
3713
+ #
3714
+ # @!attribute [rw] function_arn
3715
+ # Amazon Resource Name (ARN) of the Lambda function.
3716
+ # @return [String]
3717
+ #
3718
+ # @!attribute [rw] function_name
3719
+ # Name of the Lambda function.
3720
+ # @return [String]
3721
+ #
3722
+ # @!attribute [rw] description
3723
+ # Description of the Lambda function.
3724
+ # @return [String]
3725
+ #
3726
+ # @!attribute [rw] last_modified_at
3727
+ # The timestamp when the Lambda function was last modified. This field
3728
+ # is in the UTC date string format `(2023-03-22T19:37:20.168Z)`.
3729
+ # @return [Time]
3730
+ #
3731
+ # @!attribute [rw] revision_id
3732
+ # The revision ID of the Lambda function version.
3733
+ # @return [String]
3734
+ #
3735
+ # @!attribute [rw] function_version
3736
+ # The version of the Lambda function.
3737
+ # @return [String]
3738
+ #
3739
+ # @!attribute [rw] role
3740
+ # The execution role of the Lambda function.
3741
+ # @return [String]
3742
+ #
3743
+ # @!attribute [rw] vpc_config
3744
+ # Amazon Virtual Private Cloud configuration details associated with
3745
+ # your Lambda function.
3746
+ # @return [Types::VpcConfig]
3747
+ #
3748
+ # @!attribute [rw] tags
3749
+ # A list of tags attached to this resource, listed in the format of
3750
+ # `key`:`value` pair.
3751
+ # @return [Array<Types::Tag>]
3752
+ #
3753
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/LambdaDetails AWS API Documentation
3754
+ #
3755
+ class LambdaDetails < Struct.new(
3756
+ :function_arn,
3757
+ :function_name,
3758
+ :description,
3759
+ :last_modified_at,
3760
+ :revision_id,
3761
+ :function_version,
3762
+ :role,
3763
+ :vpc_config,
3764
+ :tags)
3765
+ SENSITIVE = []
3766
+ include Aws::Structure
3767
+ end
3768
+
3688
3769
  # Information about the runtime process details.
3689
3770
  #
3690
3771
  # @!attribute [rw] start_time
@@ -5611,6 +5692,11 @@ module Aws::GuardDuty
5611
5692
  # login attempt was made.
5612
5693
  # @return [Types::RdsDbUserDetails]
5613
5694
  #
5695
+ # @!attribute [rw] lambda_details
5696
+ # Contains information about the Lambda function that was involved in
5697
+ # a finding.
5698
+ # @return [Types::LambdaDetails]
5699
+ #
5614
5700
  # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/Resource AWS API Documentation
5615
5701
  #
5616
5702
  class Resource < Struct.new(
@@ -5624,7 +5710,8 @@ module Aws::GuardDuty
5624
5710
  :ecs_cluster_details,
5625
5711
  :container_details,
5626
5712
  :rds_db_instance_details,
5627
- :rds_db_user_details)
5713
+ :rds_db_user_details,
5714
+ :lambda_details)
5628
5715
  SENSITIVE = []
5629
5716
  include Aws::Structure
5630
5717
  end
@@ -5921,6 +6008,10 @@ module Aws::GuardDuty
5921
6008
  # scanned.
5922
6009
  # @return [Array<Types::VolumeDetail>]
5923
6010
  #
6011
+ # @!attribute [rw] scan_type
6012
+ # Specifies the scan type that invoked the malware scan.
6013
+ # @return [String]
6014
+ #
5924
6015
  # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/Scan AWS API Documentation
5925
6016
  #
5926
6017
  class Scan < Struct.new(
@@ -5937,7 +6028,8 @@ module Aws::GuardDuty
5937
6028
  :account_id,
5938
6029
  :total_bytes,
5939
6030
  :file_count,
5940
- :attached_volumes)
6031
+ :attached_volumes,
6032
+ :scan_type)
5941
6033
  SENSITIVE = []
5942
6034
  include Aws::Structure
5943
6035
  end
@@ -6315,6 +6407,33 @@ module Aws::GuardDuty
6315
6407
  include Aws::Structure
6316
6408
  end
6317
6409
 
6410
+ # @!attribute [rw] resource_arn
6411
+ # Amazon Resource Name (ARN) of the resource for which you invoked the
6412
+ # API.
6413
+ # @return [String]
6414
+ #
6415
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/StartMalwareScanRequest AWS API Documentation
6416
+ #
6417
+ class StartMalwareScanRequest < Struct.new(
6418
+ :resource_arn)
6419
+ SENSITIVE = []
6420
+ include Aws::Structure
6421
+ end
6422
+
6423
+ # @!attribute [rw] scan_id
6424
+ # A unique identifier that gets generated when you invoke the API
6425
+ # without any error. Each malware scan has a corresponding scan ID.
6426
+ # Using this scan ID, you can monitor the status of your malware scan.
6427
+ # @return [String]
6428
+ #
6429
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/StartMalwareScanResponse AWS API Documentation
6430
+ #
6431
+ class StartMalwareScanResponse < Struct.new(
6432
+ :scan_id)
6433
+ SENSITIVE = []
6434
+ include Aws::Structure
6435
+ end
6436
+
6318
6437
  # @!attribute [rw] detector_id
6319
6438
  # The unique ID of the detector of the GuardDuty administrator account
6320
6439
  # associated with the member accounts to monitor.
@@ -7195,5 +7314,32 @@ module Aws::GuardDuty
7195
7314
  include Aws::Structure
7196
7315
  end
7197
7316
 
7317
+ # Amazon Virtual Private Cloud configuration details associated with
7318
+ # your Lambda function.
7319
+ #
7320
+ # @!attribute [rw] subnet_ids
7321
+ # The identifiers of the subnets that are associated with your Lambda
7322
+ # function.
7323
+ # @return [Array<String>]
7324
+ #
7325
+ # @!attribute [rw] vpc_id
7326
+ # The identifier of the Amazon Virtual Private Cloud.
7327
+ # @return [String]
7328
+ #
7329
+ # @!attribute [rw] security_groups
7330
+ # The identifier of the security group attached to the Lambda
7331
+ # function.
7332
+ # @return [Array<Types::SecurityGroup>]
7333
+ #
7334
+ # @see http://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28/VpcConfig AWS API Documentation
7335
+ #
7336
+ class VpcConfig < Struct.new(
7337
+ :subnet_ids,
7338
+ :vpc_id,
7339
+ :security_groups)
7340
+ SENSITIVE = []
7341
+ include Aws::Structure
7342
+ end
7343
+
7198
7344
  end
7199
7345
  end
@@ -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.67.0'
55
+ GEM_VERSION = '1.69.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.67.0
4
+ version: 1.69.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-03-30 00:00:00.000000000 Z
11
+ date: 2023-04-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core