prelude-sdk 2.6.36__tar.gz → 2.6.37__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 (34) hide show
  1. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/PKG-INFO +1 -1
  2. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk/controllers/iam_controller.py +9 -1
  3. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk/models/codes.py +12 -3
  4. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk.egg-info/PKG-INFO +1 -1
  5. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/setup.cfg +1 -1
  6. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/tests/test_partner.py +18 -0
  7. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/tests/test_scm.py +11 -0
  8. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/LICENSE +0 -0
  9. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/README.md +0 -0
  10. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk/__init__.py +0 -0
  11. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk/controllers/__init__.py +0 -0
  12. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk/controllers/build_controller.py +0 -0
  13. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk/controllers/detect_controller.py +0 -0
  14. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk/controllers/export_controller.py +0 -0
  15. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk/controllers/generate_controller.py +0 -0
  16. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk/controllers/http_controller.py +0 -0
  17. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk/controllers/jobs_controller.py +0 -0
  18. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk/controllers/partner_controller.py +0 -0
  19. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk/controllers/probe_controller.py +0 -0
  20. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk/controllers/scm_controller.py +0 -0
  21. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk/models/__init__.py +0 -0
  22. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk/models/account.py +0 -0
  23. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk.egg-info/SOURCES.txt +0 -0
  24. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk.egg-info/dependency_links.txt +0 -0
  25. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk.egg-info/requires.txt +0 -0
  26. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/prelude_sdk.egg-info/top_level.txt +0 -0
  27. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/pyproject.toml +0 -0
  28. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/tests/test_build.py +0 -0
  29. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/tests/test_detect.py +0 -0
  30. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/tests/test_generate.py +0 -0
  31. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/tests/test_iam.py +0 -0
  32. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/tests/test_probe.py +0 -0
  33. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/tests/test_scm_build.py +0 -0
  34. {prelude_sdk-2.6.36 → prelude_sdk-2.6.37}/tests/testutils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: prelude-sdk
3
- Version: 2.6.36
3
+ Version: 2.6.37
4
4
  Summary: For interacting with the Prelude API
5
5
  Home-page: https://github.com/preludeorg
6
6
  Author: Prelude Research
@@ -30,13 +30,21 @@ class IAMAccountController(HttpController):
30
30
  return res.json()
31
31
 
32
32
  @verify_credentials
33
- def update_account(self, mode: Mode = None, company: str = None, slug: str = None):
33
+ def update_account(
34
+ self,
35
+ company: str = None,
36
+ inactivity_timeout: int = None,
37
+ mode: Mode = None,
38
+ slug: str = None,
39
+ ):
34
40
  """Update properties on an account"""
35
41
  body = dict()
36
42
  if mode is not None:
37
43
  body["mode"] = mode.name
38
44
  if company is not None:
39
45
  body["company"] = company
46
+ if inactivity_timeout is not None:
47
+ body["inactivity_timeout"] = inactivity_timeout
40
48
  if slug is not None:
41
49
  body["slug"] = slug
42
50
 
@@ -533,13 +533,22 @@ class PartnerEvents(Enum, metaclass=MissingItem):
533
533
  PartnerEvents.MISSING_SERVER_MANAGER: [ControlCategory.ASSET_MANAGER],
534
534
  PartnerEvents.MISSING_VULN_MANAGER: [ControlCategory.VULN_MANAGER],
535
535
  PartnerEvents.MISSING_VULN_SCAN: [ControlCategory.VULN_MANAGER],
536
- PartnerEvents.NO_ASR_POLICY: [ControlCategory.ASSET_MANAGER],
537
- PartnerEvents.NO_AV_POLICY: [ControlCategory.XDR],
536
+ PartnerEvents.NO_ASR_POLICY: [
537
+ ControlCategory.ASSET_MANAGER,
538
+ ControlCategory.XDR,
539
+ ],
540
+ PartnerEvents.NO_AV_POLICY: [
541
+ ControlCategory.ASSET_MANAGER,
542
+ ControlCategory.XDR,
543
+ ],
538
544
  PartnerEvents.NO_DEVICE_COMPLIANCE_POLICY: [ControlCategory.ASSET_MANAGER],
539
545
  PartnerEvents.NO_DISK_ENCRYPTION: [ControlCategory.ASSET_MANAGER],
540
546
  PartnerEvents.NO_DISK_ENCRYPTION_POLICY: [ControlCategory.ASSET_MANAGER],
541
547
  PartnerEvents.NO_EDR_POLICY: [ControlCategory.XDR],
542
- PartnerEvents.NO_HOST_FIREWALL_POLICY: [ControlCategory.ASSET_MANAGER],
548
+ PartnerEvents.NO_HOST_FIREWALL_POLICY: [
549
+ ControlCategory.ASSET_MANAGER,
550
+ ControlCategory.XDR,
551
+ ],
543
552
  PartnerEvents.NO_REGISTERED_DEVICES: [ControlCategory.IDENTITY],
544
553
  PartnerEvents.NONCOMPLIANT: [ControlCategory.ASSET_MANAGER],
545
554
  PartnerEvents.OUT_OF_DATE_FIRMWARE: [ControlCategory.NETWORK],
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: prelude-sdk
3
- Version: 2.6.36
3
+ Version: 2.6.37
4
4
  Summary: For interacting with the Prelude API
5
5
  Home-page: https://github.com/preludeorg
6
6
  Author: Prelude Research
@@ -1,6 +1,6 @@
1
1
  [metadata]
2
2
  name = prelude-sdk
3
- version = 2.6.36
3
+ version = 2.6.37
4
4
  author = Prelude Research
5
5
  author_email = support@preludesecurity.com
6
6
  description = For interacting with the Prelude API
@@ -498,3 +498,21 @@ class TestPartner:
498
498
  assert res["pagination"]["offset"] == 0
499
499
  assert res["pagination"]["total"] > 0
500
500
  pytest.crowdstrike_advisory_id = res["advisories"][0]["id"]
501
+
502
+ def test_delete_endpoint(
503
+ self,
504
+ unwrap,
505
+ host,
506
+ edr_id,
507
+ control,
508
+ os,
509
+ platform,
510
+ policy,
511
+ policy_name,
512
+ webhook_keys,
513
+ group_id,
514
+ ):
515
+ unwrap(self.detect.delete_endpoint)(self.detect, pytest.endpoint["endpoint_id"])
516
+ res = unwrap(self.detect.list_endpoints)(self.detect)
517
+ sorted_res = {r["serial_num"]: r for r in res}
518
+ assert pytest.endpoint["serial_num"] not in sorted_res
@@ -200,6 +200,17 @@ class TestScmPerControl:
200
200
  "endpoint_count",
201
201
  "success_count",
202
202
  } == evaluation["policies"][0].keys()
203
+ elif control == Control.INTEL_INTUNE:
204
+ evaluation = _wait_for_policies(control, instance_id, "endpoint")
205
+ assert {
206
+ "active_count",
207
+ "excepted",
208
+ "id",
209
+ "name",
210
+ "not_supported_count",
211
+ "supported_count",
212
+ "techniques",
213
+ } == evaluation["policies"][0].keys()
203
214
  else:
204
215
  assert len(evaluation["policies"]) == 0
205
216
  elif "user_evaluation" in evaluation:
File without changes
File without changes