@x12i/memorix-retrieval 1.18.0 → 1.20.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.
- package/README.md +1 -1
- package/catalox-seeds/inputs/entity-descriptors/assets.json +73 -38
- package/catalox-seeds/inputs/entity-descriptors/topology-subnets.json +127 -0
- package/catalox-seeds/inputs/entity-descriptors/variabilities-groups.json +22 -33
- package/catalox-seeds/inputs/entity-descriptors/vulnerabilities.json +19 -30
- package/catalox-seeds/inputs/item-descriptors/asset-detail-item.json +20 -6
- package/catalox-seeds/inputs/item-descriptors/topology-subnet-detail-item.json +41 -0
- package/catalox-seeds/inputs/item-descriptors/variabilities-group-detail-item.json +5 -5
- package/catalox-seeds/inputs/item-descriptors/vulnerability-detail-item.json +5 -5
- package/catalox-seeds/inputs/list-descriptors/assets-main-list.json +4 -0
- package/catalox-seeds/inputs/list-descriptors/critical-vulnerabilities-list.json +5 -5
- package/catalox-seeds/inputs/list-descriptors/critical-vulnerabilities-slice.json +1 -1
- package/catalox-seeds/inputs/list-descriptors/topology-subnets-main-list.json +23 -0
- package/catalox-seeds/inputs/list-descriptors/variabilities-groups-main-list.json +3 -3
- package/catalox-seeds/inputs/list-descriptors/vulnerabilities-main-list.json +3 -3
- package/catalox-seeds/inputs/memorix-descriptors.bundle.json +328 -330
- package/catalox-seeds/inputs/memorix-item-descriptors.catalog.json +16 -16
- package/catalox-seeds/inputs/memorix-item-descriptors.items.json +16 -16
- package/catalox-seeds/inputs/memorix-list-descriptors.catalog.json +11 -11
- package/catalox-seeds/inputs/memorix-list-descriptors.items.json +41 -11
- package/catalox-seeds/inputs/memorix-object-type-descriptors.catalog.json +279 -303
- package/catalox-seeds/inputs/memorix-object-type-descriptors.items.json +279 -303
- package/catalox-seeds/memorix-retrieval-descriptors.manifest.json +411 -147
- package/dist/data/record-identity.d.ts +1 -1
- package/dist/data/record-identity.d.ts.map +1 -1
- package/dist/data/record-identity.js +30 -17
- package/dist/data/record-identity.js.map +1 -1
- package/dist/errors/errors.d.ts.map +1 -1
- package/dist/errors/errors.js +2 -1
- package/dist/errors/errors.js.map +1 -1
- package/dist/logging/logger.d.ts.map +1 -1
- package/dist/logging/logger.js +2 -1
- package/dist/logging/logger.js.map +1 -1
- package/dist/mongo/connection.d.ts.map +1 -1
- package/dist/mongo/connection.js +2 -1
- package/dist/mongo/connection.js.map +1 -1
- package/dist/seeds/build-manifest.d.ts.map +1 -1
- package/dist/seeds/build-manifest.js +29 -1
- package/dist/seeds/build-manifest.js.map +1 -1
- package/dist/seeds/default-seed-spec.d.ts.map +1 -1
- package/dist/seeds/default-seed-spec.js +4 -0
- package/dist/seeds/default-seed-spec.js.map +1 -1
- package/dist/seeds/merge-for-apply.d.ts.map +1 -1
- package/dist/seeds/merge-for-apply.js +3 -1
- package/dist/seeds/merge-for-apply.js.map +1 -1
- package/dist/tests/collection-parser.test.js +8 -3
- package/dist/tests/collection-parser.test.js.map +1 -1
- package/dist/tests/seed-manifest.test.js +3 -3
- package/dist/tests/seed-manifest.test.js.map +1 -1
- package/dist/tests/source-provenance.test.js +14 -8
- package/dist/tests/source-provenance.test.js.map +1 -1
- package/docs/MEMORIX-DATABASE-CONVENTIONS.md +48 -27
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -310,7 +310,7 @@ const health = await getMemorixRetrievalHealth(client, { includeInventory: true
|
|
|
310
310
|
|
|
311
311
|
## Logging
|
|
312
312
|
|
|
313
|
-
Retrieval uses [`@x12i/logxer`](https://www.npmjs.com/package/@x12i/logxer) **≥
|
|
313
|
+
Retrieval uses [`@x12i/logxer`](https://www.npmjs.com/package/@x12i/logxer) **≥ 5.1.0** (dual ESM/CJS; use `@x12i/logxer/package-levels` or `@x12i/logxer/diagnostics` in browser-safe code — never the main entry). Pass host `logging` through constructors; retrieval forwards it to logxer as `{ stack }` and does not manage host-wide registries.
|
|
314
314
|
|
|
315
315
|
### Environment (this package only)
|
|
316
316
|
|
|
@@ -7,19 +7,20 @@
|
|
|
7
7
|
"collectionPrefix": "assets",
|
|
8
8
|
"identity": {
|
|
9
9
|
"allowedIdFields": [
|
|
10
|
-
"
|
|
11
|
-
"
|
|
10
|
+
"identity.recordId",
|
|
11
|
+
"identity.targetId"
|
|
12
12
|
],
|
|
13
13
|
"requiredExactlyOne": true,
|
|
14
|
-
"defaultIdField": "
|
|
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.
|
|
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.
|
|
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": "
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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": "
|
|
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": "
|
|
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": "
|
|
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": "
|
|
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": "
|
|
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": "
|
|
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": "
|
|
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": "
|
|
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": "
|
|
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
|
-
"
|
|
326
|
+
"severity",
|
|
292
327
|
"riskLevel",
|
|
293
328
|
"priorityScore",
|
|
294
|
-
"
|
|
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": "variabilities-groups",
|
|
8
8
|
"identity": {
|
|
9
9
|
"allowedIdFields": [
|
|
10
|
-
"
|
|
11
|
-
"
|
|
10
|
+
"identity.recordId",
|
|
11
|
+
"identity.targetId"
|
|
12
12
|
],
|
|
13
13
|
"requiredExactlyOne": true,
|
|
14
|
-
"defaultIdField": "
|
|
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.enrichedAt",
|
|
23
24
|
"data.enrichment.enrichedAt"
|
|
@@ -29,8 +30,9 @@
|
|
|
29
30
|
"collection": "variabilities-groups-snapshots",
|
|
30
31
|
"dataRoot": "data",
|
|
31
32
|
"isCanonical": true,
|
|
32
|
-
"effectiveDatePath": "capturedAt",
|
|
33
|
+
"effectiveDatePath": "lifecycle.capturedAt",
|
|
33
34
|
"fallbackEffectiveDatePaths": [
|
|
35
|
+
"capturedAt",
|
|
34
36
|
"snapshot.capturedAt",
|
|
35
37
|
"data.enrichedAt",
|
|
36
38
|
"data.enrichment.enrichedAt"
|
|
@@ -42,7 +44,7 @@
|
|
|
42
44
|
"label": "Group ID",
|
|
43
45
|
"source": {
|
|
44
46
|
"contentType": "snapshots",
|
|
45
|
-
"path": "
|
|
47
|
+
"path": "sourceFacts.values.id.rawValue"
|
|
46
48
|
},
|
|
47
49
|
"humanReadable": true,
|
|
48
50
|
"sortable": true,
|
|
@@ -55,7 +57,7 @@
|
|
|
55
57
|
"label": "Type",
|
|
56
58
|
"source": {
|
|
57
59
|
"contentType": "snapshots",
|
|
58
|
-
"path": "
|
|
60
|
+
"path": "sourceFacts.values.type.rawValue"
|
|
59
61
|
},
|
|
60
62
|
"humanReadable": true,
|
|
61
63
|
"sortable": true,
|
|
@@ -68,7 +70,7 @@
|
|
|
68
70
|
"label": "Plugin ID",
|
|
69
71
|
"source": {
|
|
70
72
|
"contentType": "snapshots",
|
|
71
|
-
"path": "
|
|
73
|
+
"path": "sourceFacts.values.plugin_id.rawValue"
|
|
72
74
|
},
|
|
73
75
|
"humanReadable": true,
|
|
74
76
|
"sortable": true,
|
|
@@ -81,7 +83,7 @@
|
|
|
81
83
|
"label": "Plugin Name",
|
|
82
84
|
"source": {
|
|
83
85
|
"contentType": "snapshots",
|
|
84
|
-
"path": "data.
|
|
86
|
+
"path": "data.name"
|
|
85
87
|
},
|
|
86
88
|
"humanReadable": true,
|
|
87
89
|
"sortable": true,
|
|
@@ -94,7 +96,7 @@
|
|
|
94
96
|
"label": "Plugin Family",
|
|
95
97
|
"source": {
|
|
96
98
|
"contentType": "snapshots",
|
|
97
|
-
"path": "data.
|
|
99
|
+
"path": "data.vulnerability_family"
|
|
98
100
|
},
|
|
99
101
|
"humanReadable": true,
|
|
100
102
|
"sortable": true,
|
|
@@ -116,24 +118,11 @@
|
|
|
116
118
|
"item": true,
|
|
117
119
|
"valueType": "string"
|
|
118
120
|
},
|
|
119
|
-
"severityLevel": {
|
|
120
|
-
"label": "Severity Level",
|
|
121
|
-
"source": {
|
|
122
|
-
"contentType": "snapshots",
|
|
123
|
-
"path": "data.severity_level"
|
|
124
|
-
},
|
|
125
|
-
"humanReadable": true,
|
|
126
|
-
"sortable": true,
|
|
127
|
-
"filterable": true,
|
|
128
|
-
"list": true,
|
|
129
|
-
"item": true,
|
|
130
|
-
"valueType": "number"
|
|
131
|
-
},
|
|
132
121
|
"affectedEntities": {
|
|
133
122
|
"label": "Affected Entities",
|
|
134
123
|
"source": {
|
|
135
124
|
"contentType": "snapshots",
|
|
136
|
-
"path": "
|
|
125
|
+
"path": "associatedData.affectedAssets"
|
|
137
126
|
},
|
|
138
127
|
"humanReadable": true,
|
|
139
128
|
"sortable": false,
|
|
@@ -146,7 +135,7 @@
|
|
|
146
135
|
"label": "Affected Entities Count",
|
|
147
136
|
"source": {
|
|
148
137
|
"contentType": "snapshots",
|
|
149
|
-
"path": "
|
|
138
|
+
"path": "associatedData.affectedAssets"
|
|
150
139
|
},
|
|
151
140
|
"humanReadable": true,
|
|
152
141
|
"sortable": false,
|
|
@@ -169,18 +158,18 @@
|
|
|
169
158
|
"item": true,
|
|
170
159
|
"valueType": "string"
|
|
171
160
|
},
|
|
172
|
-
"
|
|
173
|
-
"label": "
|
|
161
|
+
"cveId": {
|
|
162
|
+
"label": "CVE",
|
|
174
163
|
"source": {
|
|
175
164
|
"contentType": "snapshots",
|
|
176
|
-
"path": "data.
|
|
165
|
+
"path": "data.cveId"
|
|
177
166
|
},
|
|
178
167
|
"humanReadable": true,
|
|
179
|
-
"sortable":
|
|
168
|
+
"sortable": true,
|
|
180
169
|
"filterable": true,
|
|
181
170
|
"list": true,
|
|
182
171
|
"item": true,
|
|
183
|
-
"valueType": "
|
|
172
|
+
"valueType": "string"
|
|
184
173
|
},
|
|
185
174
|
"riskLevel": {
|
|
186
175
|
"label": "Risk Level",
|
|
@@ -293,11 +282,11 @@
|
|
|
293
282
|
"type": "oneToMany",
|
|
294
283
|
"source": {
|
|
295
284
|
"contentType": "snapshots",
|
|
296
|
-
"path": "
|
|
285
|
+
"path": "sourceFacts.values.plugin_id.rawValue"
|
|
297
286
|
},
|
|
298
287
|
"target": {
|
|
299
288
|
"contentType": "snapshots",
|
|
300
|
-
"path": "
|
|
289
|
+
"path": "sourceFacts.values.pluginId.rawValue"
|
|
301
290
|
},
|
|
302
291
|
"defaultMode": "array",
|
|
303
292
|
"defaultArrayProperty": "vulnerabilities",
|
|
@@ -305,7 +294,7 @@
|
|
|
305
294
|
"vulnerabilityId",
|
|
306
295
|
"assetIp",
|
|
307
296
|
"pluginName",
|
|
308
|
-
"
|
|
297
|
+
"severity",
|
|
309
298
|
"riskLevel",
|
|
310
299
|
"priorityScore"
|
|
311
300
|
]
|
|
@@ -7,17 +7,18 @@
|
|
|
7
7
|
"collectionPrefix": "vulnerabilities",
|
|
8
8
|
"identity": {
|
|
9
9
|
"allowedIdFields": [
|
|
10
|
-
"
|
|
11
|
-
"
|
|
10
|
+
"identity.recordId",
|
|
11
|
+
"identity.targetId"
|
|
12
12
|
],
|
|
13
13
|
"requiredExactlyOne": true,
|
|
14
|
-
"defaultIdField": "
|
|
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": "
|
|
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": "
|
|
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.
|
|
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.
|
|
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
|
-
"
|
|
157
|
-
"label": "
|
|
158
|
+
"cveId": {
|
|
159
|
+
"label": "CVE",
|
|
158
160
|
"source": {
|
|
159
161
|
"contentType": "snapshots",
|
|
160
|
-
"path": "data.
|
|
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": "
|
|
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.
|
|
377
|
+
"path": "data.assetIp"
|
|
389
378
|
},
|
|
390
379
|
"defaultMode": "extendFields",
|
|
391
380
|
"targetFields": [
|
|
@@ -401,17 +390,17 @@
|
|
|
401
390
|
"type": "manyToOne",
|
|
402
391
|
"source": {
|
|
403
392
|
"contentType": "snapshots",
|
|
404
|
-
"path": "
|
|
393
|
+
"path": "sourceFacts.values.pluginId.rawValue"
|
|
405
394
|
},
|
|
406
395
|
"target": {
|
|
407
396
|
"contentType": "snapshots",
|
|
408
|
-
"path": "
|
|
397
|
+
"path": "sourceFacts.values.plugin_id.rawValue"
|
|
409
398
|
},
|
|
410
399
|
"defaultMode": "extendFields",
|
|
411
400
|
"targetFields": [
|
|
412
401
|
"groupId",
|
|
413
402
|
"pluginName",
|
|
414
|
-
"
|
|
403
|
+
"severity",
|
|
415
404
|
"affectedEntitiesCount",
|
|
416
405
|
"riskLevel",
|
|
417
406
|
"priorityScore"
|