@creator.co/wapi 1.3.10 → 1.3.11
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/dist/package.json +1 -1
- package/dist/src/Logger/Logger.js +24 -28
- package/dist/src/Logger/Logger.js.map +1 -1
- package/package.json +1 -1
- package/src/Logger/Logger.ts +21 -30
- package/tests/Logger/Logger.test.ts +17 -2
package/dist/package.json
CHANGED
|
@@ -48,20 +48,7 @@ var DEFAULT_LOG_FUNCTION = PURE_CONSOLE.log.bind(PURE_CONSOLE);
|
|
|
48
48
|
* An array of sensitive strings that should be blacklisted or excluded from certain operations.
|
|
49
49
|
* This array includes strings such as 'password', 'phonenumber', 'resetCode', etc.
|
|
50
50
|
*/
|
|
51
|
-
var blacklist = [
|
|
52
|
-
'password',
|
|
53
|
-
'phonenumber' /*,'code'*/,
|
|
54
|
-
'resetCode',
|
|
55
|
-
'recaptchaToken',
|
|
56
|
-
'token',
|
|
57
|
-
'mfa',
|
|
58
|
-
'REFRESH_TOKEN',
|
|
59
|
-
'SECRET_HASH',
|
|
60
|
-
'SecretHash',
|
|
61
|
-
'AccessToken',
|
|
62
|
-
'UserCode',
|
|
63
|
-
'paymentMethodNonce',
|
|
64
|
-
];
|
|
51
|
+
var blacklist = ['password', 'token'].map(function (s) { return s.toLowerCase(); });
|
|
65
52
|
/**
|
|
66
53
|
* Logger class for logging messages with different log levels.
|
|
67
54
|
*/
|
|
@@ -254,11 +241,10 @@ var Logger = /** @class */ (function () {
|
|
|
254
241
|
*/
|
|
255
242
|
Logger.prototype.formattedLog = function (level, msg, caller) {
|
|
256
243
|
if (Utils_1.default.isHybridlessContainer() && this.transactionID) {
|
|
257
|
-
return
|
|
258
|
-
" [".concat(level.toString(), "] [").concat(caller, "] ").concat(msg.map(this.suppressSensitiveInfo).join(' ')));
|
|
244
|
+
return "".concat(this.transactionID) + " [".concat(level.toString(), "] [").concat(caller, "] ").concat(msg.join(' '));
|
|
259
245
|
}
|
|
260
246
|
else {
|
|
261
|
-
return "[".concat(level.toString(), "] [").concat(caller, "] ").concat(msg.
|
|
247
|
+
return "[".concat(level.toString(), "] [").concat(caller, "] ").concat(msg.join(' '));
|
|
262
248
|
}
|
|
263
249
|
};
|
|
264
250
|
/**
|
|
@@ -296,7 +282,9 @@ var Logger = /** @class */ (function () {
|
|
|
296
282
|
try {
|
|
297
283
|
for (var args_1 = __values(args), args_1_1 = args_1.next(); !args_1_1.done; args_1_1 = args_1.next()) {
|
|
298
284
|
var arg = args_1_1.value;
|
|
299
|
-
var fMsg = typeof arg === 'object' && !(arg instanceof Error)
|
|
285
|
+
var fMsg = typeof arg === 'object' && !(arg instanceof Error)
|
|
286
|
+
? stringify(this.suppressSensitiveInfo(arg), null, 2)
|
|
287
|
+
: this.suppressSensitiveInfo(arg);
|
|
300
288
|
msg.push(fMsg);
|
|
301
289
|
}
|
|
302
290
|
}
|
|
@@ -364,19 +352,27 @@ var Logger = /** @class */ (function () {
|
|
|
364
352
|
Logger.prototype.suppressSensitiveInfo = function (value) {
|
|
365
353
|
var _this = this;
|
|
366
354
|
//realy false
|
|
367
|
-
if (!this.filterBlacklist)
|
|
355
|
+
if (!this.filterBlacklist || !this.filterBlacklist[0])
|
|
368
356
|
return value;
|
|
369
357
|
if (typeof value == 'string') {
|
|
370
358
|
//content based replacement
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
}
|
|
359
|
+
this.filterBlacklist.forEach(function (f) {
|
|
360
|
+
var match = value.toLowerCase().includes(f);
|
|
361
|
+
if (match)
|
|
362
|
+
value = '**SUPPRESSED_SENSITIVE_DATA**';
|
|
363
|
+
});
|
|
364
|
+
return value;
|
|
365
|
+
}
|
|
366
|
+
else if (Array.isArray(value)) {
|
|
367
|
+
return value.map(function (v) { return _this.suppressSensitiveInfo(v); });
|
|
368
|
+
}
|
|
369
|
+
else if (typeof value == 'object') {
|
|
370
|
+
//key based replacement
|
|
371
|
+
Object.keys(value).forEach(function (elt) {
|
|
372
|
+
var match = _this.filterBlacklist.find(function (f) { return elt.toLowerCase().includes(f); });
|
|
373
|
+
if (match)
|
|
374
|
+
value[elt] = '**SUPPRESSED_SENSITIVE_DATA**';
|
|
375
|
+
});
|
|
380
376
|
return value;
|
|
381
377
|
}
|
|
382
378
|
return value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Logger.js","sourceRoot":"","sources":["../../../src/Logger/Logger.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,6BAA8B;AAC9B,+CAAgD;AAChD,wCAAyC;AAEzC,sCAAgC;AAEhC;;;;;;;GAOG;AACH,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,6BAAe,CAAA;IACf,2BAAa,CAAA;IACb,2BAAa,CAAA;IACb,6BAAe,CAAA;AACjB,CAAC,EALW,UAAU,0BAAV,UAAU,QAKrB;AACD;;;;;;GAMG;AACH,IAAM,YAAY,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;AAC7E;;;GAGG;AACH,IAAM,oBAAoB,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;AAEhE;;;GAGG;AACH,IAAM,SAAS,GAAG
|
|
1
|
+
{"version":3,"file":"Logger.js","sourceRoot":"","sources":["../../../src/Logger/Logger.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/Logger/Logger.ts
CHANGED
|
@@ -36,20 +36,7 @@ const DEFAULT_LOG_FUNCTION = PURE_CONSOLE.log.bind(PURE_CONSOLE)
|
|
|
36
36
|
* An array of sensitive strings that should be blacklisted or excluded from certain operations.
|
|
37
37
|
* This array includes strings such as 'password', 'phonenumber', 'resetCode', etc.
|
|
38
38
|
*/
|
|
39
|
-
const blacklist = [
|
|
40
|
-
'password',
|
|
41
|
-
'phonenumber' /*,'code'*/,
|
|
42
|
-
'resetCode',
|
|
43
|
-
'recaptchaToken',
|
|
44
|
-
'token',
|
|
45
|
-
'mfa',
|
|
46
|
-
'REFRESH_TOKEN',
|
|
47
|
-
'SECRET_HASH',
|
|
48
|
-
'SecretHash',
|
|
49
|
-
'AccessToken',
|
|
50
|
-
'UserCode',
|
|
51
|
-
'paymentMethodNonce',
|
|
52
|
-
]
|
|
39
|
+
const blacklist = ['password', 'token'].map(s => s.toLowerCase())
|
|
53
40
|
|
|
54
41
|
/**
|
|
55
42
|
* Configuration options for the logger.
|
|
@@ -220,12 +207,9 @@ export default class Logger {
|
|
|
220
207
|
*/
|
|
221
208
|
private formattedLog(level: LOG_LEVELS, msg: Array<string>, caller: string): string {
|
|
222
209
|
if (Utils.isHybridlessContainer() && this.transactionID) {
|
|
223
|
-
return (
|
|
224
|
-
`${this.transactionID}` +
|
|
225
|
-
` [${level.toString()}] [${caller}] ${msg.map(this.suppressSensitiveInfo).join(' ')}`
|
|
226
|
-
)
|
|
210
|
+
return `${this.transactionID}` + ` [${level.toString()}] [${caller}] ${msg.join(' ')}`
|
|
227
211
|
} else {
|
|
228
|
-
return `[${level.toString()}] [${caller}] ${msg.
|
|
212
|
+
return `[${level.toString()}] [${caller}] ${msg.join(' ')}`
|
|
229
213
|
}
|
|
230
214
|
}
|
|
231
215
|
|
|
@@ -261,7 +245,9 @@ export default class Logger {
|
|
|
261
245
|
const msg: Array<string> = []
|
|
262
246
|
for (const arg of args) {
|
|
263
247
|
const fMsg =
|
|
264
|
-
typeof arg === 'object' && !(arg instanceof Error)
|
|
248
|
+
typeof arg === 'object' && !(arg instanceof Error)
|
|
249
|
+
? stringify(this.suppressSensitiveInfo(arg), null, 2)
|
|
250
|
+
: this.suppressSensitiveInfo(arg)
|
|
265
251
|
msg.push(fMsg)
|
|
266
252
|
}
|
|
267
253
|
//push into logs stack
|
|
@@ -302,19 +288,24 @@ export default class Logger {
|
|
|
302
288
|
* @param {any} value - The value to suppress sensitive information from.
|
|
303
289
|
* @returns {string} - The value with sensitive information suppressed.
|
|
304
290
|
*/
|
|
305
|
-
private suppressSensitiveInfo(value: any): string {
|
|
291
|
+
private suppressSensitiveInfo(value: any): string | any[] {
|
|
306
292
|
//realy false
|
|
307
|
-
if (!this.filterBlacklist) return value
|
|
293
|
+
if (!this.filterBlacklist || !this.filterBlacklist[0]) return value
|
|
308
294
|
if (typeof value == 'string') {
|
|
309
295
|
//content based replacement
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
296
|
+
this.filterBlacklist.forEach(f => {
|
|
297
|
+
const match = value.toLowerCase().includes(f)
|
|
298
|
+
if (match) value = '**SUPPRESSED_SENSITIVE_DATA**'
|
|
299
|
+
})
|
|
300
|
+
return value
|
|
301
|
+
} else if (Array.isArray(value)) {
|
|
302
|
+
return value.map(v => this.suppressSensitiveInfo(v))
|
|
303
|
+
} else if (typeof value == 'object') {
|
|
304
|
+
//key based replacement
|
|
305
|
+
Object.keys(value).forEach(elt => {
|
|
306
|
+
const match = (this.filterBlacklist as string[]).find(f => elt.toLowerCase().includes(f))
|
|
307
|
+
if (match) value[elt] = '**SUPPRESSED_SENSITIVE_DATA**'
|
|
308
|
+
})
|
|
318
309
|
return value
|
|
319
310
|
}
|
|
320
311
|
return value
|
|
@@ -27,6 +27,19 @@ function testLogs(isContainer: boolean, provider?: Logger) {
|
|
|
27
27
|
const localProvider = provider || console
|
|
28
28
|
|
|
29
29
|
test(`${type} - ${loggerType} Log - Suppress sensitive info`, async () => {
|
|
30
|
+
setContainerFlag(isContainer)
|
|
31
|
+
localProvider.log('my password is 123')
|
|
32
|
+
expect(consoleProxy.log).toHaveBeenNthCalledWith(
|
|
33
|
+
1,
|
|
34
|
+
expect.stringContaining((isContainer ? `${transactionID} ` : '') + '[INFO] [Logger.test.ts:')
|
|
35
|
+
)
|
|
36
|
+
expect(consoleProxy.log).toHaveBeenNthCalledWith(
|
|
37
|
+
1,
|
|
38
|
+
expect.stringContaining('] **SUPPRESSED_SENSITIVE_DATA**')
|
|
39
|
+
)
|
|
40
|
+
})
|
|
41
|
+
|
|
42
|
+
test(`${type} - ${loggerType} Log - Suppress sensitive info (object)`, async () => {
|
|
30
43
|
setContainerFlag(isContainer)
|
|
31
44
|
localProvider.log('TEST', { password: '123' })
|
|
32
45
|
expect(consoleProxy.log).toHaveBeenNthCalledWith(
|
|
@@ -35,7 +48,7 @@ function testLogs(isContainer: boolean, provider?: Logger) {
|
|
|
35
48
|
)
|
|
36
49
|
expect(consoleProxy.log).toHaveBeenNthCalledWith(
|
|
37
50
|
1,
|
|
38
|
-
expect.stringContaining('] TEST **SUPPRESSED_SENSITIVE_DATA**')
|
|
51
|
+
expect.stringContaining('] TEST {\n "password": "**SUPPRESSED_SENSITIVE_DATA**"\n}')
|
|
39
52
|
)
|
|
40
53
|
})
|
|
41
54
|
|
|
@@ -48,7 +61,9 @@ function testLogs(isContainer: boolean, provider?: Logger) {
|
|
|
48
61
|
)
|
|
49
62
|
expect(consoleProxy.log).toHaveBeenNthCalledWith(
|
|
50
63
|
1,
|
|
51
|
-
expect.stringContaining(
|
|
64
|
+
expect.stringContaining(
|
|
65
|
+
'] TEST2 [\n {\n "password": "**SUPPRESSED_SENSITIVE_DATA**"\n }\n]'
|
|
66
|
+
)
|
|
52
67
|
)
|
|
53
68
|
})
|
|
54
69
|
|