assemblyline-core 4.5.1.dev183__tar.gz → 4.5.1.dev184__tar.gz

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.

Potentially problematic release.


This version of assemblyline-core might be problematic. Click here for more details.

Files changed (88) hide show
  1. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/PKG-INFO +1 -1
  2. assemblyline-core-4.5.1.dev184/assemblyline_core/VERSION +1 -0
  3. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/ingester/ingester.py +11 -1
  4. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core.egg-info/PKG-INFO +1 -1
  5. assemblyline-core-4.5.1.dev183/assemblyline_core/VERSION +0 -1
  6. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/LICENCE.md +0 -0
  7. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/README.md +0 -0
  8. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/__init__.py +0 -0
  9. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/alerter/__init__.py +0 -0
  10. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/alerter/processing.py +0 -0
  11. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/alerter/run_alerter.py +0 -0
  12. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/archiver/__init__.py +0 -0
  13. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/archiver/run_archiver.py +0 -0
  14. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/badlist_client.py +0 -0
  15. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/dispatching/__init__.py +0 -0
  16. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/dispatching/__main__.py +0 -0
  17. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/dispatching/client.py +0 -0
  18. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/dispatching/dispatcher.py +0 -0
  19. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/dispatching/schedules.py +0 -0
  20. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/dispatching/timeout.py +0 -0
  21. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/expiry/__init__.py +0 -0
  22. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/expiry/run_expiry.py +0 -0
  23. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/ingester/__init__.py +0 -0
  24. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/ingester/__main__.py +0 -0
  25. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/ingester/constants.py +0 -0
  26. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/metrics/__init__.py +0 -0
  27. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/metrics/es_metrics.py +0 -0
  28. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/metrics/heartbeat_formatter.py +0 -0
  29. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/metrics/helper.py +0 -0
  30. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/metrics/metrics_server.py +0 -0
  31. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/metrics/run_heartbeat_manager.py +0 -0
  32. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/metrics/run_metrics_aggregator.py +0 -0
  33. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/metrics/run_statistics_aggregator.py +0 -0
  34. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/plumber/__init__.py +0 -0
  35. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/plumber/run_plumber.py +0 -0
  36. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/replay/__init__.py +0 -0
  37. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/replay/client.py +0 -0
  38. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/replay/creator/__init__.py +0 -0
  39. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/replay/creator/run.py +0 -0
  40. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/replay/creator/run_worker.py +0 -0
  41. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/replay/loader/__init__.py +0 -0
  42. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/replay/loader/run.py +0 -0
  43. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/replay/loader/run_worker.py +0 -0
  44. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/replay/replay.py +0 -0
  45. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/safelist_client.py +0 -0
  46. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/scaler/__init__.py +0 -0
  47. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/scaler/collection.py +0 -0
  48. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/scaler/controllers/__init__.py +0 -0
  49. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/scaler/controllers/docker_ctl.py +0 -0
  50. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/scaler/controllers/interface.py +0 -0
  51. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/scaler/controllers/kubernetes_ctl.py +0 -0
  52. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/scaler/run_scaler.py +0 -0
  53. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/scaler/scaler_server.py +0 -0
  54. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/server_base.py +0 -0
  55. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/signature_client.py +0 -0
  56. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/submission_client.py +0 -0
  57. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/tasking_client.py +0 -0
  58. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/updater/__init__.py +0 -0
  59. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/updater/helper.py +0 -0
  60. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/updater/run_updater.py +0 -0
  61. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/vacuum/__init__.py +0 -0
  62. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/vacuum/crawler.py +0 -0
  63. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/vacuum/department_map.py +0 -0
  64. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/vacuum/safelist.py +0 -0
  65. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/vacuum/stream_map.py +0 -0
  66. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/vacuum/worker.py +0 -0
  67. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/workflow/__init__.py +0 -0
  68. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core/workflow/run_workflow.py +0 -0
  69. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core.egg-info/SOURCES.txt +0 -0
  70. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core.egg-info/dependency_links.txt +0 -0
  71. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core.egg-info/requires.txt +0 -0
  72. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/assemblyline_core.egg-info/top_level.txt +0 -0
  73. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/setup.cfg +0 -0
  74. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/setup.py +0 -0
  75. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/test/test_alerter.py +0 -0
  76. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/test/test_badlist_client.py +0 -0
  77. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/test/test_dispatcher.py +0 -0
  78. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/test/test_expiry.py +0 -0
  79. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/test/test_plumber.py +0 -0
  80. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/test/test_replay.py +0 -0
  81. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/test/test_safelist_client.py +0 -0
  82. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/test/test_scaler.py +0 -0
  83. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/test/test_scheduler.py +0 -0
  84. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/test/test_signature_client.py +0 -0
  85. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/test/test_simulation.py +0 -0
  86. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/test/test_vacuum.py +0 -0
  87. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/test/test_worker_ingest.py +0 -0
  88. {assemblyline-core-4.5.1.dev183 → assemblyline-core-4.5.1.dev184}/test/test_worker_submit.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: assemblyline-core
3
- Version: 4.5.1.dev183
3
+ Version: 4.5.1.dev184
4
4
  Summary: Assemblyline 4 - Core components
5
5
  Home-page: https://github.com/CybercentreCanada/assemblyline-core/
6
6
  Author: CCCS Assemblyline development team
@@ -0,0 +1 @@
1
+ 4.5.1.dev184
@@ -36,6 +36,7 @@ from assemblyline.remote.datatypes.queues.priority import PriorityQueue
36
36
  from assemblyline.remote.datatypes.queues.comms import CommsQueue
37
37
  from assemblyline.remote.datatypes.queues.multi import MultiQueue
38
38
  from assemblyline.remote.datatypes.hash import Hash
39
+ from assemblyline.remote.datatypes.user_quota_tracker import UserQuotaTracker
39
40
  from assemblyline import odm
40
41
  from assemblyline.odm.models.submission import SubmissionParams, Submission as DatabaseSubmission
41
42
  from assemblyline.odm.models.alert import EXTENDED_SCAN_VALUES
@@ -180,6 +181,9 @@ class Ingester(ThreadedCoreBase):
180
181
  # Utility object to handle post-processing actions
181
182
  self.postprocess_worker = ActionWorker(cache=True, config=self.config, datastore=self.datastore,
182
183
  redis_persist=self.redis_persist)
184
+ # Async Submission quota tracker
185
+ self.async_submission_tracker = UserQuotaTracker('async_submissions', timeout=24 * 60 * 60, # 1 day timeout
186
+ redis=self.redis_persist)
183
187
 
184
188
  if self.config.core.metrics.apm_server.server_url is not None:
185
189
  self.log.info(f"Exporting application metrics to: {self.config.core.metrics.apm_server.server_url}")
@@ -640,7 +644,7 @@ class Ingester(ThreadedCoreBase):
640
644
  'archived': False,
641
645
  'archive_ts': None,
642
646
  'classification': task.params.classification,
643
- 'expiry_ts':now_as_iso(task.params.ttl * 24 * 60 * 60),
647
+ 'expiry_ts': now_as_iso(task.params.ttl * 24 * 60 * 60),
644
648
  'from_archive': False,
645
649
  'metadata': task.submission.metadata,
646
650
  'params': task.params.as_primitives(),
@@ -863,6 +867,9 @@ class Ingester(ThreadedCoreBase):
863
867
  return True
864
868
 
865
869
  def _notify_drop(self, task: IngestTask):
870
+ if self.config.ui.enforce_quota:
871
+ self.async_submission_tracker.end(task.params.submitter)
872
+
866
873
  self.send_notification(task)
867
874
 
868
875
  c12n = task.params.classification
@@ -936,4 +943,7 @@ class Ingester(ThreadedCoreBase):
936
943
  task.extended_scan = 'submitted'
937
944
  task.params.psid = None
938
945
 
946
+ if self.config.ui.enforce_quota:
947
+ self.async_submission_tracker.end(task.params.submitter)
948
+
939
949
  self.send_notification(task)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: assemblyline-core
3
- Version: 4.5.1.dev183
3
+ Version: 4.5.1.dev184
4
4
  Summary: Assemblyline 4 - Core components
5
5
  Home-page: https://github.com/CybercentreCanada/assemblyline-core/
6
6
  Author: CCCS Assemblyline development team
@@ -1 +0,0 @@
1
- 4.5.1.dev183