diff --git a/CHANGELOG b/CHANGELOG index 9caa02c1..5f52e309 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - [API_PARSER] [CATONETWORKS] New collector - [API_PARSER] [INFOBLOX_THREAT_DEFENSE] New collector +- [API_PARSER] [BEYONDTRUST_REPORTINGS] New collector ## [2.19.0] - 2025-01-16 ### Added diff --git a/vulture_os/services/frontend/form.py b/vulture_os/services/frontend/form.py index cdfe0195..07eb6ca8 100644 --- a/vulture_os/services/frontend/form.py +++ b/vulture_os/services/frontend/form.py @@ -269,6 +269,8 @@ def __init__(self, *args, **kwargs): "cisco_umbrella_managed_org_get_dns", "cisco_umbrella_managed_org_get_proxy", "catonetworks_account_id", "catonetworks_api_key", "infoblox_threat_defense_host", "infoblox_threat_defense_token", + "beyondtrust_reportings_client_id", "beyondtrust_reportings_secret", "beyondtrust_reportings_host", + "beyondtrust_reportings_get_team_logs", "beyondtrust_reportings_get_access_session_logs", "beyondtrust_reportings_get_vault_account_activity_logs", "beyondtrust_reportings_get_support_session_logs", ]: self.fields[field_name].required = False @@ -384,6 +386,10 @@ class Meta: 'cisco_umbrella_managed_org_get_dns', 'cisco_umbrella_managed_org_get_proxy', 'catonetworks_api_key', 'catonetworks_account_id', "infoblox_threat_defense_host", "infoblox_threat_defense_token", + "beyondtrust_reportings_client_id", "beyondtrust_reportings_secret", "beyondtrust_reportings_host", + "beyondtrust_reportings_get_team_logs", "beyondtrust_reportings_get_access_session_logs", + "beyondtrust_reportings_get_vault_account_activity_logs", + "beyondtrust_reportings_get_support_session_logs", ) widgets = { @@ -594,6 +600,13 @@ class Meta: 'catonetworks_account_id': TextInput(attrs={'class': 'form-control'}), 'infoblox_threat_defense_host': TextInput(attrs={'class': 'form-control'}), 'infoblox_threat_defense_token': TextInput(attrs={'type': 'password', 'class': 'form-control'}), + 'beyondtrust_reportings_client_id': TextInput(attrs={'class': 'form-control'}), + 'beyondtrust_reportings_secret': TextInput(attrs={'type': 'password', 'class': 'form-control'}), + 'beyondtrust_reportings_host': TextInput(attrs={'class': 'form-control'}), + 'beyondtrust_reportings_get_team_logs': CheckboxInput(attrs={'class': 'js-switch'}), + 'beyondtrust_reportings_get_access_session_logs': CheckboxInput(attrs={'class': 'js-switch'}), + 'beyondtrust_reportings_get_vault_account_activity_logs': CheckboxInput(attrs={'class': 'js-switch'}), + 'beyondtrust_reportings_get_support_session_logs': CheckboxInput(attrs={'class': 'js-switch'}), } def clean_name(self): diff --git a/vulture_os/services/frontend/models.py b/vulture_os/services/frontend/models.py index d9461c3b..c68ba9c9 100644 --- a/vulture_os/services/frontend/models.py +++ b/vulture_os/services/frontend/models.py @@ -1467,6 +1467,46 @@ class Frontend(models.Model): help_text=_("Infoblox Threat Defense Token"), default="", ) + # Beyondtrust Reportings attributes + beyondtrust_reportings_client_id = models.TextField( + verbose_name=_("Beyondtrust Reportings client id"), + help_text=_("Beyondtrust Reportings client id"), + default="ex: 18xxxxxxxxxxxaf3e86b2xxxxxx77b4fc29eff", + ) + beyondtrust_reportings_secret = models.TextField( + verbose_name=_("Beyondtrust Reportings secret"), + help_text=_("Beyondtrust Reportings secret"), + default="ex: Oxxxxxxxxxxqep8xxxxxxx22Y8S98GPcHkgNMK", + ) + beyondtrust_reportings_host = models.TextField( + verbose_name=_("Beyondtrust Reportings host"), + help_text=_("Beyondtrust Reportings host"), + default="ex: https://xxx.xxx.com", + ) + beyondtrust_reportings_api_token = models.JSONField( + default=dict + ) + beyondtrust_reportings_get_team_logs = models.BooleanField( + verbose_name=_("Retrieve Beyondtrust Reportings Team logs"), + help_text=_("Retrieve Beyondtrust Reportings Team logs"), + default=False, + ) + beyondtrust_reportings_get_access_session_logs = models.BooleanField( + verbose_name=_("Retrieve Beyondtrust Reportings AccessSession logs"), + help_text=_("Retrieve Beyondtrust Reportings AccessSession logs"), + default=False, + ) + beyondtrust_reportings_get_vault_account_activity_logs = models.BooleanField( + verbose_name=_("Retrieve Beyondtrust Reportings VaultAccountActivity logs"), + help_text=_("Retrieve Beyondtrust Reportings VaultAccountActivity logs"), + default=False, + ) + beyondtrust_reportings_get_support_session_logs = models.BooleanField( + verbose_name=_("Retrieve Beyondtrust Reportings SupportSession logs"), + help_text=_("Retrieve Beyondtrust Reportings SupportSession logs"), + default=False, + ) + @staticmethod def str_attrs(): diff --git a/vulture_os/services/templates/services/frontend_edit.html b/vulture_os/services/templates/services/frontend_edit.html index 9583e53a..632e44a1 100644 --- a/vulture_os/services/templates/services/frontend_edit.html +++ b/vulture_os/services/templates/services/frontend_edit.html @@ -2132,6 +2132,57 @@

{% translate "Form errors +
+
+ +
+ {{ form.beyondtrust_reportings_client_id }} + {{ form.beyondtrust_reportings_client_id.errors|safe }} +
+
+
+ +
+ {{ form.beyondtrust_reportings_secret }} + {{ form.beyondtrust_reportings_secret.errors|safe }} +
+
+
+ +
+ {{ form.beyondtrust_reportings_host }} + {{ form.beyondtrust_reportings_host.errors|safe }} +
+
+
+ +
+ {{ form.beyondtrust_reportings_get_team_logs }} + {{ form.beyondtrust_reportings_get_team_logs.errors|safe }} +
+
+
+ +
+ {{ form.beyondtrust_reportings_get_access_session_logs }} + {{ form.beyondtrust_reportings_get_access_session_logs.errors|safe }} +
+
+
+ +
+ {{ form.beyondtrust_reportings_get_vault_account_activity_logs }} + {{ form.beyondtrust_reportings_get_vault_account_activity_logs.errors|safe }} +
+
+
+ +
+ {{ form.beyondtrust_reportings_get_support_session_logs }} + {{ form.beyondtrust_reportings_get_support_session_logs.errors|safe }} +
+
+