howler-sentinel-plugin 0.2.0.dev326__tar.gz → 0.2.0.dev334__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.
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/PKG-INFO +3 -3
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/pyproject.toml +6 -5
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/routes/ingest.py +2 -2
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/LICENSE +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/README.md +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/__init__.py +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/actions/azure_emit_hash.py +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/actions/send_to_sentinel.py +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/actions/update_defender_xdr_alert.py +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/actions/update_defender_xdr_incident.py +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/config.py +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/manifest.yml +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/mapping/sentinel_incident.py +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/mapping/xdr_alert.py +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/mapping/xdr_alert_evidence.py +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/odm/__init__.py +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/odm/hit.py +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/odm/models/sentinel.py +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/routes/__init__.py +0 -0
- {howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/utils/tenant_utils.py +0 -0
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: howler-sentinel-plugin
|
|
3
|
-
Version: 0.2.0.
|
|
3
|
+
Version: 0.2.0.dev334
|
|
4
4
|
Summary: A howler plugin for integration with Microsoft's Sentinel API
|
|
5
5
|
License: MIT
|
|
6
6
|
License-File: LICENSE
|
|
7
7
|
Author: CCCS
|
|
8
8
|
Author-email: analysis-development@cyber.gc.ca
|
|
9
|
-
Requires-Python: >=3.
|
|
9
|
+
Requires-Python: >=3.10, <4.0
|
|
10
10
|
Classifier: License :: OSI Approved :: MIT License
|
|
11
11
|
Classifier: Programming Language :: Python :: 3
|
|
12
12
|
Classifier: Programming Language :: Python :: 3.10
|
|
@@ -14,7 +14,7 @@ Classifier: Programming Language :: Python :: 3.11
|
|
|
14
14
|
Classifier: Programming Language :: Python :: 3.12
|
|
15
15
|
Classifier: Programming Language :: Python :: 3.13
|
|
16
16
|
Classifier: Programming Language :: Python :: 3.14
|
|
17
|
-
Requires-Dist: opentelemetry-sdk (==1.
|
|
17
|
+
Requires-Dist: opentelemetry-sdk (==1.40.0)
|
|
18
18
|
Requires-Dist: python-dateutil (>=2.9.0.post0,<3.0.0)
|
|
19
19
|
Description-Content-Type: text/markdown
|
|
20
20
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "howler-sentinel-plugin"
|
|
3
|
-
version = "0.2.0.
|
|
3
|
+
version = "0.2.0.dev334"
|
|
4
4
|
description = "A howler plugin for integration with Microsoft's Sentinel API"
|
|
5
5
|
authors = [{ name = "CCCS", email = "analysis-development@cyber.gc.ca" }]
|
|
6
6
|
license = { text = "MIT" }
|
|
7
7
|
readme = "README.md"
|
|
8
|
-
requires-python = ">=3.
|
|
8
|
+
requires-python = ">=3.10, <4.0"
|
|
9
9
|
|
|
10
10
|
######################
|
|
11
11
|
# autoflake settings #
|
|
@@ -77,7 +77,7 @@ ignore_missing_imports = true
|
|
|
77
77
|
[tool.ruff]
|
|
78
78
|
line-length = 120
|
|
79
79
|
indent-width = 4
|
|
80
|
-
target-version = "
|
|
80
|
+
target-version = "py310"
|
|
81
81
|
|
|
82
82
|
[tool.ruff.lint]
|
|
83
83
|
select = [
|
|
@@ -139,7 +139,7 @@ pytest = "^8.4.2"
|
|
|
139
139
|
mock = "^5.2.0"
|
|
140
140
|
pytest-cov = "^6.3.0"
|
|
141
141
|
coverage = { extras = ["toml"], version = "^7.10.7" }
|
|
142
|
-
diff-cover = "^
|
|
142
|
+
diff-cover = "^10.3.0"
|
|
143
143
|
python-dotenv = "^1.2.1"
|
|
144
144
|
|
|
145
145
|
|
|
@@ -150,7 +150,8 @@ types-python-dateutil = "^2.9.0.20260124"
|
|
|
150
150
|
|
|
151
151
|
[tool.poetry.dependencies]
|
|
152
152
|
python-dateutil = "^2.9.0.post0"
|
|
153
|
-
opentelemetry-sdk = "1.
|
|
153
|
+
opentelemetry-sdk = "1.40.0"
|
|
154
|
+
|
|
154
155
|
[build-system]
|
|
155
156
|
requires = ["poetry-core>=2.0.0,<3.0.0"]
|
|
156
157
|
build-backend = "poetry.core.masonry.api"
|
|
@@ -169,7 +169,7 @@ def _create_alert_hits(alerts: list[dict[str, Any]], tenant_id: str, alert_mappe
|
|
|
169
169
|
alert_hit_odm.event.id = alert_hit_odm.howler.id
|
|
170
170
|
logger.info("Creating individual alert hit %s with ID %s", i, alert_hit_odm.howler.id)
|
|
171
171
|
hit_service.create_hit(alert_hit_odm.howler.id, alert_hit_odm, user="system")
|
|
172
|
-
analytic_service.
|
|
172
|
+
analytic_service.save_from_hits(alert_hit_odm, {"uname": "system"})
|
|
173
173
|
child_hit_ids.append(alert_hit_odm.howler.id)
|
|
174
174
|
logger.debug("Successfully created alert hit %s: %s", i, alert_hit_odm.howler.id)
|
|
175
175
|
else:
|
|
@@ -238,7 +238,7 @@ def _create_new_incident(
|
|
|
238
238
|
|
|
239
239
|
logger.info("Creating incident hit with ID %s", bundle_odm.howler.id)
|
|
240
240
|
hit_service.create_hit(bundle_odm.howler.id, bundle_odm, user="system")
|
|
241
|
-
analytic_service.
|
|
241
|
+
analytic_service.save_from_hits(bundle_odm, {"uname": "system"})
|
|
242
242
|
if child_hit_ids:
|
|
243
243
|
_link_child_hits_to_bundle(bundle_odm, child_hit_ids)
|
|
244
244
|
datastore().hit.commit()
|
|
File without changes
|
|
File without changes
|
{howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/config.py
RENAMED
|
File without changes
|
{howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/manifest.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/odm/__init__.py
RENAMED
|
File without changes
|
{howler_sentinel_plugin-0.2.0.dev326 → howler_sentinel_plugin-0.2.0.dev334}/sentinel/odm/hit.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|