Create rules.py
taylor_socfortress committed
Jul 10, 2023 at 16:41 UTC
65fee6db64ca3ced5514a470b8a585d3d21a54a8
1 file changed
+60
backend/app/routes/rules.py
new
+60
@@ -0,0 +1,60 @@
1
+from flask import Blueprint, jsonify, request
2
+from loguru import logger
3
+from app.models.connectors import Connector, WazuhManagerConnector
4
+
5
+from app.models.rules import DisabledRules
6
+
7
+from app.services.WazuhManager.wazuhmanager import WazuhManagerService
8
+
9
+from app.services.WazuhManager.universal import UniversalService
10
+
11
+from app.services.WazuhManager.disabled_rule import DisableRuleService
12
+
13
+from app.services.WazuhManager.enabled_rule import EnableRuleService
14
+
15
+bp = Blueprint("rules", __name__)
16
+
17
+
18
+@bp.route("/rule/disable", methods=["POST"])
19
+def disable_rule():
20
+ """
21
+ Endpoint to disable a rule.
22
+
23
+ Args:
24
+ id (str): The id of the rule to be disabled.
25
+
26
+ Returns:
27
+ json: A JSON response containing the updated rule information.
28
+ """
29
+ logger.info("Received request to disable rule")
30
+ data = request.get_json()
31
+ # wazuh_manager_connector = WazuhManagerConnector("Wazuh-Manager")
32
+ # wazuh_manager_service = WazuhManagerService(wazuh_manager_connector)
33
+ # result = wazuh_manager_service.disable_rule(data)
34
+ # Create instance of UniversalService
35
+ universal_service = UniversalService()
36
+ disable_service = DisableRuleService(universal_service)
37
+ result = disable_service.disable_rule(data)
38
+ return result
39
+
40
+
41
+@bp.route("/rule/enable", methods=["POST"])
42
+def enable_rule():
43
+ """
44
+ Endpoint to enable a rule.
45
+
46
+ Args:
47
+ id (str): The id of the rule to be enabled.
48
+
49
+ Returns:
50
+ json: A JSON response containing the updated rule information.
51
+ """
52
+ logger.info("Received request to enable rule")
53
+ data = request.get_json()
54
+ # wazuh_manager_connector = WazuhManagerConnector("Wazuh-Manager")
55
+ # wazuh_manager_service = WazuhManagerService(wazuh_manager_connector)
56
+ # result = wazuh_manager_service.enable_rule(data)
57
+ universal_service = UniversalService()
58
+ enable_service = EnableRuleService(universal_service)
59
+ result = enable_service.enable_rule(data)
60
+ return result