@x12i/memorix-retrieval 1.19.0 → 1.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/catalox-seeds/inputs/entity-descriptors/assets.json +73 -38
  2. package/catalox-seeds/inputs/entity-descriptors/topology-subnets.json +127 -0
  3. package/catalox-seeds/inputs/entity-descriptors/vulnerabilities.json +16 -48
  4. package/catalox-seeds/inputs/item-descriptors/asset-detail-item.json +20 -6
  5. package/catalox-seeds/inputs/item-descriptors/topology-subnet-detail-item.json +41 -0
  6. package/catalox-seeds/inputs/item-descriptors/vulnerability-detail-item.json +5 -5
  7. package/catalox-seeds/inputs/list-descriptors/assets-main-list.json +4 -0
  8. package/catalox-seeds/inputs/list-descriptors/critical-vulnerabilities-list.json +5 -5
  9. package/catalox-seeds/inputs/list-descriptors/critical-vulnerabilities-slice.json +1 -1
  10. package/catalox-seeds/inputs/list-descriptors/topology-subnets-main-list.json +23 -0
  11. package/catalox-seeds/inputs/list-descriptors/vulnerabilities-main-list.json +3 -3
  12. package/catalox-seeds/inputs/manifest.json +8 -15
  13. package/catalox-seeds/memorix-retrieval-descriptors.manifest.json +267 -494
  14. package/dist/data/record-identity.d.ts +1 -1
  15. package/dist/data/record-identity.d.ts.map +1 -1
  16. package/dist/data/record-identity.js +30 -17
  17. package/dist/data/record-identity.js.map +1 -1
  18. package/dist/seeds/build-manifest.d.ts.map +1 -1
  19. package/dist/seeds/build-manifest.js +30 -2
  20. package/dist/seeds/build-manifest.js.map +1 -1
  21. package/dist/seeds/default-seed-spec.js +4 -4
  22. package/dist/seeds/default-seed-spec.js.map +1 -1
  23. package/dist/seeds/merge-for-apply.d.ts.map +1 -1
  24. package/dist/seeds/merge-for-apply.js +3 -1
  25. package/dist/seeds/merge-for-apply.js.map +1 -1
  26. package/dist/tests/collection-parser.test.js +8 -3
  27. package/dist/tests/collection-parser.test.js.map +1 -1
  28. package/dist/tests/seed-manifest.test.js +3 -3
  29. package/dist/tests/seed-manifest.test.js.map +1 -1
  30. package/dist/tests/source-provenance.test.js +14 -8
  31. package/dist/tests/source-provenance.test.js.map +1 -1
  32. package/docs/MEMORIX-CATALOX-CONTRACTS.md +5 -5
  33. package/docs/MEMORIX-DATABASE-CONVENTIONS.md +48 -30
  34. package/package.json +4 -4
  35. package/catalox-seeds/inputs/entity-descriptors/variabilities-groups.json +0 -314
  36. package/catalox-seeds/inputs/item-descriptors/variabilities-group-detail-item.json +0 -87
  37. package/catalox-seeds/inputs/list-descriptors/variabilities-groups-main-list.json +0 -43
  38. package/catalox-seeds/inputs/memorix-descriptors.bundle.json +0 -1502
  39. package/catalox-seeds/inputs/memorix-item-descriptors.catalog.json +0 -283
  40. package/catalox-seeds/inputs/memorix-item-descriptors.items.json +0 -280
  41. package/catalox-seeds/inputs/memorix-list-descriptors.catalog.json +0 -207
  42. package/catalox-seeds/inputs/memorix-list-descriptors.items.json +0 -204
  43. package/catalox-seeds/inputs/memorix-object-type-descriptors.catalog.json +0 -1029
  44. package/catalox-seeds/inputs/memorix-object-type-descriptors.items.json +0 -1026
@@ -7,19 +7,20 @@
7
7
  "collectionPrefix": "assets",
8
8
  "identity": {
9
9
  "allowedIdFields": [
10
- "entityId",
11
- "eventId"
10
+ "identity.recordId",
11
+ "identity.targetId"
12
12
  ],
13
13
  "requiredExactlyOne": true,
14
- "defaultIdField": "entityId"
14
+ "defaultIdField": "identity.recordId"
15
15
  },
16
16
  "defaults": {
17
17
  "canonicalContentType": "snapshots",
18
18
  "dataRoot": "data",
19
- "effectiveDatePath": "capturedAt",
19
+ "effectiveDatePath": "lifecycle.capturedAt",
20
20
  "fallbackEffectiveDatePaths": [
21
+ "capturedAt",
21
22
  "snapshot.capturedAt",
22
- "data.xdr.last_seen"
23
+ "data.lastSeen"
23
24
  ]
24
25
  },
25
26
  "contentTypes": {
@@ -28,10 +29,11 @@
28
29
  "collection": "assets-snapshots",
29
30
  "dataRoot": "data",
30
31
  "isCanonical": true,
31
- "effectiveDatePath": "capturedAt",
32
+ "effectiveDatePath": "lifecycle.capturedAt",
32
33
  "fallbackEffectiveDatePaths": [
34
+ "capturedAt",
33
35
  "snapshot.capturedAt",
34
- "data.xdr.last_seen"
36
+ "data.lastSeen"
35
37
  ]
36
38
  }
37
39
  },
@@ -49,11 +51,37 @@
49
51
  "item": true,
50
52
  "valueType": "string"
51
53
  },
54
+ "subnetIp": {
55
+ "label": "Subnet IP",
56
+ "source": {
57
+ "contentType": "snapshots",
58
+ "path": "data.subnetIp"
59
+ },
60
+ "humanReadable": true,
61
+ "sortable": true,
62
+ "filterable": true,
63
+ "list": true,
64
+ "item": true,
65
+ "valueType": "string"
66
+ },
67
+ "subnetId": {
68
+ "label": "Subnet ID",
69
+ "source": {
70
+ "contentType": "snapshots",
71
+ "path": "data.subnetId"
72
+ },
73
+ "humanReadable": true,
74
+ "sortable": true,
75
+ "filterable": true,
76
+ "list": true,
77
+ "item": true,
78
+ "valueType": "string"
79
+ },
52
80
  "source": {
53
81
  "label": "Source",
54
82
  "source": {
55
83
  "contentType": "snapshots",
56
- "path": "data._source"
84
+ "path": "sourceFacts.values._source.rawValue"
57
85
  },
58
86
  "humanReadable": true,
59
87
  "sortable": true,
@@ -66,7 +94,7 @@
66
94
  "label": "Host Name",
67
95
  "source": {
68
96
  "contentType": "snapshots",
69
- "path": "data.xdr.host_name"
97
+ "path": "data.assetName"
70
98
  },
71
99
  "humanReadable": true,
72
100
  "sortable": true,
@@ -79,7 +107,7 @@
79
107
  "label": "XDR Operational Status",
80
108
  "source": {
81
109
  "contentType": "snapshots",
82
- "path": "data.xdr.operational_status"
110
+ "path": "data.operationalStatus"
83
111
  },
84
112
  "humanReadable": true,
85
113
  "sortable": true,
@@ -92,7 +120,7 @@
92
120
  "label": "XDR Agent Status",
93
121
  "source": {
94
122
  "contentType": "snapshots",
95
- "path": "data.xdr.agent_status"
123
+ "path": "data.agentStatus"
96
124
  },
97
125
  "humanReadable": true,
98
126
  "sortable": true,
@@ -105,7 +133,7 @@
105
133
  "label": "Agent Type",
106
134
  "source": {
107
135
  "contentType": "snapshots",
108
- "path": "data.xdr.agent_type"
136
+ "path": "data.agentType"
109
137
  },
110
138
  "humanReadable": true,
111
139
  "sortable": true,
@@ -118,7 +146,7 @@
118
146
  "label": "Last Seen",
119
147
  "source": {
120
148
  "contentType": "snapshots",
121
- "path": "data.xdr.last_seen"
149
+ "path": "data.lastSeen"
122
150
  },
123
151
  "humanReadable": true,
124
152
  "sortable": true,
@@ -127,24 +155,11 @@
127
155
  "item": true,
128
156
  "valueType": "datetime"
129
157
  },
130
- "users": {
131
- "label": "Users",
132
- "source": {
133
- "contentType": "snapshots",
134
- "path": "data.xdr.users"
135
- },
136
- "humanReadable": true,
137
- "sortable": false,
138
- "filterable": true,
139
- "list": true,
140
- "item": true,
141
- "valueType": "array"
142
- },
143
158
  "hasVulnerabilities": {
144
159
  "label": "Has Vulnerabilities",
145
160
  "source": {
146
161
  "contentType": "snapshots",
147
- "path": "data.vulnerabilities.hasVulnerabilities"
162
+ "path": "data.hasVulnerabilities"
148
163
  },
149
164
  "humanReadable": true,
150
165
  "sortable": true,
@@ -157,7 +172,7 @@
157
172
  "label": "Critical Vulnerabilities",
158
173
  "source": {
159
174
  "contentType": "snapshots",
160
- "path": "data.vulnerabilities.count.critical"
175
+ "path": "analytics.vulnerabilities.critical"
161
176
  },
162
177
  "humanReadable": true,
163
178
  "sortable": true,
@@ -170,7 +185,7 @@
170
185
  "label": "High Vulnerabilities",
171
186
  "source": {
172
187
  "contentType": "snapshots",
173
- "path": "data.vulnerabilities.count.high"
188
+ "path": "analytics.vulnerabilities.high"
174
189
  },
175
190
  "humanReadable": true,
176
191
  "sortable": true,
@@ -183,7 +198,7 @@
183
198
  "label": "Medium Vulnerabilities",
184
199
  "source": {
185
200
  "contentType": "snapshots",
186
- "path": "data.vulnerabilities.count.medium"
201
+ "path": "analytics.vulnerabilities.medium"
187
202
  },
188
203
  "humanReadable": true,
189
204
  "sortable": true,
@@ -196,7 +211,7 @@
196
211
  "label": "Low Vulnerabilities",
197
212
  "source": {
198
213
  "contentType": "snapshots",
199
- "path": "data.vulnerabilities.count.low"
214
+ "path": "analytics.vulnerabilities.low"
200
215
  },
201
216
  "humanReadable": true,
202
217
  "sortable": true,
@@ -209,7 +224,7 @@
209
224
  "label": "Potential Impact",
210
225
  "source": {
211
226
  "contentType": "snapshots",
212
- "path": "data.potentialImpact.level"
227
+ "path": "insights.potentialImpact.level"
213
228
  },
214
229
  "humanReadable": true,
215
230
  "sortable": true,
@@ -222,7 +237,7 @@
222
237
  "label": "Impact Confidence",
223
238
  "source": {
224
239
  "contentType": "snapshots",
225
- "path": "data.potentialImpact.confidence"
240
+ "path": "insights.potentialImpact.confidence"
226
241
  },
227
242
  "humanReadable": true,
228
243
  "sortable": true,
@@ -235,7 +250,7 @@
235
250
  "label": "Potential Impact Story",
236
251
  "source": {
237
252
  "contentType": "snapshots",
238
- "path": "data.potentialImpact.story"
253
+ "path": "insights.potentialImpact.story"
239
254
  },
240
255
  "humanReadable": false,
241
256
  "sortable": false,
@@ -248,7 +263,7 @@
248
263
  "label": "Paths Count",
249
264
  "source": {
250
265
  "contentType": "snapshots",
251
- "path": "data.pathsCount"
266
+ "path": "analytics.paths.total"
252
267
  },
253
268
  "humanReadable": true,
254
269
  "sortable": true,
@@ -261,7 +276,7 @@
261
276
  "label": "Raw XDR",
262
277
  "source": {
263
278
  "contentType": "snapshots",
264
- "path": "data.xdr"
279
+ "path": "sourceFacts.values.xdrRaw.rawValue"
265
280
  },
266
281
  "humanReadable": false,
267
282
  "sortable": false,
@@ -272,6 +287,26 @@
272
287
  }
273
288
  },
274
289
  "relations": {
290
+ "assetSubnet": {
291
+ "targetEntity": "topology-subnets",
292
+ "type": "manyToOne",
293
+ "source": {
294
+ "contentType": "snapshots",
295
+ "path": "data.subnetId"
296
+ },
297
+ "target": {
298
+ "contentType": "snapshots",
299
+ "path": "data.subnetId"
300
+ },
301
+ "defaultMode": "record",
302
+ "targetFields": [
303
+ "subnetId",
304
+ "subnetIp",
305
+ "cidr",
306
+ "zone",
307
+ "vr"
308
+ ]
309
+ },
275
310
  "assetVulnerabilities": {
276
311
  "targetEntity": "vulnerabilities",
277
312
  "type": "oneToMany",
@@ -288,10 +323,10 @@
288
323
  "targetFields": [
289
324
  "vulnerabilityId",
290
325
  "pluginName",
291
- "severityLevel",
326
+ "severity",
292
327
  "riskLevel",
293
328
  "priorityScore",
294
- "cveIds"
329
+ "cveId"
295
330
  ]
296
331
  }
297
332
  }
@@ -0,0 +1,127 @@
1
+ {
2
+ "id": "topology-subnets",
3
+ "entityName": "topology-subnets",
4
+ "target": "entity",
5
+ "defaultListDescriptorId": "topology-subnets-main-list",
6
+ "defaultItemDescriptorId": "topology-subnet-detail-item",
7
+ "collectionPrefix": "topology-subnets",
8
+ "identity": {
9
+ "allowedIdFields": [
10
+ "entityId",
11
+ "recordId",
12
+ "_id"
13
+ ],
14
+ "requiredExactlyOne": false,
15
+ "defaultIdField": "entityId"
16
+ },
17
+ "defaults": {
18
+ "canonicalContentType": "snapshots",
19
+ "dataRoot": "data",
20
+ "effectiveDatePath": "capturedAt",
21
+ "fallbackEffectiveDatePaths": [
22
+ "modifiedAt",
23
+ "createdAt"
24
+ ]
25
+ },
26
+ "contentTypes": {
27
+ "snapshots": {
28
+ "postfix": "snapshots",
29
+ "collection": "topology-subnets-snapshots",
30
+ "isCanonical": true
31
+ }
32
+ },
33
+ "properties": {
34
+ "recordId": {
35
+ "label": "Record ID",
36
+ "source": {
37
+ "contentType": "snapshots",
38
+ "path": "recordId"
39
+ },
40
+ "humanReadable": true,
41
+ "sortable": true,
42
+ "filterable": true,
43
+ "list": true,
44
+ "item": true,
45
+ "valueType": "string"
46
+ },
47
+ "subnetIp": {
48
+ "label": "Subnet",
49
+ "source": {
50
+ "contentType": "snapshots",
51
+ "path": "data.subnetIp"
52
+ },
53
+ "humanReadable": true,
54
+ "sortable": true,
55
+ "filterable": true,
56
+ "list": true,
57
+ "item": true,
58
+ "valueType": "string"
59
+ },
60
+ "subnetId": {
61
+ "label": "Subnet ID",
62
+ "source": {
63
+ "contentType": "snapshots",
64
+ "path": "data.subnetId"
65
+ },
66
+ "humanReadable": true,
67
+ "sortable": true,
68
+ "filterable": true,
69
+ "list": true,
70
+ "item": true,
71
+ "valueType": "string"
72
+ },
73
+ "cidr": {
74
+ "label": "Subnet CIDR",
75
+ "source": {
76
+ "contentType": "snapshots",
77
+ "path": "data.cidr"
78
+ },
79
+ "humanReadable": true,
80
+ "sortable": true,
81
+ "filterable": true,
82
+ "list": true,
83
+ "item": true,
84
+ "valueType": "string"
85
+ },
86
+ "zone": {
87
+ "label": "Zone",
88
+ "source": {
89
+ "contentType": "snapshots",
90
+ "path": "data.zone"
91
+ },
92
+ "humanReadable": true,
93
+ "sortable": true,
94
+ "filterable": true,
95
+ "list": true,
96
+ "item": true,
97
+ "valueType": "string"
98
+ },
99
+ "zoneClass": {
100
+ "label": "Zone Class",
101
+ "source": {
102
+ "contentType": "snapshots",
103
+ "path": "data.zoneClass"
104
+ },
105
+ "humanReadable": true,
106
+ "sortable": true,
107
+ "filterable": true,
108
+ "list": false,
109
+ "item": true,
110
+ "valueType": "string"
111
+ },
112
+ "vr": {
113
+ "label": "VR",
114
+ "source": {
115
+ "contentType": "snapshots",
116
+ "path": "data.vr"
117
+ },
118
+ "humanReadable": true,
119
+ "sortable": true,
120
+ "filterable": true,
121
+ "list": true,
122
+ "item": true,
123
+ "valueType": "string"
124
+ }
125
+ },
126
+ "relations": {}
127
+ }
@@ -7,17 +7,18 @@
7
7
  "collectionPrefix": "vulnerabilities",
8
8
  "identity": {
9
9
  "allowedIdFields": [
10
- "entityId",
11
- "eventId"
10
+ "identity.recordId",
11
+ "identity.targetId"
12
12
  ],
13
13
  "requiredExactlyOne": true,
14
- "defaultIdField": "entityId"
14
+ "defaultIdField": "identity.recordId"
15
15
  },
16
16
  "defaults": {
17
17
  "canonicalContentType": "snapshots",
18
18
  "dataRoot": "data",
19
- "effectiveDatePath": "capturedAt",
19
+ "effectiveDatePath": "lifecycle.capturedAt",
20
20
  "fallbackEffectiveDatePaths": [
21
+ "capturedAt",
21
22
  "snapshot.capturedAt",
22
23
  "data.enrichment.enrichedAt"
23
24
  ]
@@ -28,8 +29,9 @@
28
29
  "collection": "vulnerabilities-snapshots",
29
30
  "dataRoot": "data",
30
31
  "isCanonical": true,
31
- "effectiveDatePath": "capturedAt",
32
+ "effectiveDatePath": "lifecycle.capturedAt",
32
33
  "fallbackEffectiveDatePaths": [
34
+ "capturedAt",
33
35
  "snapshot.capturedAt",
34
36
  "data.enrichment.enrichedAt"
35
37
  ]
@@ -40,7 +42,7 @@
40
42
  "label": "Vulnerability ID",
41
43
  "source": {
42
44
  "contentType": "snapshots",
43
- "path": "data.vulnerabilityId"
45
+ "path": "sourceFacts.values.vulnerabilityId.rawValue"
44
46
  },
45
47
  "humanReadable": true,
46
48
  "sortable": true,
@@ -105,7 +107,7 @@
105
107
  "label": "Plugin ID",
106
108
  "source": {
107
109
  "contentType": "snapshots",
108
- "path": "data.pluginId"
110
+ "path": "sourceFacts.values.pluginId.rawValue"
109
111
  },
110
112
  "humanReadable": true,
111
113
  "sortable": true,
@@ -118,7 +120,7 @@
118
120
  "label": "Plugin Name",
119
121
  "source": {
120
122
  "contentType": "snapshots",
121
- "path": "data.pluginName"
123
+ "path": "data.vulnerabilityName"
122
124
  },
123
125
  "humanReadable": true,
124
126
  "sortable": true,
@@ -131,7 +133,7 @@
131
133
  "label": "Plugin Family",
132
134
  "source": {
133
135
  "contentType": "snapshots",
134
- "path": "data.pluginFamily"
136
+ "path": "data.vulnerabilityFamily"
135
137
  },
136
138
  "humanReadable": true,
137
139
  "sortable": true,
@@ -153,31 +155,18 @@
153
155
  "item": true,
154
156
  "valueType": "string"
155
157
  },
156
- "severityLevel": {
157
- "label": "Severity Level",
158
+ "cveId": {
159
+ "label": "CVE",
158
160
  "source": {
159
161
  "contentType": "snapshots",
160
- "path": "data.severityLevel"
162
+ "path": "data.cveId"
161
163
  },
162
164
  "humanReadable": true,
163
165
  "sortable": true,
164
166
  "filterable": true,
165
167
  "list": true,
166
168
  "item": true,
167
- "valueType": "number"
168
- },
169
- "cveIds": {
170
- "label": "CVEs",
171
- "source": {
172
- "contentType": "snapshots",
173
- "path": "data.cveIds"
174
- },
175
- "humanReadable": true,
176
- "sortable": false,
177
- "filterable": true,
178
- "list": true,
179
- "item": true,
180
- "valueType": "array"
169
+ "valueType": "string"
181
170
  },
182
171
  "riskLevel": {
183
172
  "label": "Risk Level",
@@ -385,7 +374,7 @@
385
374
  },
386
375
  "target": {
387
376
  "contentType": "snapshots",
388
- "path": "data.ip_address"
377
+ "path": "data.assetIp"
389
378
  },
390
379
  "defaultMode": "extendFields",
391
380
  "targetFields": [
@@ -395,27 +384,6 @@
395
384
  "xdrAgentStatus",
396
385
  "potentialImpactLevel"
397
386
  ]
398
- },
399
- "vulnerabilityGroup": {
400
- "targetEntity": "variabilities-groups",
401
- "type": "manyToOne",
402
- "source": {
403
- "contentType": "snapshots",
404
- "path": "data.pluginId"
405
- },
406
- "target": {
407
- "contentType": "snapshots",
408
- "path": "data.plugin_id"
409
- },
410
- "defaultMode": "extendFields",
411
- "targetFields": [
412
- "groupId",
413
- "pluginName",
414
- "severityLevel",
415
- "affectedEntitiesCount",
416
- "riskLevel",
417
- "priorityScore"
418
- ]
419
387
  }
420
388
  }
421
389
  }
@@ -3,7 +3,7 @@
3
3
  "entity": "assets",
4
4
  "title": "Asset Detail",
5
5
  "identity": {
6
- "idField": "entityId"
6
+ "idField": "identity.recordId"
7
7
  },
8
8
  "contentTypes": [
9
9
  {
@@ -11,10 +11,11 @@
11
11
  "required": true,
12
12
  "multiMatch": {
13
13
  "strategy": "last",
14
- "effectiveDatePath": "capturedAt",
14
+ "effectiveDatePath": "lifecycle.capturedAt",
15
15
  "fallbackEffectiveDatePaths": [
16
+ "capturedAt",
16
17
  "snapshot.capturedAt",
17
- "data.xdr.last_seen"
18
+ "data.lastSeen"
18
19
  ]
19
20
  }
20
21
  }
@@ -25,6 +26,8 @@
25
26
  "title": "Summary",
26
27
  "fields": [
27
28
  "ipAddress",
29
+ "subnetId",
30
+ "subnetIp",
28
31
  "hostName",
29
32
  "source",
30
33
  "agentType",
@@ -58,12 +61,23 @@
58
61
  "id": "xdr",
59
62
  "title": "XDR",
60
63
  "fields": [
61
- "users",
62
64
  "rawXdr"
63
65
  ]
64
66
  }
65
67
  ],
66
68
  "includeRelations": [
69
+ {
70
+ "relation": "assetSubnet",
71
+ "mode": "record",
72
+ "limit": 1,
73
+ "fields": [
74
+ "subnetId",
75
+ "subnetIp",
76
+ "cidr",
77
+ "zone",
78
+ "vr"
79
+ ]
80
+ },
67
81
  {
68
82
  "relation": "assetVulnerabilities",
69
83
  "mode": "array",
@@ -72,10 +86,10 @@
72
86
  "fields": [
73
87
  "vulnerabilityId",
74
88
  "pluginName",
75
- "severityLevel",
89
+ "severity",
76
90
  "riskLevel",
77
91
  "priorityScore",
78
- "cveIds"
92
+ "cveId"
79
93
  ]
80
94
  }
81
95
  ],
@@ -0,0 +1,41 @@
1
+ {
2
+ "id": "topology-subnet-detail-item",
3
+ "entity": "topology-subnets",
4
+ "title": "Topology Subnet Detail",
5
+ "identity": {
6
+ "idField": "identity.recordId"
7
+ },
8
+ "contentTypes": [
9
+ {
10
+ "contentType": "snapshots",
11
+ "required": true,
12
+ "multiMatch": {
13
+ "strategy": "last",
14
+ "effectiveDatePath": "lifecycle.capturedAt",
15
+ "fallbackEffectiveDatePaths": [
16
+ "capturedAt",
17
+ "snapshot.capturedAt"
18
+ ]
19
+ }
20
+ }
21
+ ],
22
+ "sections": [
23
+ {
24
+ "id": "summary",
25
+ "title": "Summary",
26
+ "fields": [
27
+ "subnetId",
28
+ "subnetIp",
29
+ "cidr",
30
+ "zone",
31
+ "zoneClass",
32
+ "vr",
33
+ "recordId"
34
+ ]
35
+ }
36
+ ],
37
+ "includeRelations": [],
38
+ "content": {
39
+ "allowed": false
40
+ }
41
+ }
@@ -3,7 +3,7 @@
3
3
  "entity": "vulnerabilities",
4
4
  "title": "Vulnerability Detail",
5
5
  "identity": {
6
- "idField": "entityId"
6
+ "idField": "identity.recordId"
7
7
  },
8
8
  "contentTypes": [
9
9
  {
@@ -11,8 +11,9 @@
11
11
  "required": true,
12
12
  "multiMatch": {
13
13
  "strategy": "last",
14
- "effectiveDatePath": "capturedAt",
14
+ "effectiveDatePath": "lifecycle.capturedAt",
15
15
  "fallbackEffectiveDatePaths": [
16
+ "capturedAt",
16
17
  "snapshot.capturedAt",
17
18
  "data.enrichment.enrichedAt"
18
19
  ]
@@ -28,8 +29,7 @@
28
29
  "pluginName",
29
30
  "pluginFamily",
30
31
  "severity",
31
- "severityLevel",
32
- "cveIds"
32
+ "cveId"
33
33
  ]
34
34
  },
35
35
  {
@@ -93,7 +93,7 @@
93
93
  "fields": [
94
94
  "groupId",
95
95
  "pluginName",
96
- "severityLevel",
96
+ "severity",
97
97
  "affectedEntitiesCount",
98
98
  "riskLevel",
99
99
  "priorityScore"
@@ -11,6 +11,8 @@
11
11
  "filters": [],
12
12
  "fields": [
13
13
  "ipAddress",
14
+ "subnetId",
15
+ "subnetIp",
14
16
  "hostName",
15
17
  "source",
16
18
  "agentType",
@@ -26,6 +28,8 @@
26
28
  "includeRelations": [],
27
29
  "allowedSorts": [
28
30
  "ipAddress",
31
+ "subnetId",
32
+ "subnetIp",
29
33
  "hostName",
30
34
  "source",
31
35
  "agentType",