[Security Solution] Consolidating Rule Management with Alerting Framework #133560
Labels
epic
Feature:Rule Management
Security Solution Detection Rule Management area
Team:Detection Rule Management
Security Detection Rule Management Team
Team:Detections and Resp
Security Detection Response Team
Team:ResponseOps
Label for the ResponseOps team (formerly the Cases and Alerting teams)
Team: SecuritySolution
Security Solutions Team working on SIEM, Endpoint, Timeline, Resolver, etc.
Summary
Elastic is going to build a Kibana application for unified rules and alerts management, and @elastic/response-ops-ram team will be working on that in the future. This app will be showing Security, Observability, and Stack rules in a common table and allow to render some solution/domain-specific UI in it (for example, by clicking on a rule it could show a Rule Details flyout that could be a domain- or rule type-specific piece of UI).
On the other hand, in Security we want our Rules table to be consistent with the unified rules table in terms of UI/UX patterns and components used so that the user experience is not too much different for users when they work with rules in Security and this unified app. However, we still need to be able to present our domain-specific UIs and include our domain-specific logic into the Rules table in Security.
So the plan is to:
How can we use Alerting API for reading rules
Right now it's not possible to just start reading rules via the Alerting API endpoints. The reason is that we have our domain-specific code in them:
siem-detection-engine-rule-execution-info
sidecar SO that we merge with some info from the rule SO and return in the rule asexecution_summary
property.RulesClient
into our Rule domain model that we return from our HTTP API endpoints.params
object as it's stored in.kibana
index. It lets the user know that there is someparams
object. It doesn't make sure that required params are there if they are not stored in_source
, etc.rule.riskScore
rather thanrule.params.riskScore
. It normalizes some fields where we need it (e.g. sets default values for missing params).So to proceed, we'll need to:
Sub-tasks
Experiment with adding reusable components from Alerting to the Rules table in Security
Get rid of our sidecar saved objects and remove all the related code (SO types, logic, etc)
Migrate to Alerting CRUD endpoints
The text was updated successfully, but these errors were encountered: