From b21c4f2954637e8560f9fe2026931c8faa165f9a Mon Sep 17 00:00:00 2001 From: "saket.agrahari" <saket.agrahari@geant.org> Date: Fri, 5 Apr 2024 17:19:45 +0100 Subject: [PATCH] security control and crisis excersies fix for new 2023 mapping --- Changelog.md | 3 ++ .../routes/standards_and_policies.py | 31 +++++++++++++++++-- 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/Changelog.md b/Changelog.md index a9afc690..96d8168a 100644 --- a/Changelog.md +++ b/Changelog.md @@ -2,6 +2,9 @@ All notable changes to this project will be documented in this file. +## [0.56] - 2024-05-05 +- security control and crisis excersies fix for new 2023 mapping + ## [0.55] - 2024-05-05 - COMP-372 : S&P - Standards - Audits - COMP-373 : S&P - Standards - Business Continuity diff --git a/compendium_v2/routes/standards_and_policies.py b/compendium_v2/routes/standards_and_policies.py index 7520c9f9..3f33bbff 100644 --- a/compendium_v2/routes/standards_and_policies.py +++ b/compendium_v2/routes/standards_and_policies.py @@ -107,12 +107,24 @@ def standards_view() -> Any: return jsonify(entries) +crisis_exercises_map = { + "geant_workshops": "We participate in GEANT Crisis workshops such as CLAW", + "none": "No, we have not done any crisis exercises or trainings", + "national_excercises": "We participated in National crisis exercises ", + "real_crisis": "We had a real crisis", + "simulation_excercises": "We run our own simulation exercises", + "tabletop_exercises": "We run our own tabletop exercises", + "other_excercises": "We have done/participated in other exercises or trainings" +} + + def crisis_exercises_extract_data(crisis_exercises: CrisisExercises) -> dict: return { 'nren': crisis_exercises.nren.name, 'nren_country': crisis_exercises.nren.country, 'year': int(crisis_exercises.year), - 'exercise_descriptions': crisis_exercises.exercise_descriptions + 'exercise_descriptions': [crisis_exercises_map.get(item, item) for item in + crisis_exercises.exercise_descriptions] } @@ -142,12 +154,27 @@ def crisis_exercises_view() -> Any: return jsonify(entries) +security_controls_map = { + "anti_virus": "Anti Virus", + "anti_spam": "Anti-Spam", + "firewall": "Firewall", + "ddos_mitigation": "DDoS mitigation", + "monitoring": "Network monitoring", + "ips_ids": "IPS/IDS", + "acl": "ACL", + "segmentation": "Network segmentation", + "integrity_checking": "Integrity checking" +} + + def security_controls_extract_data(security_controls: SecurityControls) -> dict: return { + 'nren': security_controls.nren.name, 'nren_country': security_controls.nren.country, 'year': int(security_controls.year), - 'security_control_descriptions': security_controls.security_control_descriptions + 'security_control_descriptions': [security_controls_map.get(item, item) for item in + security_controls.security_control_descriptions] } -- GitLab