prelude-sdk-beta 1426__tar.gz → 1428__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 prelude-sdk-beta might be problematic. Click here for more details.
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/PKG-INFO +1 -1
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/models/codes.py +10 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta.egg-info/PKG-INFO +1 -1
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/setup.cfg +1 -1
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/tests/test_scm.py +16 -11
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/LICENSE +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/README.md +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/__init__.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/__init__.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/build_controller.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/detect_controller.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/export_controller.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/generate_controller.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/http_controller.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/iam_controller.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/jobs_controller.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/partner_controller.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/probe_controller.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/scm_controller.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/models/__init__.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/models/account.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta.egg-info/SOURCES.txt +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta.egg-info/dependency_links.txt +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta.egg-info/requires.txt +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta.egg-info/top_level.txt +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/pyproject.toml +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/tests/test_build.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/tests/test_detect.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/tests/test_generate.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/tests/test_iam.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/tests/test_partner.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/tests/test_probe.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/tests/test_scm_build.py +0 -0
- {prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/tests/testutils.py +0 -0
|
@@ -420,6 +420,9 @@ class PartnerEvents(Enum, metaclass=MissingItem):
|
|
|
420
420
|
MISSING_DISK_ENCRYPTION_POLICY = 19
|
|
421
421
|
MISSING_DISK_ENCRYPTION = 20
|
|
422
422
|
NO_REGISTERED_DEVICES = 21
|
|
423
|
+
MISSING_DEVICE_COMPLIANCE_POLICY = 22
|
|
424
|
+
NONCOMPLIANT_DEVICE = 23
|
|
425
|
+
MISSING_ASR_POLICY = 24
|
|
423
426
|
|
|
424
427
|
@classmethod
|
|
425
428
|
def _missing_(cls, value):
|
|
@@ -434,7 +437,9 @@ class PartnerEvents(Enum, metaclass=MissingItem):
|
|
|
434
437
|
ControlCategory.IDENTITY,
|
|
435
438
|
ControlCategory.XDR,
|
|
436
439
|
],
|
|
440
|
+
PartnerEvents.MISSING_ASR_POLICY: [ControlCategory.ASSET_MANAGER],
|
|
437
441
|
PartnerEvents.MISSING_AV_POLICY: [ControlCategory.XDR],
|
|
442
|
+
PartnerEvents.MISSING_DEVICE_COMPLIANCE_POLICY: [ControlCategory.ASSET_MANAGER],
|
|
438
443
|
PartnerEvents.MISSING_DISK_ENCRYPTION: [ControlCategory.ASSET_MANAGER],
|
|
439
444
|
PartnerEvents.MISSING_DISK_ENCRYPTION_POLICY: [
|
|
440
445
|
ControlCategory.ASSET_MANAGER
|
|
@@ -448,6 +453,7 @@ class PartnerEvents(Enum, metaclass=MissingItem):
|
|
|
448
453
|
PartnerEvents.NO_REGISTERED_DEVICES: [ControlCategory.IDENTITY],
|
|
449
454
|
PartnerEvents.NO_SERVER_MANAGER: [ControlCategory.ASSET_MANAGER],
|
|
450
455
|
PartnerEvents.NO_VULN_MANAGER: [ControlCategory.VULN_MANAGER],
|
|
456
|
+
PartnerEvents.NONCOMPLIANT_DEVICE: [ControlCategory.ASSET_MANAGER],
|
|
451
457
|
PartnerEvents.OUT_OF_DATE_FIRMWARE: [ControlCategory.NETWORK],
|
|
452
458
|
PartnerEvents.OUT_OF_DATE_SCAN: [ControlCategory.VULN_MANAGER],
|
|
453
459
|
PartnerEvents.REDUCED_FUNCTIONALITY_MODE: [ControlCategory.XDR],
|
|
@@ -479,6 +485,9 @@ class AlertTypes(Enum, metaclass=MissingItem):
|
|
|
479
485
|
NEW_MISSING_DISK_ENCRYPTION_POLICY_ENDPOINTS = 20
|
|
480
486
|
NEW_MISSING_DISK_ENCRYPTION_ENDPOINTS = 21
|
|
481
487
|
NEW_NO_REGISTERED_DEVICES_USERS = 22
|
|
488
|
+
NEW_MISSING_DEVICE_COMPLIANCE_POLICY_ENDPOINTS = 23
|
|
489
|
+
NEW_NONCOMPLIANT_DEVICE_ENDPOINTS = 24
|
|
490
|
+
NEW_MISSING_ASR_POLICY_ENDPOINTS = 25
|
|
482
491
|
|
|
483
492
|
@classmethod
|
|
484
493
|
def _missing_(cls, value):
|
|
@@ -506,6 +515,7 @@ class PolicyType(Enum, metaclass=MissingItem):
|
|
|
506
515
|
INTEL_TDT = 18
|
|
507
516
|
INTEL_CHIP = 19
|
|
508
517
|
DISK_ENCRYPTION = 20
|
|
518
|
+
ASR = 21
|
|
509
519
|
|
|
510
520
|
@classmethod
|
|
511
521
|
def _missing_(cls, value):
|
|
@@ -168,6 +168,16 @@ class TestScmPerControl:
|
|
|
168
168
|
raise e
|
|
169
169
|
|
|
170
170
|
def test_evaluation(self, unwrap, control):
|
|
171
|
+
def _wait_for_policies(control, instance_id, category):
|
|
172
|
+
timeout = time.time() + 300
|
|
173
|
+
while time.time() < timeout:
|
|
174
|
+
evaluation = unwrap(self.scm.evaluation)(self.scm, control, instance_id)
|
|
175
|
+
evaluation = evaluation[f"{category}_evaluation"]
|
|
176
|
+
if len(evaluation["policies"]) > 0:
|
|
177
|
+
return evaluation
|
|
178
|
+
time.sleep(5)
|
|
179
|
+
assert False, "Timed out waiting for policies to show up in evaluation"
|
|
180
|
+
|
|
171
181
|
instance_id = pytest.controls.get(control.value)
|
|
172
182
|
assert instance_id
|
|
173
183
|
evaluation = unwrap(self.scm.evaluation)(self.scm, control, instance_id)
|
|
@@ -178,7 +188,7 @@ class TestScmPerControl:
|
|
|
178
188
|
control.control_category == ControlCategory.XDR
|
|
179
189
|
or control == Control.INTUNE
|
|
180
190
|
):
|
|
181
|
-
|
|
191
|
+
evaluation = _wait_for_policies(control, instance_id, "endpoint")
|
|
182
192
|
assert {
|
|
183
193
|
"excepted",
|
|
184
194
|
"id",
|
|
@@ -194,19 +204,14 @@ class TestScmPerControl:
|
|
|
194
204
|
elif "user_evaluation" in evaluation:
|
|
195
205
|
evaluation = evaluation["user_evaluation"]
|
|
196
206
|
assert {"policies"} == evaluation.keys()
|
|
197
|
-
|
|
198
|
-
assert {
|
|
199
|
-
"
|
|
200
|
-
|
|
201
|
-
"name",
|
|
202
|
-
"noncompliant_hostnames",
|
|
203
|
-
"settings",
|
|
204
|
-
"user_count",
|
|
205
|
-
} == evaluation["policies"][0].keys()
|
|
207
|
+
evaluation = _wait_for_policies(control, instance_id, "user")
|
|
208
|
+
assert {"excepted", "id", "name", "settings", "user_count"} == evaluation[
|
|
209
|
+
"policies"
|
|
210
|
+
][0].keys()
|
|
206
211
|
elif "inbox_evaluation" in evaluation:
|
|
207
212
|
evaluation = evaluation["inbox_evaluation"]
|
|
208
213
|
assert {"policies"} == evaluation.keys()
|
|
209
|
-
|
|
214
|
+
evaluation = _wait_for_policies(control, instance_id, "inbox")
|
|
210
215
|
assert {"excepted", "id", "name", "settings", "inbox_count"} == evaluation[
|
|
211
216
|
"policies"
|
|
212
217
|
][0].keys()
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/build_controller.py
RENAMED
|
File without changes
|
{prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/detect_controller.py
RENAMED
|
File without changes
|
{prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/export_controller.py
RENAMED
|
File without changes
|
{prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/generate_controller.py
RENAMED
|
File without changes
|
{prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/http_controller.py
RENAMED
|
File without changes
|
{prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/iam_controller.py
RENAMED
|
File without changes
|
{prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/jobs_controller.py
RENAMED
|
File without changes
|
{prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/partner_controller.py
RENAMED
|
File without changes
|
{prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/probe_controller.py
RENAMED
|
File without changes
|
{prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta/controllers/scm_controller.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prelude_sdk_beta-1426 → prelude_sdk_beta-1428}/prelude_sdk_beta.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|