@@ -120,6 +120,47 @@ export const EVENT_IS_ALERT = 'isAlert';
120120
121121export const FALSE_POSITIVE_OBJECT = { id : 1 , tagName : 'False positive' , tagColor : '#f44336' , systemOwner : true } ;
122122
123+ // Event-related fields exposed in tag-rule conditions.
124+ // These are flattened paths into the `events` array on the alert document
125+ // ("events" is mapped as an object array, so any condition matches when ANY
126+ // event satisfies it).
127+ export const EVENT_TAG_RULE_FIELDS : UtmFieldType [ ] = [
128+ { label : 'Event Data Type' , field : 'events.dataType' , type : ElasticDataTypesEnum . STRING , visible : true } ,
129+ { label : 'Event Data Source' , field : 'events.dataSource' , type : ElasticDataTypesEnum . STRING , visible : true } ,
130+ { label : 'Event Action' , field : 'events.action' , type : ElasticDataTypesEnum . STRING , visible : true } ,
131+ { label : 'Event Action Result' , field : 'events.actionResult' , type : ElasticDataTypesEnum . STRING , visible : true } ,
132+ { label : 'Event Severity' , field : 'events.severity' , type : ElasticDataTypesEnum . STRING , visible : true } ,
133+ { label : 'Event Protocol' , field : 'events.protocol' , type : ElasticDataTypesEnum . STRING , visible : true } ,
134+ { label : 'Event Connection Status' , field : 'events.connectionStatus' , type : ElasticDataTypesEnum . STRING , visible : true } ,
135+ { label : 'Event Status Code' , field : 'events.statusCode' , type : ElasticDataTypesEnum . NUMBER , visible : true } ,
136+ { label : 'Event Tenant Name' , field : 'events.tenantName' , type : ElasticDataTypesEnum . STRING , visible : true } ,
137+ // Origin
138+ { label : 'Event Origin IP' , field : 'events.origin.ip' , type : ElasticDataTypesEnum . STRING , visible : true } ,
139+ { label : 'Event Origin Host' , field : 'events.origin.host' , type : ElasticDataTypesEnum . STRING , visible : true } ,
140+ { label : 'Event Origin User' , field : 'events.origin.user' , type : ElasticDataTypesEnum . STRING , visible : true } ,
141+ { label : 'Event Origin Port' , field : 'events.origin.port' , type : ElasticDataTypesEnum . NUMBER , visible : true } ,
142+ { label : 'Event Origin Domain' , field : 'events.origin.domain' , type : ElasticDataTypesEnum . STRING , visible : true } ,
143+ { label : 'Event Origin URL' , field : 'events.origin.url' , type : ElasticDataTypesEnum . STRING , visible : true } ,
144+ { label : 'Event Origin Country' , field : 'events.origin.geolocation.country' , type : ElasticDataTypesEnum . STRING , visible : true } ,
145+ { label : 'Event Origin Country Code' , field : 'events.origin.geolocation.countryCode' , type : ElasticDataTypesEnum . STRING , visible : true } ,
146+ { label : 'Event Origin City' , field : 'events.origin.geolocation.city' , type : ElasticDataTypesEnum . STRING , visible : true } ,
147+ { label : 'Event Origin ASN' , field : 'events.origin.geolocation.asn' , type : ElasticDataTypesEnum . STRING , visible : true } ,
148+ { label : 'Event Origin ASO' , field : 'events.origin.geolocation.aso' , type : ElasticDataTypesEnum . STRING , visible : true } ,
149+ // Target
150+ { label : 'Event Target IP' , field : 'events.target.ip' , type : ElasticDataTypesEnum . STRING , visible : true } ,
151+ { label : 'Event Target Host' , field : 'events.target.host' , type : ElasticDataTypesEnum . STRING , visible : true } ,
152+ { label : 'Event Target User' , field : 'events.target.user' , type : ElasticDataTypesEnum . STRING , visible : true } ,
153+ { label : 'Event Target Port' , field : 'events.target.port' , type : ElasticDataTypesEnum . NUMBER , visible : true } ,
154+ { label : 'Event Target URL' , field : 'events.target.url' , type : ElasticDataTypesEnum . STRING , visible : true } ,
155+ { label : 'Event Target Domain' , field : 'events.target.domain' , type : ElasticDataTypesEnum . STRING , visible : true } ,
156+ { label : 'Event Target File' , field : 'events.target.file' , type : ElasticDataTypesEnum . STRING , visible : true } ,
157+ { label : 'Event Target Country' , field : 'events.target.geolocation.country' , type : ElasticDataTypesEnum . STRING , visible : true } ,
158+ { label : 'Event Target Country Code' , field : 'events.target.geolocation.countryCode' , type : ElasticDataTypesEnum . STRING , visible : true } ,
159+ { label : 'Event Target City' , field : 'events.target.geolocation.city' , type : ElasticDataTypesEnum . STRING , visible : true } ,
160+ { label : 'Event Target ASN' , field : 'events.target.geolocation.asn' , type : ElasticDataTypesEnum . STRING , visible : true } ,
161+ { label : 'Event Target ASO' , field : 'events.target.geolocation.aso' , type : ElasticDataTypesEnum . STRING , visible : true } ,
162+ ] ;
163+
123164export const ALERT_FIELDS : UtmFieldType [ ] = [
124165 {
125166 label : 'Alert name' ,
0 commit comments