assemblyline-core 4.6.1.dev57__tar.gz → 4.6.1.dev59__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.
Files changed (90) hide show
  1. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/PKG-INFO +1 -1
  2. assemblyline_core-4.6.1.dev59/assemblyline_core/VERSION +1 -0
  3. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/plumber/run_plumber.py +12 -9
  4. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core.egg-info/PKG-INFO +1 -1
  5. assemblyline_core-4.6.1.dev57/assemblyline_core/VERSION +0 -1
  6. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/LICENCE.md +0 -0
  7. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/README.md +0 -0
  8. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/__init__.py +0 -0
  9. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/alerter/__init__.py +0 -0
  10. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/alerter/processing.py +0 -0
  11. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/alerter/run_alerter.py +0 -0
  12. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/archiver/__init__.py +0 -0
  13. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/archiver/run_archiver.py +0 -0
  14. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/badlist_client.py +0 -0
  15. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/dispatching/__init__.py +0 -0
  16. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/dispatching/__main__.py +0 -0
  17. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/dispatching/client.py +0 -0
  18. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/dispatching/dispatcher.py +0 -0
  19. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/dispatching/schedules.py +0 -0
  20. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/dispatching/timeout.py +0 -0
  21. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/expiry/__init__.py +0 -0
  22. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/expiry/run_expiry.py +0 -0
  23. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/ingester/__init__.py +0 -0
  24. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/ingester/__main__.py +0 -0
  25. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/ingester/constants.py +0 -0
  26. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/ingester/ingester.py +0 -0
  27. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/metrics/__init__.py +0 -0
  28. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/metrics/es_metrics.py +0 -0
  29. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/metrics/heartbeat_formatter.py +0 -0
  30. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/metrics/helper.py +0 -0
  31. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/metrics/metrics_server.py +0 -0
  32. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/metrics/run_heartbeat_manager.py +0 -0
  33. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/metrics/run_metrics_aggregator.py +0 -0
  34. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/metrics/run_statistics_aggregator.py +0 -0
  35. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/plumber/__init__.py +0 -0
  36. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/replay/__init__.py +0 -0
  37. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/replay/client.py +0 -0
  38. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/replay/creator/__init__.py +0 -0
  39. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/replay/creator/run.py +0 -0
  40. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/replay/creator/run_worker.py +0 -0
  41. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/replay/loader/__init__.py +0 -0
  42. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/replay/loader/run.py +0 -0
  43. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/replay/loader/run_worker.py +0 -0
  44. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/replay/replay.py +0 -0
  45. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/safelist_client.py +0 -0
  46. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/scaler/__init__.py +0 -0
  47. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/scaler/collection.py +0 -0
  48. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/scaler/controllers/__init__.py +0 -0
  49. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/scaler/controllers/docker_ctl.py +0 -0
  50. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/scaler/controllers/interface.py +0 -0
  51. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/scaler/controllers/kubernetes_ctl.py +0 -0
  52. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/scaler/run_scaler.py +0 -0
  53. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/scaler/scaler_server.py +0 -0
  54. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/server_base.py +0 -0
  55. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/signature_client.py +0 -0
  56. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/submission_client.py +0 -0
  57. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/tasking_client.py +0 -0
  58. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/updater/__init__.py +0 -0
  59. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/updater/helper.py +0 -0
  60. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/updater/run_updater.py +0 -0
  61. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/vacuum/__init__.py +0 -0
  62. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/vacuum/crawler.py +0 -0
  63. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/vacuum/department_map.py +0 -0
  64. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/vacuum/safelist.py +0 -0
  65. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/vacuum/stream_map.py +0 -0
  66. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/vacuum/worker.py +0 -0
  67. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/workflow/__init__.py +0 -0
  68. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core/workflow/run_workflow.py +0 -0
  69. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core.egg-info/SOURCES.txt +0 -0
  70. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core.egg-info/dependency_links.txt +0 -0
  71. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core.egg-info/requires.txt +0 -0
  72. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/assemblyline_core.egg-info/top_level.txt +0 -0
  73. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/setup.cfg +0 -0
  74. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/setup.py +0 -0
  75. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_alerter.py +0 -0
  76. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_badlist_client.py +0 -0
  77. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_dispatcher.py +0 -0
  78. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_expiry.py +0 -0
  79. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_plumber.py +0 -0
  80. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_replay.py +0 -0
  81. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_safelist_client.py +0 -0
  82. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_scaler.py +0 -0
  83. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_scheduler.py +0 -0
  84. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_signature_client.py +0 -0
  85. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_simulation.py +0 -0
  86. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_tasking_client.py +0 -0
  87. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_vacuum.py +0 -0
  88. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_worker_ingest.py +0 -0
  89. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_worker_submit.py +0 -0
  90. {assemblyline_core-4.6.1.dev57 → assemblyline_core-4.6.1.dev59}/test/test_workflow.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: assemblyline-core
3
- Version: 4.6.1.dev57
3
+ Version: 4.6.1.dev59
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.6.1.dev59
@@ -11,7 +11,7 @@ from copy import deepcopy
11
11
  from typing import Optional
12
12
 
13
13
  from assemblyline.common.constants import service_queue_name
14
- from assemblyline.common.forge import get_config, get_service_queue
14
+ from assemblyline.common.forge import get_service_queue
15
15
  from assemblyline.common.isotime import DAY_IN_SECONDS, now_as_iso
16
16
  from assemblyline.odm.models.apikey import get_apikey_id
17
17
  from assemblyline.odm.models.error import Error
@@ -204,7 +204,9 @@ class Plumber(CoreBase):
204
204
  if self.config.auth.apikey_max_dtl is not None:
205
205
  expiry_ts = now_as_iso(self.config.auth.apikey_max_dtl * DAY_IN_SECONDS)
206
206
 
207
- for user in self.datastore.user.stream_search(query="*", fl="*", as_obj=False):
207
+ changes_made = False
208
+ for user in self.datastore.user.stream_search(query="*", fl="uname,apikeys,type,roles", as_obj=False):
209
+ changes_made = True
208
210
  uname = user['uname']
209
211
  apikeys = user['apikeys']
210
212
 
@@ -216,11 +218,11 @@ class Plumber(CoreBase):
216
218
  if old_apikey['acl'] == ["C"]:
217
219
 
218
220
  roles = [r for r in old_apikey['roles']
219
- if r in load_roles(user['type'], user['roles'])]
221
+ if r in load_roles(user['type'], user.get('roles'))]
220
222
 
221
223
  else:
222
224
  roles = [r for r in load_roles_form_acls(old_apikey['acl'], roles)
223
- if r in load_roles(user['type'], user['roles'])]
225
+ if r in load_roles(user['type'], user.get('roles'))]
224
226
  new_apikey = {
225
227
  "password": old_apikey['password'],
226
228
  "acl": old_apikey['acl'],
@@ -231,12 +233,13 @@ class Plumber(CoreBase):
231
233
  }
232
234
  self.datastore.apikey.save(key_id, new_apikey)
233
235
 
234
- user['apikeys'] = {}
235
- self.datastore.user.save(uname, user)
236
+ if changes_made:
237
+ # Commit changes made to indices
238
+ self.datastore.apikey.commit()
236
239
 
237
- # Commit changes made to indices
238
- self.datastore.user.commit()
239
- self.datastore.apikey.commit()
240
+ # Update permissions for API keys based on submission customization
241
+ self.datastore.apikey.update_by_query('roles:"submission_create" AND NOT roles:"submission_customize"',
242
+ [(self.datastore.apikey.UPDATE_APPEND, 'roles', 'submission_customize')])
240
243
 
241
244
  def migrate_user_settings(self):
242
245
  service_list = self.datastore.list_all_services(as_obj=False)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: assemblyline-core
3
- Version: 4.6.1.dev57
3
+ Version: 4.6.1.dev59
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.6.1.dev57