@ampsec/platform-client 58.8.0 → 58.9.1
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/build/src/dto/assets.dto.d.ts +31 -0
- package/build/src/dto/assets.dto.js +13 -1
- package/build/src/dto/assets.dto.js.map +1 -1
- package/build/src/dto/coverage.dto.d.ts +126 -26
- package/build/src/dto/coverage.dto.js +7 -1
- package/build/src/dto/coverage.dto.js.map +1 -1
- package/build/src/dto/users.dto.d.ts +8 -0
- package/build/src/dto/users.dto.js +4 -0
- package/build/src/dto/users.dto.js.map +1 -1
- package/build/src/services/utils.d.ts +9 -0
- package/build/src/services/utils.js +29 -1
- package/build/src/services/utils.js.map +1 -1
- package/build/src/settings.d.ts +6 -0
- package/build/src/settings.js +7 -0
- package/build/src/settings.js.map +1 -1
- package/package.json +1 -1
- package/src/dto/assets.dto.ts +14 -0
- package/src/dto/coverage.dto.ts +11 -2
- package/src/dto/users.dto.ts +4 -0
- package/src/services/utils.ts +35 -0
- package/src/settings.ts +8 -0
|
@@ -13,6 +13,37 @@ export declare const _SimpleAssetDto: z.ZodObject<{
|
|
|
13
13
|
displayValue?: string | undefined;
|
|
14
14
|
}>;
|
|
15
15
|
export type SimpleAssetDto = z.infer<typeof _SimpleAssetDto>;
|
|
16
|
+
export declare const _SummaryAssetDto: z.ZodObject<{
|
|
17
|
+
/** Id of the asset */
|
|
18
|
+
id: z.ZodOptional<z.ZodString>;
|
|
19
|
+
uid: z.ZodOptional<z.ZodString>;
|
|
20
|
+
/** Human readable name of the asset */
|
|
21
|
+
displayValue: z.ZodOptional<z.ZodString>;
|
|
22
|
+
sn: z.ZodOptional<z.ZodString>;
|
|
23
|
+
hostname: z.ZodOptional<z.ZodString>;
|
|
24
|
+
lastCheckinTs: z.ZodOptional<z.ZodString>;
|
|
25
|
+
os: z.ZodOptional<z.ZodString>;
|
|
26
|
+
model: z.ZodOptional<z.ZodString>;
|
|
27
|
+
}, "strip", z.ZodTypeAny, {
|
|
28
|
+
id?: string | undefined;
|
|
29
|
+
uid?: string | undefined;
|
|
30
|
+
displayValue?: string | undefined;
|
|
31
|
+
sn?: string | undefined;
|
|
32
|
+
hostname?: string | undefined;
|
|
33
|
+
lastCheckinTs?: string | undefined;
|
|
34
|
+
os?: string | undefined;
|
|
35
|
+
model?: string | undefined;
|
|
36
|
+
}, {
|
|
37
|
+
id?: string | undefined;
|
|
38
|
+
uid?: string | undefined;
|
|
39
|
+
displayValue?: string | undefined;
|
|
40
|
+
sn?: string | undefined;
|
|
41
|
+
hostname?: string | undefined;
|
|
42
|
+
lastCheckinTs?: string | undefined;
|
|
43
|
+
os?: string | undefined;
|
|
44
|
+
model?: string | undefined;
|
|
45
|
+
}>;
|
|
46
|
+
export type SummaryAssetDto = z.infer<typeof _SummaryAssetDto>;
|
|
16
47
|
export declare const _AssetUpsertDto: z.ZodObject<{
|
|
17
48
|
id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodUndefined]>>;
|
|
18
49
|
etag: z.ZodString;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports._AssetDto = exports._AssetUpsertDto = exports._SimpleAssetDto = void 0;
|
|
3
|
+
exports._AssetDto = exports._AssetUpsertDto = exports._SummaryAssetDto = exports._SimpleAssetDto = void 0;
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
5
|
const assetKeys_1 = require("./assetKeys");
|
|
6
6
|
const base_dto_1 = require("./base.dto");
|
|
@@ -11,6 +11,18 @@ exports._SimpleAssetDto = zod_1.z.object({
|
|
|
11
11
|
/** Human readable name of the asset */
|
|
12
12
|
displayValue: zod_1.z.string().optional(),
|
|
13
13
|
});
|
|
14
|
+
exports._SummaryAssetDto = zod_1.z.object({
|
|
15
|
+
/** Id of the asset */
|
|
16
|
+
id: zod_1.z.string().optional(),
|
|
17
|
+
uid: zod_1.z.string().optional(),
|
|
18
|
+
/** Human readable name of the asset */
|
|
19
|
+
displayValue: zod_1.z.string().optional(),
|
|
20
|
+
sn: zod_1.z.string().optional(),
|
|
21
|
+
hostname: zod_1.z.string().optional(),
|
|
22
|
+
lastCheckinTs: zod_1.z.string().optional(),
|
|
23
|
+
os: zod_1.z.string().optional(),
|
|
24
|
+
model: zod_1.z.string().optional(),
|
|
25
|
+
});
|
|
14
26
|
exports._AssetUpsertDto = base_dto_1._ChangeAwareUpsertDto.merge(zod_1.z.object({
|
|
15
27
|
/** External Keys */
|
|
16
28
|
extKeys: assetKeys_1._AssetKeys,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assets.dto.js","sourceRoot":"","sources":["../../../src/dto/assets.dto.ts"],"names":[],"mappings":";;;AAAA,6BAAsB;AACtB,2CAAuC;AACvC,yCAAkE;AAClE,+DAAyD;AAE5C,QAAA,eAAe,GAAG,OAAC,CAAC,MAAM,CAAC;IACtC,sBAAsB;IACtB,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,uCAAuC;IACvC,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC;AAIU,QAAA,eAAe,GAAG,gCAAqB,CAAC,KAAK,CACxD,OAAC,CAAC,MAAM,CAAC;IACP,oBAAoB;IACpB,OAAO,EAAE,sBAAU;IACnB,0BAA0B;IAC1B,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE;IACxB,iCAAiC;IACjC,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC1B,iBAAiB;IACjB,SAAS,EAAE,OAAC,CAAC,UAAU,CAAC,kCAAe,CAAC,CAAC,QAAQ,EAAE;CACpD,CAAC,CACH,CAAC;AAIW,QAAA,SAAS,GAAG,uBAAe,CAAC,KAAK,CAAC,0BAAe,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"assets.dto.js","sourceRoot":"","sources":["../../../src/dto/assets.dto.ts"],"names":[],"mappings":";;;AAAA,6BAAsB;AACtB,2CAAuC;AACvC,yCAAkE;AAClE,+DAAyD;AAE5C,QAAA,eAAe,GAAG,OAAC,CAAC,MAAM,CAAC;IACtC,sBAAsB;IACtB,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,uCAAuC;IACvC,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC;AAIU,QAAA,gBAAgB,GAAG,OAAC,CAAC,MAAM,CAAC;IACvC,sBAAsB;IACtB,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC1B,uCAAuC;IACvC,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC;AAGU,QAAA,eAAe,GAAG,gCAAqB,CAAC,KAAK,CACxD,OAAC,CAAC,MAAM,CAAC;IACP,oBAAoB;IACpB,OAAO,EAAE,sBAAU;IACnB,0BAA0B;IAC1B,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE;IACxB,iCAAiC;IACjC,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC1B,iBAAiB;IACjB,SAAS,EAAE,OAAC,CAAC,UAAU,CAAC,kCAAe,CAAC,CAAC,QAAQ,EAAE;CACpD,CAAC,CACH,CAAC;AAIW,QAAA,SAAS,GAAG,uBAAe,CAAC,KAAK,CAAC,0BAAe,CAAC,CAAC"}
|
|
@@ -1,4 +1,36 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
+
export declare const _AssetCoverageSummary: z.ZodObject<{
|
|
3
|
+
id: z.ZodOptional<z.ZodString>;
|
|
4
|
+
uid: z.ZodOptional<z.ZodString>;
|
|
5
|
+
sn: z.ZodOptional<z.ZodString>;
|
|
6
|
+
displayValue: z.ZodOptional<z.ZodString>;
|
|
7
|
+
hostname: z.ZodOptional<z.ZodString>;
|
|
8
|
+
lastCheckinTs: z.ZodOptional<z.ZodString>;
|
|
9
|
+
os: z.ZodOptional<z.ZodString>;
|
|
10
|
+
model: z.ZodOptional<z.ZodString>;
|
|
11
|
+
assetAccounts: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
12
|
+
}, "strip", z.ZodTypeAny, {
|
|
13
|
+
assetAccounts: Record<string, unknown>;
|
|
14
|
+
id?: string | undefined;
|
|
15
|
+
uid?: string | undefined;
|
|
16
|
+
sn?: string | undefined;
|
|
17
|
+
displayValue?: string | undefined;
|
|
18
|
+
hostname?: string | undefined;
|
|
19
|
+
lastCheckinTs?: string | undefined;
|
|
20
|
+
os?: string | undefined;
|
|
21
|
+
model?: string | undefined;
|
|
22
|
+
}, {
|
|
23
|
+
assetAccounts: Record<string, unknown>;
|
|
24
|
+
id?: string | undefined;
|
|
25
|
+
uid?: string | undefined;
|
|
26
|
+
sn?: string | undefined;
|
|
27
|
+
displayValue?: string | undefined;
|
|
28
|
+
hostname?: string | undefined;
|
|
29
|
+
lastCheckinTs?: string | undefined;
|
|
30
|
+
os?: string | undefined;
|
|
31
|
+
model?: string | undefined;
|
|
32
|
+
}>;
|
|
33
|
+
export type AssetCoverageSummary = z.infer<typeof _AssetCoverageSummary>;
|
|
2
34
|
export declare const _UserCoverageSummary: z.ZodObject<{
|
|
3
35
|
id: z.ZodOptional<z.ZodString>;
|
|
4
36
|
organization: z.ZodOptional<z.ZodString>;
|
|
@@ -7,12 +39,57 @@ export declare const _UserCoverageSummary: z.ZodObject<{
|
|
|
7
39
|
score: z.ZodOptional<z.ZodNumber>;
|
|
8
40
|
firstName: z.ZodOptional<z.ZodString>;
|
|
9
41
|
lastName: z.ZodOptional<z.ZodString>;
|
|
42
|
+
active: z.ZodOptional<z.ZodBoolean>;
|
|
43
|
+
lastActivity: z.ZodOptional<z.ZodString>;
|
|
10
44
|
name: z.ZodOptional<z.ZodString>;
|
|
45
|
+
notifications: z.ZodOptional<z.ZodNumber>;
|
|
11
46
|
userAccounts: z.ZodRecord<z.ZodString, z.ZodNumber>;
|
|
12
47
|
assetAccounts: z.ZodRecord<z.ZodString, z.ZodNumber>;
|
|
48
|
+
assets: z.ZodArray<z.ZodObject<{
|
|
49
|
+
id: z.ZodOptional<z.ZodString>;
|
|
50
|
+
uid: z.ZodOptional<z.ZodString>;
|
|
51
|
+
sn: z.ZodOptional<z.ZodString>;
|
|
52
|
+
displayValue: z.ZodOptional<z.ZodString>;
|
|
53
|
+
hostname: z.ZodOptional<z.ZodString>;
|
|
54
|
+
lastCheckinTs: z.ZodOptional<z.ZodString>;
|
|
55
|
+
os: z.ZodOptional<z.ZodString>;
|
|
56
|
+
model: z.ZodOptional<z.ZodString>;
|
|
57
|
+
assetAccounts: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
58
|
+
}, "strip", z.ZodTypeAny, {
|
|
59
|
+
assetAccounts: Record<string, unknown>;
|
|
60
|
+
id?: string | undefined;
|
|
61
|
+
uid?: string | undefined;
|
|
62
|
+
sn?: string | undefined;
|
|
63
|
+
displayValue?: string | undefined;
|
|
64
|
+
hostname?: string | undefined;
|
|
65
|
+
lastCheckinTs?: string | undefined;
|
|
66
|
+
os?: string | undefined;
|
|
67
|
+
model?: string | undefined;
|
|
68
|
+
}, {
|
|
69
|
+
assetAccounts: Record<string, unknown>;
|
|
70
|
+
id?: string | undefined;
|
|
71
|
+
uid?: string | undefined;
|
|
72
|
+
sn?: string | undefined;
|
|
73
|
+
displayValue?: string | undefined;
|
|
74
|
+
hostname?: string | undefined;
|
|
75
|
+
lastCheckinTs?: string | undefined;
|
|
76
|
+
os?: string | undefined;
|
|
77
|
+
model?: string | undefined;
|
|
78
|
+
}>, "many">;
|
|
13
79
|
}, "strip", z.ZodTypeAny, {
|
|
14
|
-
userAccounts: Record<string, number>;
|
|
15
80
|
assetAccounts: Record<string, number>;
|
|
81
|
+
userAccounts: Record<string, number>;
|
|
82
|
+
assets: {
|
|
83
|
+
assetAccounts: Record<string, unknown>;
|
|
84
|
+
id?: string | undefined;
|
|
85
|
+
uid?: string | undefined;
|
|
86
|
+
sn?: string | undefined;
|
|
87
|
+
displayValue?: string | undefined;
|
|
88
|
+
hostname?: string | undefined;
|
|
89
|
+
lastCheckinTs?: string | undefined;
|
|
90
|
+
os?: string | undefined;
|
|
91
|
+
model?: string | undefined;
|
|
92
|
+
}[];
|
|
16
93
|
id?: string | undefined;
|
|
17
94
|
organization?: string | undefined;
|
|
18
95
|
department?: string | undefined;
|
|
@@ -20,10 +97,24 @@ export declare const _UserCoverageSummary: z.ZodObject<{
|
|
|
20
97
|
score?: number | undefined;
|
|
21
98
|
firstName?: string | undefined;
|
|
22
99
|
lastName?: string | undefined;
|
|
100
|
+
active?: boolean | undefined;
|
|
101
|
+
lastActivity?: string | undefined;
|
|
23
102
|
name?: string | undefined;
|
|
103
|
+
notifications?: number | undefined;
|
|
24
104
|
}, {
|
|
25
|
-
userAccounts: Record<string, number>;
|
|
26
105
|
assetAccounts: Record<string, number>;
|
|
106
|
+
userAccounts: Record<string, number>;
|
|
107
|
+
assets: {
|
|
108
|
+
assetAccounts: Record<string, unknown>;
|
|
109
|
+
id?: string | undefined;
|
|
110
|
+
uid?: string | undefined;
|
|
111
|
+
sn?: string | undefined;
|
|
112
|
+
displayValue?: string | undefined;
|
|
113
|
+
hostname?: string | undefined;
|
|
114
|
+
lastCheckinTs?: string | undefined;
|
|
115
|
+
os?: string | undefined;
|
|
116
|
+
model?: string | undefined;
|
|
117
|
+
}[];
|
|
27
118
|
id?: string | undefined;
|
|
28
119
|
organization?: string | undefined;
|
|
29
120
|
department?: string | undefined;
|
|
@@ -31,7 +122,10 @@ export declare const _UserCoverageSummary: z.ZodObject<{
|
|
|
31
122
|
score?: number | undefined;
|
|
32
123
|
firstName?: string | undefined;
|
|
33
124
|
lastName?: string | undefined;
|
|
125
|
+
active?: boolean | undefined;
|
|
126
|
+
lastActivity?: string | undefined;
|
|
34
127
|
name?: string | undefined;
|
|
128
|
+
notifications?: number | undefined;
|
|
35
129
|
}>;
|
|
36
130
|
export type UserCoverageSummary = z.infer<typeof _UserCoverageSummary>;
|
|
37
131
|
export declare const _UserCoverageReport: z.ZodObject<{
|
|
@@ -42,6 +136,8 @@ export declare const _UserCoverageReport: z.ZodObject<{
|
|
|
42
136
|
score: z.ZodOptional<z.ZodNumber>;
|
|
43
137
|
firstName: z.ZodOptional<z.ZodString>;
|
|
44
138
|
lastName: z.ZodOptional<z.ZodString>;
|
|
139
|
+
active: z.ZodOptional<z.ZodBoolean>;
|
|
140
|
+
lastActivity: z.ZodOptional<z.ZodString>;
|
|
45
141
|
userAccounts: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{
|
|
46
142
|
cid: z.ZodString;
|
|
47
143
|
uid: z.ZodString;
|
|
@@ -185,18 +281,6 @@ export declare const _UserCoverageReport: z.ZodObject<{
|
|
|
185
281
|
assetType?: import("./enums").GlobalAssetType | undefined;
|
|
186
282
|
}>, "many">;
|
|
187
283
|
}, "strip", z.ZodTypeAny, {
|
|
188
|
-
userAccounts: Record<string, {
|
|
189
|
-
id: string;
|
|
190
|
-
cid: string;
|
|
191
|
-
uid: string;
|
|
192
|
-
createdAt: string;
|
|
193
|
-
updatedAt: string;
|
|
194
|
-
deletedAt: string | null;
|
|
195
|
-
email: string;
|
|
196
|
-
etag: string;
|
|
197
|
-
extId: string;
|
|
198
|
-
meta?: unknown;
|
|
199
|
-
}[]>;
|
|
200
284
|
assetAccounts: Record<string, {
|
|
201
285
|
id: string;
|
|
202
286
|
cid: string;
|
|
@@ -214,6 +298,18 @@ export declare const _UserCoverageReport: z.ZodObject<{
|
|
|
214
298
|
uid?: string | undefined;
|
|
215
299
|
meta?: unknown;
|
|
216
300
|
}[]>;
|
|
301
|
+
userAccounts: Record<string, {
|
|
302
|
+
id: string;
|
|
303
|
+
cid: string;
|
|
304
|
+
uid: string;
|
|
305
|
+
createdAt: string;
|
|
306
|
+
updatedAt: string;
|
|
307
|
+
deletedAt: string | null;
|
|
308
|
+
email: string;
|
|
309
|
+
etag: string;
|
|
310
|
+
extId: string;
|
|
311
|
+
meta?: unknown;
|
|
312
|
+
}[]>;
|
|
217
313
|
assets: {
|
|
218
314
|
id: string;
|
|
219
315
|
createdAt: string;
|
|
@@ -236,19 +332,9 @@ export declare const _UserCoverageReport: z.ZodObject<{
|
|
|
236
332
|
score?: number | undefined;
|
|
237
333
|
firstName?: string | undefined;
|
|
238
334
|
lastName?: string | undefined;
|
|
335
|
+
active?: boolean | undefined;
|
|
336
|
+
lastActivity?: string | undefined;
|
|
239
337
|
}, {
|
|
240
|
-
userAccounts: Record<string, {
|
|
241
|
-
id: string;
|
|
242
|
-
cid: string;
|
|
243
|
-
uid: string;
|
|
244
|
-
createdAt: string;
|
|
245
|
-
updatedAt: string;
|
|
246
|
-
deletedAt: string | null;
|
|
247
|
-
email: string;
|
|
248
|
-
etag: string;
|
|
249
|
-
extId: string;
|
|
250
|
-
meta?: unknown;
|
|
251
|
-
}[]>;
|
|
252
338
|
assetAccounts: Record<string, {
|
|
253
339
|
id: string;
|
|
254
340
|
cid: string;
|
|
@@ -266,6 +352,18 @@ export declare const _UserCoverageReport: z.ZodObject<{
|
|
|
266
352
|
uid?: string | undefined;
|
|
267
353
|
meta?: unknown;
|
|
268
354
|
}[]>;
|
|
355
|
+
userAccounts: Record<string, {
|
|
356
|
+
id: string;
|
|
357
|
+
cid: string;
|
|
358
|
+
uid: string;
|
|
359
|
+
createdAt: string;
|
|
360
|
+
updatedAt: string;
|
|
361
|
+
deletedAt: string | null;
|
|
362
|
+
email: string;
|
|
363
|
+
etag: string;
|
|
364
|
+
extId: string;
|
|
365
|
+
meta?: unknown;
|
|
366
|
+
}[]>;
|
|
269
367
|
assets: {
|
|
270
368
|
id: string;
|
|
271
369
|
createdAt: string;
|
|
@@ -288,5 +386,7 @@ export declare const _UserCoverageReport: z.ZodObject<{
|
|
|
288
386
|
score?: number | undefined;
|
|
289
387
|
firstName?: string | undefined;
|
|
290
388
|
lastName?: string | undefined;
|
|
389
|
+
active?: boolean | undefined;
|
|
390
|
+
lastActivity?: string | undefined;
|
|
291
391
|
}>;
|
|
292
392
|
export type UserCoverageReport = z.infer<typeof _UserCoverageReport>;
|
|
@@ -1,15 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports._UserCoverageReport = exports._UserCoverageSummary = void 0;
|
|
3
|
+
exports._UserCoverageReport = exports._UserCoverageSummary = exports._AssetCoverageSummary = void 0;
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
5
|
const assets_dto_1 = require("./assets.dto");
|
|
6
6
|
const saasAssets_dto_1 = require("./saasAssets.dto");
|
|
7
7
|
const saasUsers_dto_1 = require("./saasUsers.dto");
|
|
8
8
|
const users_dto_1 = require("./users.dto");
|
|
9
|
+
exports._AssetCoverageSummary = assets_dto_1._SummaryAssetDto.merge(zod_1.z.object({
|
|
10
|
+
assetAccounts: zod_1.z.record(zod_1.z.unknown()),
|
|
11
|
+
}));
|
|
9
12
|
exports._UserCoverageSummary = users_dto_1._SimpleUserDto.merge(zod_1.z.object({
|
|
10
13
|
name: zod_1.z.string().optional(),
|
|
14
|
+
notifications: zod_1.z.number().optional(),
|
|
11
15
|
userAccounts: zod_1.z.record(zod_1.z.number()),
|
|
16
|
+
/** @deprecated */
|
|
12
17
|
assetAccounts: zod_1.z.record(zod_1.z.number()),
|
|
18
|
+
assets: zod_1.z.array(exports._AssetCoverageSummary),
|
|
13
19
|
}));
|
|
14
20
|
exports._UserCoverageReport = users_dto_1._SimpleUserDto.merge(zod_1.z.object({
|
|
15
21
|
userAccounts: zod_1.z.record(zod_1.z.array(saasUsers_dto_1._SaasUserDto)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coverage.dto.js","sourceRoot":"","sources":["../../../src/dto/coverage.dto.ts"],"names":[],"mappings":";;;AAAA,6BAAsB;AACtB,
|
|
1
|
+
{"version":3,"file":"coverage.dto.js","sourceRoot":"","sources":["../../../src/dto/coverage.dto.ts"],"names":[],"mappings":";;;AAAA,6BAAsB;AACtB,6CAAyD;AACzD,qDAA+C;AAC/C,mDAA6C;AAC7C,2CAA2C;AAE9B,QAAA,qBAAqB,GAAG,6BAAgB,CAAC,KAAK,CACzD,OAAC,CAAC,MAAM,CAAC;IACP,aAAa,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC;CACrC,CAAC,CACH,CAAC;AAGW,QAAA,oBAAoB,GAAG,0BAAc,CAAC,KAAK,CACtD,OAAC,CAAC,MAAM,CAAC;IACP,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,YAAY,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC;IAClC,kBAAkB;IAClB,aAAa,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC;IACnC,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,6BAAqB,CAAC;CACvC,CAAC,CACH,CAAC;AAGW,QAAA,mBAAmB,GAAG,0BAAc,CAAC,KAAK,CACrD,OAAC,CAAC,MAAM,CAAC;IACP,YAAY,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,KAAK,CAAC,4BAAY,CAAC,CAAC;IAC7C,aAAa,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,KAAK,CAAC,8BAAa,CAAC,CAAC;IAC/C,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,sBAAS,CAAC;CAC3B,CAAC,CACH,CAAC"}
|
|
@@ -10,6 +10,10 @@ export declare const _SimpleUserDto: z.ZodObject<{
|
|
|
10
10
|
email: z.ZodOptional<z.ZodString>;
|
|
11
11
|
organization: z.ZodOptional<z.ZodString>;
|
|
12
12
|
department: z.ZodOptional<z.ZodString>;
|
|
13
|
+
/** Derived */
|
|
14
|
+
active: z.ZodOptional<z.ZodBoolean>;
|
|
15
|
+
/** TODO Does not exist in DB yet but DTO placeholder */
|
|
16
|
+
lastActivity: z.ZodOptional<z.ZodString>;
|
|
13
17
|
}, "strip", z.ZodTypeAny, {
|
|
14
18
|
id?: string | undefined;
|
|
15
19
|
score?: number | undefined;
|
|
@@ -18,6 +22,8 @@ export declare const _SimpleUserDto: z.ZodObject<{
|
|
|
18
22
|
email?: string | undefined;
|
|
19
23
|
organization?: string | undefined;
|
|
20
24
|
department?: string | undefined;
|
|
25
|
+
active?: boolean | undefined;
|
|
26
|
+
lastActivity?: string | undefined;
|
|
21
27
|
}, {
|
|
22
28
|
id?: string | undefined;
|
|
23
29
|
score?: number | undefined;
|
|
@@ -26,6 +32,8 @@ export declare const _SimpleUserDto: z.ZodObject<{
|
|
|
26
32
|
email?: string | undefined;
|
|
27
33
|
organization?: string | undefined;
|
|
28
34
|
department?: string | undefined;
|
|
35
|
+
active?: boolean | undefined;
|
|
36
|
+
lastActivity?: string | undefined;
|
|
29
37
|
}>;
|
|
30
38
|
export type SimpleUserDto = z.infer<typeof _SimpleUserDto>;
|
|
31
39
|
export type UserUpsertDto = ChangeAwareUpsertDto & {
|
|
@@ -10,5 +10,9 @@ exports._SimpleUserDto = zod_1.z.object({
|
|
|
10
10
|
email: zod_1.z.string().optional(),
|
|
11
11
|
organization: zod_1.z.string().optional(),
|
|
12
12
|
department: zod_1.z.string().optional(),
|
|
13
|
+
/** Derived */
|
|
14
|
+
active: zod_1.z.boolean().optional(),
|
|
15
|
+
/** TODO Does not exist in DB yet but DTO placeholder */
|
|
16
|
+
lastActivity: zod_1.z.string().optional(),
|
|
13
17
|
});
|
|
14
18
|
//# sourceMappingURL=users.dto.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"users.dto.js","sourceRoot":"","sources":["../../../src/dto/users.dto.ts"],"names":[],"mappings":";;;AAAA,6BAAsB;AAKT,QAAA,cAAc,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"users.dto.js","sourceRoot":"","sources":["../../../src/dto/users.dto.ts"],"names":[],"mappings":";;;AAAA,6BAAsB;AAKT,QAAA,cAAc,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,cAAc;IACd,MAAM,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,wDAAwD;IACxD,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC"}
|
|
@@ -1 +1,10 @@
|
|
|
1
1
|
export declare function formatMacAddress(raw: string): string;
|
|
2
|
+
export type AssetDisplayValueMeta = {
|
|
3
|
+
name: string;
|
|
4
|
+
MDL?: string;
|
|
5
|
+
OS?: string;
|
|
6
|
+
SN?: string;
|
|
7
|
+
MAC?: string;
|
|
8
|
+
HNAME?: string;
|
|
9
|
+
};
|
|
10
|
+
export declare function parseAssetDisplayValue(displayValue: string): AssetDisplayValueMeta;
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.formatMacAddress = void 0;
|
|
6
|
+
exports.parseAssetDisplayValue = exports.formatMacAddress = void 0;
|
|
7
7
|
const lodash_1 = __importDefault(require("lodash"));
|
|
8
8
|
function formatMacAddress(raw) {
|
|
9
9
|
const lower = raw.toLowerCase().replace(/[^a-f0-9]/g, '');
|
|
@@ -12,4 +12,32 @@ function formatMacAddress(raw) {
|
|
|
12
12
|
.join(':');
|
|
13
13
|
}
|
|
14
14
|
exports.formatMacAddress = formatMacAddress;
|
|
15
|
+
function parseAssetDisplayValue(displayValue) {
|
|
16
|
+
const asHostname = (s) => (/^[\w.-]+$/g.test(s.trim()) ? s.trim() : undefined);
|
|
17
|
+
const i = displayValue.indexOf('(');
|
|
18
|
+
if (i < 0)
|
|
19
|
+
return { name: displayValue.trim(), HNAME: asHostname(displayValue.trim()) };
|
|
20
|
+
const name = displayValue.substring(0, i).trim();
|
|
21
|
+
const meta = { name };
|
|
22
|
+
const HNAME = asHostname(name);
|
|
23
|
+
if (HNAME)
|
|
24
|
+
meta.HNAME = HNAME;
|
|
25
|
+
const kv = displayValue.substring(i + 1, displayValue.length - 1);
|
|
26
|
+
const values = kv
|
|
27
|
+
.split(/,?[A-Z]+:/g)
|
|
28
|
+
.map(s => s.replace('null', '').trim())
|
|
29
|
+
.filter(v => v.trim().length > 0);
|
|
30
|
+
const keys = [];
|
|
31
|
+
const KEY_PATTERN = /,?([A-Z]+):/g;
|
|
32
|
+
let result;
|
|
33
|
+
while ((result = KEY_PATTERN.exec(kv))) {
|
|
34
|
+
keys.push(result[1]);
|
|
35
|
+
}
|
|
36
|
+
for (let i = 0; i < values.length; i++) {
|
|
37
|
+
const key = keys[i];
|
|
38
|
+
meta[key] = values[i];
|
|
39
|
+
}
|
|
40
|
+
return meta;
|
|
41
|
+
}
|
|
42
|
+
exports.parseAssetDisplayValue = parseAssetDisplayValue;
|
|
15
43
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/services/utils.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAuB;AAEvB,SAAgB,gBAAgB,CAAC,GAAW;IAC1C,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAC1D,OAAO,gBAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SAC/B,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC5B,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AALD,4CAKC"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/services/utils.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAuB;AAEvB,SAAgB,gBAAgB,CAAC,GAAW;IAC1C,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAC1D,OAAO,gBAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SAC/B,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC5B,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AALD,4CAKC;AAWD,SAAgB,sBAAsB,CAAC,YAAoB;IACzD,MAAM,UAAU,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACvF,MAAM,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACpC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,EAAC,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,EAAC,CAAC;IACtF,MAAM,IAAI,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACjD,MAAM,IAAI,GAA2B,EAAC,IAAI,EAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,KAAK;QAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAC9B,MAAM,EAAE,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG,EAAE;SACd,KAAK,CAAC,YAAY,CAAC;SACnB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;SACtC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,EAAc,CAAC;IAC5B,MAAM,WAAW,GAAG,cAAc,CAAC;IACnC,IAAI,MAAM,CAAC;IACX,OAAO,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACvC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAW,CAAC;QAC9B,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;IACD,OAAO,IAA6B,CAAC;AACvC,CAAC;AAxBD,wDAwBC"}
|
package/build/src/settings.d.ts
CHANGED
|
@@ -89,6 +89,12 @@ export declare const AMP_SETTINGS: {
|
|
|
89
89
|
OKTA_PRIV_ACCESS_GROUPS: import("./services").TypedAmpSettingsKey<string[]>;
|
|
90
90
|
OKTA_SERV_ACCT_GROUPS: import("./services").TypedAmpSettingsKey<string[]>;
|
|
91
91
|
};
|
|
92
|
+
onelogin: {
|
|
93
|
+
ONELOGIN_EXECUTIVE_GROUPS: import("./services").TypedAmpSettingsKey<string[]>;
|
|
94
|
+
ONELOGIN_PROD_ACCESS_GROUPS: import("./services").TypedAmpSettingsKey<string[]>;
|
|
95
|
+
ONELOGIN_PRIV_ACCESS_GROUPS: import("./services").TypedAmpSettingsKey<string[]>;
|
|
96
|
+
ONELOGIN_SERV_ACCT_GROUPS: import("./services").TypedAmpSettingsKey<string[]>;
|
|
97
|
+
};
|
|
92
98
|
slack: {
|
|
93
99
|
/** Ideally this is populated at bot installtion time */
|
|
94
100
|
SLACK_TEAM_ID: import("./services").TypedAmpSettingsKey<string>;
|
package/build/src/settings.js
CHANGED
|
@@ -77,6 +77,12 @@ const OKTA_SETTINGS = {
|
|
|
77
77
|
OKTA_PRIV_ACCESS_GROUPS: services_1.AmpSettingsMap.asKey('okta.groups.priv.extIds', []),
|
|
78
78
|
OKTA_SERV_ACCT_GROUPS: services_1.AmpSettingsMap.asKey('okta.groups.servAcct.extIds', []),
|
|
79
79
|
};
|
|
80
|
+
const ONELOGIN_SETTINGS = {
|
|
81
|
+
ONELOGIN_EXECUTIVE_GROUPS: services_1.AmpSettingsMap.asKey('onelogin.groups.exec.extIds', []),
|
|
82
|
+
ONELOGIN_PROD_ACCESS_GROUPS: services_1.AmpSettingsMap.asKey('onelogin.groups.prod.extIds', []),
|
|
83
|
+
ONELOGIN_PRIV_ACCESS_GROUPS: services_1.AmpSettingsMap.asKey('onelogin.groups.priv.extIds', []),
|
|
84
|
+
ONELOGIN_SERV_ACCT_GROUPS: services_1.AmpSettingsMap.asKey('onelogin.groups.servAcct.extIds', []),
|
|
85
|
+
};
|
|
80
86
|
const SLACK_SETTINGS = {
|
|
81
87
|
/** Ideally this is populated at bot installtion time */
|
|
82
88
|
SLACK_TEAM_ID: services_1.AmpSettingsMap.asKey('slack.team.extId'),
|
|
@@ -137,6 +143,7 @@ exports.AMP_SETTINGS = {
|
|
|
137
143
|
crowdstrike: { ...CROWDSTRIKE_SETTINGS },
|
|
138
144
|
google: { ...GOOGLE_SETTINGS },
|
|
139
145
|
okta: { ...OKTA_SETTINGS },
|
|
146
|
+
onelogin: { ...ONELOGIN_SETTINGS },
|
|
140
147
|
slack: { ...SLACK_SETTINGS },
|
|
141
148
|
knowBe4: { ...KNOWBE4_SETTINGS },
|
|
142
149
|
tenable: { ...TENABLE_SETTINGS },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../src/settings.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../src/settings.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/dto/assets.dto.ts
CHANGED
|
@@ -12,6 +12,20 @@ export const _SimpleAssetDto = z.object({
|
|
|
12
12
|
|
|
13
13
|
export type SimpleAssetDto = z.infer<typeof _SimpleAssetDto>;
|
|
14
14
|
|
|
15
|
+
export const _SummaryAssetDto = z.object({
|
|
16
|
+
/** Id of the asset */
|
|
17
|
+
id: z.string().optional(),
|
|
18
|
+
uid: z.string().optional(),
|
|
19
|
+
/** Human readable name of the asset */
|
|
20
|
+
displayValue: z.string().optional(),
|
|
21
|
+
sn: z.string().optional(),
|
|
22
|
+
hostname: z.string().optional(),
|
|
23
|
+
lastCheckinTs: z.string().optional(),
|
|
24
|
+
os: z.string().optional(),
|
|
25
|
+
model: z.string().optional(),
|
|
26
|
+
});
|
|
27
|
+
export type SummaryAssetDto = z.infer<typeof _SummaryAssetDto>;
|
|
28
|
+
|
|
15
29
|
export const _AssetUpsertDto = _ChangeAwareUpsertDto.merge(
|
|
16
30
|
z.object({
|
|
17
31
|
/** External Keys */
|
package/src/dto/coverage.dto.ts
CHANGED
|
@@ -1,17 +1,26 @@
|
|
|
1
1
|
import {z} from 'zod';
|
|
2
|
-
import {_AssetDto} from './assets.dto';
|
|
2
|
+
import {_AssetDto, _SummaryAssetDto} from './assets.dto';
|
|
3
3
|
import {_SaasAssetDto} from './saasAssets.dto';
|
|
4
4
|
import {_SaasUserDto} from './saasUsers.dto';
|
|
5
5
|
import {_SimpleUserDto} from './users.dto';
|
|
6
6
|
|
|
7
|
+
export const _AssetCoverageSummary = _SummaryAssetDto.merge(
|
|
8
|
+
z.object({
|
|
9
|
+
assetAccounts: z.record(z.unknown()),
|
|
10
|
+
})
|
|
11
|
+
);
|
|
12
|
+
export type AssetCoverageSummary = z.infer<typeof _AssetCoverageSummary>;
|
|
13
|
+
|
|
7
14
|
export const _UserCoverageSummary = _SimpleUserDto.merge(
|
|
8
15
|
z.object({
|
|
9
16
|
name: z.string().optional(),
|
|
17
|
+
notifications: z.number().optional(),
|
|
10
18
|
userAccounts: z.record(z.number()),
|
|
19
|
+
/** @deprecated */
|
|
11
20
|
assetAccounts: z.record(z.number()),
|
|
21
|
+
assets: z.array(_AssetCoverageSummary),
|
|
12
22
|
})
|
|
13
23
|
);
|
|
14
|
-
|
|
15
24
|
export type UserCoverageSummary = z.infer<typeof _UserCoverageSummary>;
|
|
16
25
|
|
|
17
26
|
export const _UserCoverageReport = _SimpleUserDto.merge(
|
package/src/dto/users.dto.ts
CHANGED
|
@@ -11,6 +11,10 @@ export const _SimpleUserDto = z.object({
|
|
|
11
11
|
email: z.string().optional(),
|
|
12
12
|
organization: z.string().optional(),
|
|
13
13
|
department: z.string().optional(),
|
|
14
|
+
/** Derived */
|
|
15
|
+
active: z.boolean().optional(),
|
|
16
|
+
/** TODO Does not exist in DB yet but DTO placeholder */
|
|
17
|
+
lastActivity: z.string().optional(),
|
|
14
18
|
});
|
|
15
19
|
|
|
16
20
|
export type SimpleUserDto = z.infer<typeof _SimpleUserDto>;
|
package/src/services/utils.ts
CHANGED
|
@@ -6,3 +6,38 @@ export function formatMacAddress(raw: string): string {
|
|
|
6
6
|
.map(chunk => chunk.join(''))
|
|
7
7
|
.join(':');
|
|
8
8
|
}
|
|
9
|
+
|
|
10
|
+
export type AssetDisplayValueMeta = {
|
|
11
|
+
name: string;
|
|
12
|
+
MDL?: string;
|
|
13
|
+
OS?: string;
|
|
14
|
+
SN?: string;
|
|
15
|
+
MAC?: string;
|
|
16
|
+
HNAME?: string;
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export function parseAssetDisplayValue(displayValue: string): AssetDisplayValueMeta {
|
|
20
|
+
const asHostname = (s: string) => (/^[\w.-]+$/g.test(s.trim()) ? s.trim() : undefined);
|
|
21
|
+
const i = displayValue.indexOf('(');
|
|
22
|
+
if (i < 0) return {name: displayValue.trim(), HNAME: asHostname(displayValue.trim())};
|
|
23
|
+
const name = displayValue.substring(0, i).trim();
|
|
24
|
+
const meta: Record<string, string> = {name};
|
|
25
|
+
const HNAME = asHostname(name);
|
|
26
|
+
if (HNAME) meta.HNAME = HNAME;
|
|
27
|
+
const kv = displayValue.substring(i + 1, displayValue.length - 1);
|
|
28
|
+
const values = kv
|
|
29
|
+
.split(/,?[A-Z]+:/g)
|
|
30
|
+
.map(s => s.replace('null', '').trim())
|
|
31
|
+
.filter(v => v.trim().length > 0);
|
|
32
|
+
const keys = [] as string[];
|
|
33
|
+
const KEY_PATTERN = /,?([A-Z]+):/g;
|
|
34
|
+
let result;
|
|
35
|
+
while ((result = KEY_PATTERN.exec(kv))) {
|
|
36
|
+
keys.push(result[1]);
|
|
37
|
+
}
|
|
38
|
+
for (let i = 0; i < values.length; i++) {
|
|
39
|
+
const key = keys[i] as string;
|
|
40
|
+
meta[key] = values[i];
|
|
41
|
+
}
|
|
42
|
+
return meta as AssetDisplayValueMeta;
|
|
43
|
+
}
|
package/src/settings.ts
CHANGED
|
@@ -82,6 +82,13 @@ const OKTA_SETTINGS = {
|
|
|
82
82
|
OKTA_SERV_ACCT_GROUPS: AmpSettingsMap.asKey<string[]>('okta.groups.servAcct.extIds', []),
|
|
83
83
|
};
|
|
84
84
|
|
|
85
|
+
const ONELOGIN_SETTINGS = {
|
|
86
|
+
ONELOGIN_EXECUTIVE_GROUPS: AmpSettingsMap.asKey<string[]>('onelogin.groups.exec.extIds', []),
|
|
87
|
+
ONELOGIN_PROD_ACCESS_GROUPS: AmpSettingsMap.asKey<string[]>('onelogin.groups.prod.extIds', []),
|
|
88
|
+
ONELOGIN_PRIV_ACCESS_GROUPS: AmpSettingsMap.asKey<string[]>('onelogin.groups.priv.extIds', []),
|
|
89
|
+
ONELOGIN_SERV_ACCT_GROUPS: AmpSettingsMap.asKey<string[]>('onelogin.groups.servAcct.extIds', []),
|
|
90
|
+
};
|
|
91
|
+
|
|
85
92
|
const SLACK_SETTINGS = {
|
|
86
93
|
/** Ideally this is populated at bot installtion time */
|
|
87
94
|
SLACK_TEAM_ID: AmpSettingsMap.asKey<string>('slack.team.extId'),
|
|
@@ -147,6 +154,7 @@ export const AMP_SETTINGS = {
|
|
|
147
154
|
crowdstrike: {...CROWDSTRIKE_SETTINGS},
|
|
148
155
|
google: {...GOOGLE_SETTINGS},
|
|
149
156
|
okta: {...OKTA_SETTINGS},
|
|
157
|
+
onelogin: {...ONELOGIN_SETTINGS},
|
|
150
158
|
slack: {...SLACK_SETTINGS},
|
|
151
159
|
knowBe4: {...KNOWBE4_SETTINGS},
|
|
152
160
|
tenable: {...TENABLE_SETTINGS},
|