field-redactor 1.6.0 → 1.6.2
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/CHANGELOG.md +33 -0
- package/CONTRIBUTING.md +5 -3
- package/README.md +2 -2
- package/dist/api/fieldRedactor.d.ts +3 -5
- package/dist/api/fieldRedactor.d.ts.map +1 -1
- package/dist/api/fieldRedactor.js +7 -11
- package/dist/api/fieldRedactor.js.map +1 -1
- package/dist/api/fieldRedactorConfigBuilder.d.ts +3 -3
- package/dist/api/fieldRedactorConfigBuilder.d.ts.map +1 -1
- package/dist/api/fieldRedactorConfigBuilder.js +7 -9
- package/dist/api/fieldRedactorConfigBuilder.js.map +1 -1
- package/dist/api/fieldRedactorDeps.d.ts +2 -2
- package/dist/api/fieldRedactorDeps.d.ts.map +1 -1
- package/dist/api/fieldRedactorDeps.js +6 -6
- package/dist/api/fieldRedactorDeps.js.map +1 -1
- package/dist/config/presets.d.ts +2 -2
- package/dist/config/presets.js +1 -1
- package/dist/config/redactionRules.d.ts +13 -7
- package/dist/config/redactionRules.d.ts.map +1 -1
- package/dist/config/redactionRules.js +20 -16
- package/dist/config/redactionRules.js.map +1 -1
- package/dist/dryrun/dryRun.d.ts.map +1 -1
- package/dist/dryrun/dryRun.js +2 -2
- package/dist/dryrun/dryRun.js.map +1 -1
- package/dist/engine/arrayRedaction.js +1 -1
- package/dist/engine/arrayRedaction.js.map +1 -1
- package/dist/engine/customObjectFieldHandler.d.ts +4 -9
- package/dist/engine/customObjectFieldHandler.d.ts.map +1 -1
- package/dist/engine/customObjectFieldHandler.js +90 -108
- package/dist/engine/customObjectFieldHandler.js.map +1 -1
- package/dist/engine/objectRedactorCustomObject.d.ts +8 -23
- package/dist/engine/objectRedactorCustomObject.d.ts.map +1 -1
- package/dist/engine/objectRedactorCustomObject.js +8 -40
- package/dist/engine/objectRedactorCustomObject.js.map +1 -1
- package/dist/engine/objectRedactorHelpers.d.ts +3 -4
- package/dist/engine/objectRedactorHelpers.d.ts.map +1 -1
- package/dist/engine/objectRedactorHelpers.js +12 -38
- package/dist/engine/objectRedactorHelpers.js.map +1 -1
- package/dist/engine/objectRedactorTraversal.d.ts +1 -0
- package/dist/engine/objectRedactorTraversal.d.ts.map +1 -1
- package/dist/engine/objectRedactorTraversal.js +2 -1
- package/dist/engine/objectRedactorTraversal.js.map +1 -1
- package/dist/rules/ruleResolver.d.ts +3 -5
- package/dist/rules/ruleResolver.d.ts.map +1 -1
- package/dist/rules/ruleResolver.js +17 -23
- package/dist/rules/ruleResolver.js.map +1 -1
- package/dist/rules/schemaSiblingKey.d.ts +4 -0
- package/dist/rules/schemaSiblingKey.d.ts.map +1 -0
- package/dist/rules/schemaSiblingKey.js +19 -0
- package/dist/rules/schemaSiblingKey.js.map +1 -0
- package/dist/rules/secretManager.d.ts +6 -7
- package/dist/rules/secretManager.d.ts.map +1 -1
- package/dist/rules/secretManager.js +13 -8
- package/dist/rules/secretManager.js.map +1 -1
- package/dist/types.d.ts +12 -12
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +4 -4
- package/dist/types.js.map +1 -1
- package/dist/util/maybeAsync.d.ts +0 -1
- package/dist/util/maybeAsync.d.ts.map +1 -1
- package/dist/util/maybeAsync.js +1 -3
- package/dist/util/maybeAsync.js.map +1 -1
- package/dist/util/primitiveCoercion.d.ts +4 -0
- package/dist/util/primitiveCoercion.d.ts.map +1 -0
- package/dist/util/primitiveCoercion.js +21 -0
- package/dist/util/primitiveCoercion.js.map +1 -0
- package/docs/guides/anti-patterns.md +1 -1
- package/docs/guides/metadata-redaction.md +2 -2
- package/docs/guides/migration-1.5-to-1.6.md +7 -5
- package/docs/guides/secret-key-modes.md +9 -14
- package/docs/reference/config.md +2 -2
- package/docs/release-notes/README.md +3 -1
- package/docs/release-notes/v1.6.1.md +24 -0
- package/docs/release-notes/v1.6.2.md +26 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"objectRedactorTraversal.js","sourceRoot":"","sources":["../../src/engine/objectRedactorTraversal.ts"],"names":[],"mappings":";;;AAAA,oCAWkB;AAIlB,qEAAsF;AAGtF,mEAIiC;AACjC,wDAAuE;AACvE,mDAAmF;AACnF,qDAAiD;AACjD,yEAAsE;AAGtE
|
|
1
|
+
{"version":3,"file":"objectRedactorTraversal.js","sourceRoot":"","sources":["../../src/engine/objectRedactorTraversal.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,8 +3,7 @@ import { PathRuleMatcher } from './pathRuleMatcher';
|
|
|
3
3
|
import { SecretManager } from './secretManager';
|
|
4
4
|
import { ValuePatternMatcher } from './valuePatternMatcher';
|
|
5
5
|
import { CustomObject, DryRunPathRule, JsonValue, PathRule, SecretSpecifierValue } from '../types';
|
|
6
|
-
export type KeyRule
|
|
7
|
-
export type KeyRuleLabel = KeyRule | 'default';
|
|
6
|
+
export type { KeyRule } from './secretManager';
|
|
8
7
|
export type FieldDisposition = {
|
|
9
8
|
action: 'default';
|
|
10
9
|
} | {
|
|
@@ -43,8 +42,8 @@ export declare class RuleResolver {
|
|
|
43
42
|
shouldRemoveByKey(key: SecretSpecifierValue): boolean;
|
|
44
43
|
shouldOpaqueByKey(key: SecretSpecifierValue): boolean;
|
|
45
44
|
shouldTraverseContainerByKey(key: SecretSpecifierValue, forceDeepRedaction: boolean): boolean;
|
|
46
|
-
|
|
47
|
-
|
|
45
|
+
/** True when the key itself is deep, or an ancestor already forced deep redaction. */
|
|
46
|
+
forceDeepForKey(key: SecretSpecifierValue, forceDeepRedaction: boolean): boolean;
|
|
48
47
|
attributeKeyRule(path: string, action: DryRunPathRule['action'], key: SecretSpecifierValue): DryRunPathRule;
|
|
49
48
|
findEnclosingOpaqueOrDeepKey(objectKeys: string[]): {
|
|
50
49
|
key: string;
|
|
@@ -61,5 +60,4 @@ export declare class RuleResolver {
|
|
|
61
60
|
getMatchingSchema(value: JsonValue): CustomObject | undefined;
|
|
62
61
|
}
|
|
63
62
|
export declare const buildPathRules: (before: JsonValue | undefined, redactedPaths: readonly string[], deletedPaths: readonly string[], resolver: RuleResolver) => DryRunPathRule[];
|
|
64
|
-
export {};
|
|
65
63
|
//# sourceMappingURL=ruleResolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ruleResolver.d.ts","sourceRoot":"","sources":["../../src/rules/ruleResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"ruleResolver.d.ts","sourceRoot":"","sources":["../../src/rules/ruleResolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,30 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.buildPathRules = exports.RuleResolver = exports.resolvePathDisposition = void 0;
|
|
4
|
-
const
|
|
4
|
+
const schemaSiblingKey_1 = require("./schemaSiblingKey");
|
|
5
5
|
const jsonWalk_1 = require("../util/jsonWalk");
|
|
6
6
|
const pathParsing_1 = require("../util/pathParsing");
|
|
7
|
+
const primitiveCoercion_1 = require("../util/primitiveCoercion");
|
|
7
8
|
const types_1 = require("../types");
|
|
9
|
+
const PATH_MODE_TO_DISPOSITION = {
|
|
10
|
+
pass: { action: 'skip' },
|
|
11
|
+
remove: { action: 'remove' },
|
|
12
|
+
opaque: { action: 'opaque' },
|
|
13
|
+
deep: { action: 'deep' },
|
|
14
|
+
shallow: { action: 'shallow' }
|
|
15
|
+
};
|
|
8
16
|
const objectKeysFromPath = (segments) => segments.filter((segment) => typeof segment === 'string');
|
|
9
17
|
const toPathRule = (path, action, rule, extras = {}) => (Object.assign({ path, action, rule }, extras));
|
|
10
18
|
const patternForKey = (secretManager, key, rule) => secretManager.getKeyRulePattern(key, rule);
|
|
11
19
|
/** Shared path-rule + pass-key disposition used during traversal. */
|
|
12
20
|
const resolvePathDisposition = (secretManager, pathRuleMatcher, key, pathSegments, forceDeepRedaction) => {
|
|
13
21
|
const pathRule = pathRuleMatcher.getMatchingRule([...pathSegments, key]);
|
|
14
|
-
if (
|
|
15
|
-
return
|
|
16
|
-
}
|
|
17
|
-
if ((pathRule === null || pathRule === void 0 ? void 0 : pathRule.mode) === 'remove') {
|
|
18
|
-
return { action: 'remove' };
|
|
19
|
-
}
|
|
20
|
-
if ((pathRule === null || pathRule === void 0 ? void 0 : pathRule.mode) === 'opaque') {
|
|
21
|
-
return { action: 'opaque' };
|
|
22
|
-
}
|
|
23
|
-
if ((pathRule === null || pathRule === void 0 ? void 0 : pathRule.mode) === 'deep') {
|
|
24
|
-
return { action: 'deep' };
|
|
25
|
-
}
|
|
26
|
-
if ((pathRule === null || pathRule === void 0 ? void 0 : pathRule.mode) === 'shallow') {
|
|
27
|
-
return { action: 'shallow' };
|
|
22
|
+
if (pathRule) {
|
|
23
|
+
return PATH_MODE_TO_DISPOSITION[pathRule.mode];
|
|
28
24
|
}
|
|
29
25
|
if (forceDeepRedaction && secretManager.isPassKey(key)) {
|
|
30
26
|
return { action: 'pass-key-recurse' };
|
|
@@ -51,20 +47,18 @@ class RuleResolver {
|
|
|
51
47
|
return (match === null || match === void 0 ? void 0 : match.mode) === 'pass' ? undefined : match;
|
|
52
48
|
}
|
|
53
49
|
shouldRemoveByKey(key) {
|
|
54
|
-
return this.secretManager.
|
|
50
|
+
return this.secretManager.isRemoveSecretKey(key);
|
|
55
51
|
}
|
|
56
52
|
shouldOpaqueByKey(key) {
|
|
57
|
-
return this.secretManager.
|
|
53
|
+
return this.secretManager.isOpaqueSecretKey(key);
|
|
58
54
|
}
|
|
59
55
|
shouldTraverseContainerByKey(key, forceDeepRedaction) {
|
|
60
56
|
return (this.secretManager.isSecretKey(key) ||
|
|
61
57
|
this.secretManager.isDeepSecretKey(key) ||
|
|
62
58
|
forceDeepRedaction);
|
|
63
59
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
}
|
|
67
|
-
nestedObjectForceDeepRedaction(key, forceDeepRedaction) {
|
|
60
|
+
/** True when the key itself is deep, or an ancestor already forced deep redaction. */
|
|
61
|
+
forceDeepForKey(key, forceDeepRedaction) {
|
|
68
62
|
return forceDeepRedaction || this.secretManager.isDeepSecretKey(key);
|
|
69
63
|
}
|
|
70
64
|
attributeKeyRule(path, action, key) {
|
|
@@ -96,7 +90,7 @@ class RuleResolver {
|
|
|
96
90
|
}
|
|
97
91
|
let pattern;
|
|
98
92
|
if (typeof schema[leaf] === 'string') {
|
|
99
|
-
const siblingSpecifier = (0,
|
|
93
|
+
const siblingSpecifier = (0, schemaSiblingKey_1.getStringSpecifiedCustomObjectSecretKeyValueIfExists)(parent, schema, leaf);
|
|
100
94
|
if (siblingSpecifier !== undefined) {
|
|
101
95
|
const siblingRule = this.secretManager.classifyKeyRule(siblingSpecifier);
|
|
102
96
|
if (siblingRule && siblingRule !== 'default') {
|
|
@@ -137,7 +131,7 @@ class RuleResolver {
|
|
|
137
131
|
if (value === undefined || (typeof value !== 'string' && typeof value !== 'number')) {
|
|
138
132
|
return undefined;
|
|
139
133
|
}
|
|
140
|
-
const match = this.valuePatternMatcher.findMatching((0,
|
|
134
|
+
const match = this.valuePatternMatcher.findMatching((0, primitiveCoercion_1.toRedactablePrimitive)(value));
|
|
141
135
|
if (!match) {
|
|
142
136
|
return undefined;
|
|
143
137
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ruleResolver.js","sourceRoot":"","sources":["../../src/rules/ruleResolver.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"ruleResolver.js","sourceRoot":"","sources":["../../src/rules/ruleResolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { CustomObject, JsonObject, SecretSpecifierValue } from '../types';
|
|
2
|
+
/** Resolve a schema field's sibling string key (e.g. `value: 'name'` → look up `name`). */
|
|
3
|
+
export declare function getStringSpecifiedCustomObjectSecretKeyValueIfExists(value: JsonObject, customObject: CustomObject, key: string): SecretSpecifierValue | undefined;
|
|
4
|
+
//# sourceMappingURL=schemaSiblingKey.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemaSiblingKey.d.ts","sourceRoot":"","sources":["../../src/rules/schemaSiblingKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAE1E,2FAA2F;AAC3F,wBAAgB,oDAAoD,CAClE,KAAK,EAAE,UAAU,EACjB,YAAY,EAAE,YAAY,EAC1B,GAAG,EAAE,MAAM,GACV,oBAAoB,GAAG,SAAS,CAgBlC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getStringSpecifiedCustomObjectSecretKeyValueIfExists = getStringSpecifiedCustomObjectSecretKeyValueIfExists;
|
|
4
|
+
/** Resolve a schema field's sibling string key (e.g. `value: 'name'` → look up `name`). */
|
|
5
|
+
function getStringSpecifiedCustomObjectSecretKeyValueIfExists(value, customObject, key) {
|
|
6
|
+
const siblingKeyName = customObject[key];
|
|
7
|
+
if (typeof siblingKeyName !== 'string') {
|
|
8
|
+
return undefined;
|
|
9
|
+
}
|
|
10
|
+
if (!Object.prototype.hasOwnProperty.call(value, siblingKeyName)) {
|
|
11
|
+
return undefined;
|
|
12
|
+
}
|
|
13
|
+
const siblingValue = value[siblingKeyName];
|
|
14
|
+
if (typeof siblingValue === 'string' || typeof siblingValue === 'number' || typeof siblingValue === 'boolean') {
|
|
15
|
+
return siblingValue;
|
|
16
|
+
}
|
|
17
|
+
return undefined;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=schemaSiblingKey.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemaSiblingKey.js","sourceRoot":"","sources":["../../src/rules/schemaSiblingKey.ts"],"names":[],"mappings":";;AAGA,oHAoBC;AArBD,2FAA2F;AAC3F,SAAgB,oDAAoD,CAClE,KAAiB,EACjB,YAA0B,EAC1B,GAAW;IAEX,MAAM,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IACzC,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE,CAAC;QACvC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,EAAE,CAAC;QACjE,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;IAC3C,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,OAAO,YAAY,KAAK,SAAS,EAAE,CAAC;QAC9G,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { SecretManagerConfig, SecretSpecifierValue } from '../types';
|
|
2
|
-
type KeyRule = 'remove' | 'opaque' | 'deep' | 'shallow';
|
|
2
|
+
export type KeyRule = 'remove' | 'opaque' | 'deep' | 'shallow';
|
|
3
3
|
/**
|
|
4
4
|
* Utility class for managing secrets and determining if a given value is a secret of any type. If no secrets of
|
|
5
|
-
* any type are provided in the configuration then all values are considered secrets (but not deep or
|
|
5
|
+
* any type are provided in the configuration then all values are considered secrets (but not deep or opaque secrets).
|
|
6
6
|
*/
|
|
7
7
|
export declare class SecretManager {
|
|
8
8
|
private secretKeys?;
|
|
9
9
|
private deepSecretKeys?;
|
|
10
|
-
private
|
|
11
|
-
private
|
|
10
|
+
private opaqueSecretKeys?;
|
|
11
|
+
private removeSecretKeys?;
|
|
12
12
|
private passKeys?;
|
|
13
13
|
constructor(config: SecretManagerConfig);
|
|
14
14
|
/**
|
|
@@ -17,8 +17,8 @@ export declare class SecretManager {
|
|
|
17
17
|
*/
|
|
18
18
|
isSecretKey(key: SecretSpecifierValue): boolean;
|
|
19
19
|
isDeepSecretKey(key: SecretSpecifierValue): boolean;
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
isOpaqueSecretKey(key: SecretSpecifierValue): boolean;
|
|
21
|
+
isRemoveSecretKey(key: SecretSpecifierValue): boolean;
|
|
22
22
|
/** Determines if a key is allowlisted and should not be redacted under deep parents. */
|
|
23
23
|
isPassKey(key: SecretSpecifierValue): boolean;
|
|
24
24
|
getKeyRulePattern(key: SecretSpecifierValue, rule: KeyRule): string | undefined;
|
|
@@ -28,5 +28,4 @@ export declare class SecretManager {
|
|
|
28
28
|
private static findMatchingRegex;
|
|
29
29
|
private static matchesAnyRegex;
|
|
30
30
|
}
|
|
31
|
-
export {};
|
|
32
31
|
//# sourceMappingURL=secretManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secretManager.d.ts","sourceRoot":"","sources":["../../src/rules/secretManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAErE,
|
|
1
|
+
{"version":3,"file":"secretManager.d.ts","sourceRoot":"","sources":["../../src/rules/secretManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAErE,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAS/D;;;GAGG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,UAAU,CAAC,CAAW;IAC9B,OAAO,CAAC,cAAc,CAAC,CAAW;IAClC,OAAO,CAAC,gBAAgB,CAAC,CAAW;IACpC,OAAO,CAAC,gBAAgB,CAAC,CAAW;IACpC,OAAO,CAAC,QAAQ,CAAC,CAAW;gBAEhB,MAAM,EAAE,mBAAmB;IAcvC;;;OAGG;IACI,WAAW,CAAC,GAAG,EAAE,oBAAoB,GAAG,OAAO;IAQ/C,eAAe,CAAC,GAAG,EAAE,oBAAoB,GAAG,OAAO;IAInD,iBAAiB,CAAC,GAAG,EAAE,oBAAoB,GAAG,OAAO;IAIrD,iBAAiB,CAAC,GAAG,EAAE,oBAAoB,GAAG,OAAO;IAI5D,wFAAwF;IACjF,SAAS,CAAC,GAAG,EAAE,oBAAoB,GAAG,OAAO;IAI7C,iBAAiB,CAAC,GAAG,EAAE,oBAAoB,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS;IAK/E,eAAe,CAAC,GAAG,EAAE,oBAAoB,GAAG,OAAO,GAAG,SAAS,GAAG,IAAI;IAc7E,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAIhC,OAAO,CAAC,MAAM,CAAC,eAAe;CAG/B"}
|
|
@@ -3,17 +3,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.SecretManager = void 0;
|
|
4
4
|
const regexUtils_1 = require("../util/regexUtils");
|
|
5
5
|
const KEY_RULE_PRECEDENCE = ['remove', 'opaque', 'deep', 'shallow'];
|
|
6
|
+
const mergeRegexLists = (...lists) => {
|
|
7
|
+
const merged = lists.flatMap((list) => list !== null && list !== void 0 ? list : []);
|
|
8
|
+
return merged.length ? merged : undefined;
|
|
9
|
+
};
|
|
6
10
|
/**
|
|
7
11
|
* Utility class for managing secrets and determining if a given value is a secret of any type. If no secrets of
|
|
8
|
-
* any type are provided in the configuration then all values are considered secrets (but not deep or
|
|
12
|
+
* any type are provided in the configuration then all values are considered secrets (but not deep or opaque secrets).
|
|
9
13
|
*/
|
|
10
14
|
class SecretManager {
|
|
11
15
|
constructor(config) {
|
|
12
16
|
this.deepSecretKeys = config.deepSecretKeys;
|
|
13
|
-
this.
|
|
14
|
-
this.
|
|
17
|
+
this.opaqueSecretKeys = mergeRegexLists(config.opaqueSecretKeys, config.fullSecretKeys);
|
|
18
|
+
this.removeSecretKeys = mergeRegexLists(config.removeSecretKeys, config.deleteSecretKeys);
|
|
15
19
|
this.passKeys = config.passKeys;
|
|
16
|
-
|
|
20
|
+
const hasScopedKeyRules = !!(this.deepSecretKeys || this.opaqueSecretKeys || this.removeSecretKeys);
|
|
21
|
+
if (!config.secretKeys && hasScopedKeyRules) {
|
|
17
22
|
this.secretKeys = [];
|
|
18
23
|
}
|
|
19
24
|
else {
|
|
@@ -33,10 +38,10 @@ class SecretManager {
|
|
|
33
38
|
isDeepSecretKey(key) {
|
|
34
39
|
return this.matchesRule(key, 'deep');
|
|
35
40
|
}
|
|
36
|
-
|
|
41
|
+
isOpaqueSecretKey(key) {
|
|
37
42
|
return this.matchesRule(key, 'opaque');
|
|
38
43
|
}
|
|
39
|
-
|
|
44
|
+
isRemoveSecretKey(key) {
|
|
40
45
|
return this.matchesRule(key, 'remove');
|
|
41
46
|
}
|
|
42
47
|
/** Determines if a key is allowlisted and should not be redacted under deep parents. */
|
|
@@ -65,9 +70,9 @@ class SecretManager {
|
|
|
65
70
|
regexListFor(rule) {
|
|
66
71
|
switch (rule) {
|
|
67
72
|
case 'remove':
|
|
68
|
-
return this.
|
|
73
|
+
return this.removeSecretKeys;
|
|
69
74
|
case 'opaque':
|
|
70
|
-
return this.
|
|
75
|
+
return this.opaqueSecretKeys;
|
|
71
76
|
case 'deep':
|
|
72
77
|
return this.deepSecretKeys;
|
|
73
78
|
case 'shallow':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secretManager.js","sourceRoot":"","sources":["../../src/rules/secretManager.ts"],"names":[],"mappings":";;;AAAA,mDAAkD;AAKlD,MAAM,mBAAmB,GAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;AAE/E;;;GAGG;AACH,MAAa,aAAa;IAOxB,YAAY,MAA2B;QACrC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;QAC5C,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"secretManager.js","sourceRoot":"","sources":["../../src/rules/secretManager.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -37,14 +37,14 @@ export type SyncRedactor = (value: RedactorInput) => string;
|
|
|
37
37
|
* over the legacy Full / Delete names (same numeric values).
|
|
38
38
|
*/
|
|
39
39
|
export declare enum CustomObjectMatchType {
|
|
40
|
-
/** @deprecated Prefer {@link CustomObjectMatchType.Remove}. */
|
|
41
|
-
Delete = 0,
|
|
42
40
|
/** Remove — delete the field from output. */
|
|
43
41
|
Remove = 0,
|
|
44
|
-
/** @deprecated Prefer {@link CustomObjectMatchType.
|
|
45
|
-
|
|
42
|
+
/** @deprecated Prefer {@link CustomObjectMatchType.Remove}. */
|
|
43
|
+
Delete = 0,
|
|
46
44
|
/** Opaque — stringify the entire value, then redact. */
|
|
47
45
|
Opaque = 1,
|
|
46
|
+
/** @deprecated Prefer {@link CustomObjectMatchType.Opaque}. */
|
|
47
|
+
Full = 1,
|
|
48
48
|
Deep = 2,
|
|
49
49
|
Shallow = 3,
|
|
50
50
|
Pass = 4,
|
|
@@ -68,20 +68,20 @@ export type SecretManagerConfig = {
|
|
|
68
68
|
secretKeys?: RegExp[];
|
|
69
69
|
/** Deep — redact matching keys and all descendant primitives (`deepSecretKeys`). */
|
|
70
70
|
deepSecretKeys?: RegExp[];
|
|
71
|
+
/** Opaque — stringify entire value at matching keys, then redact. */
|
|
72
|
+
opaqueSecretKeys?: RegExp[];
|
|
71
73
|
/**
|
|
72
|
-
*
|
|
73
|
-
*
|
|
74
|
+
* @deprecated Prefer {@link SecretManagerConfig.opaqueSecretKeys}.
|
|
75
|
+
* Still accepted and merged into opaqueSecretKeys during construction / normalize.
|
|
74
76
|
*/
|
|
75
77
|
fullSecretKeys?: RegExp[];
|
|
76
|
-
/**
|
|
77
|
-
|
|
78
|
+
/** Remove — delete matching keys from output. */
|
|
79
|
+
removeSecretKeys?: RegExp[];
|
|
78
80
|
/**
|
|
79
|
-
*
|
|
80
|
-
*
|
|
81
|
+
* @deprecated Prefer {@link SecretManagerConfig.removeSecretKeys}.
|
|
82
|
+
* Still accepted and merged into removeSecretKeys during construction / normalize.
|
|
81
83
|
*/
|
|
82
84
|
deleteSecretKeys?: RegExp[];
|
|
83
|
-
/** Remove — preferred name for {@link SecretManagerConfig.deleteSecretKeys}. */
|
|
84
|
-
removeSecretKeys?: RegExp[];
|
|
85
85
|
/**
|
|
86
86
|
* Allowlist — matching key names are never redacted, even under deep or opaque parents (`passKeys`).
|
|
87
87
|
*/
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAE7D,uEAAuE;AACvE,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,CAAC;AAEzD,8EAA8E;AAC9E,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,IAAI,GAAG,YAAY,CAAC;AAEhE,8BAA8B;AAC9B,MAAM,MAAM,UAAU,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAA;CAAE,CAAC;AAElE,6BAA6B;AAC7B,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;AAErD,6BAA6B;AAC7B,MAAM,MAAM,SAAS,GAAG,aAAa,GAAG,UAAU,GAAG,SAAS,CAAC;AAE/D;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,SAAS,CAAC;AAEpD,iFAAiF;AACjF,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,SAAS,CAAC;AAEtD,+DAA+D;AAC/D,MAAM,MAAM,mBAAmB,GAAG,aAAa,CAAC;AAEhD,6CAA6C;AAC7C,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,CAAC,CAAC;AAExE;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE7D,MAAM,MAAM,QAAQ,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAEjE,mGAAmG;AACnG,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK,MAAM,CAAC;AAE5D;;;;GAIG;AACH,oBAAY,qBAAqB;IAC/B,+DAA+D;IAC/D,MAAM,IAAI;IACV,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
|
@@ -8,14 +8,14 @@ exports.isJsonObject = exports.CustomObjectMatchType = void 0;
|
|
|
8
8
|
*/
|
|
9
9
|
var CustomObjectMatchType;
|
|
10
10
|
(function (CustomObjectMatchType) {
|
|
11
|
-
/** @deprecated Prefer {@link CustomObjectMatchType.Remove}. */
|
|
12
|
-
CustomObjectMatchType[CustomObjectMatchType["Delete"] = 0] = "Delete";
|
|
13
11
|
/** Remove — delete the field from output. */
|
|
14
12
|
CustomObjectMatchType[CustomObjectMatchType["Remove"] = 0] = "Remove";
|
|
15
|
-
/** @deprecated Prefer {@link CustomObjectMatchType.
|
|
16
|
-
CustomObjectMatchType[CustomObjectMatchType["
|
|
13
|
+
/** @deprecated Prefer {@link CustomObjectMatchType.Remove}. */
|
|
14
|
+
CustomObjectMatchType[CustomObjectMatchType["Delete"] = 0] = "Delete";
|
|
17
15
|
/** Opaque — stringify the entire value, then redact. */
|
|
18
16
|
CustomObjectMatchType[CustomObjectMatchType["Opaque"] = 1] = "Opaque";
|
|
17
|
+
/** @deprecated Prefer {@link CustomObjectMatchType.Opaque}. */
|
|
18
|
+
CustomObjectMatchType[CustomObjectMatchType["Full"] = 1] = "Full";
|
|
19
19
|
CustomObjectMatchType[CustomObjectMatchType["Deep"] = 2] = "Deep";
|
|
20
20
|
CustomObjectMatchType[CustomObjectMatchType["Shallow"] = 3] = "Shallow";
|
|
21
21
|
CustomObjectMatchType[CustomObjectMatchType["Pass"] = 4] = "Pass";
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AA4CA;;;;GAIG;AACH,IAAY,qBAaX;AAbD,WAAY,qBAAqB;IAC/B,+DAA+D;IAC/D,qEAAU,CAAA;IACV,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AA4CA;;;;GAIG;AACH,IAAY,qBAaX;AAbD,WAAY,qBAAqB;IAC/B,6CAA6C;IAC7C,qEAAU,CAAA;IACV,+DAA+D;IAC/D,qEAAU,CAAA;IACV,wDAAwD;IACxD,qEAAU,CAAA;IACV,+DAA+D;IAC/D,iEAAQ,CAAA;IACR,iEAAQ,CAAA;IACR,uEAAW,CAAA;IACX,iEAAQ,CAAA;IACR,qEAAU,CAAA;AACZ,CAAC,EAbW,qBAAqB,qCAArB,qBAAqB,QAahC;AAoIM,MAAM,YAAY,GAAG,CAAC,KAA4B,EAAuB,EAAE,CAChF,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,KAAK,YAAY,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAD/E,QAAA,YAAY,gBACmE"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
export type MaybeAsync<T> = T | Promise<T>;
|
|
2
|
-
export declare const awaitMaybe: <T>(value: MaybeAsync<T>) => Promise<T>;
|
|
3
2
|
/** Normalizes sync results for async traversal without forcing Promises on the sync path. */
|
|
4
3
|
export declare const resolveMaybeAsync: <T>(value: MaybeAsync<T>, asyncMode: boolean) => MaybeAsync<T>;
|
|
5
4
|
export declare const runSequential: <T>(items: readonly T[], process: (item: T, index: number) => MaybeAsync<void>, asyncMode: boolean) => MaybeAsync<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"maybeAsync.d.ts","sourceRoot":"","sources":["../../src/util/maybeAsync.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAE3C,
|
|
1
|
+
{"version":3,"file":"maybeAsync.d.ts","sourceRoot":"","sources":["../../src/util/maybeAsync.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAE3C,6FAA6F;AAC7F,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,aAAa,OAAO,KAAG,UAAU,CAAC,CAAC,CAU3F,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,CAAC,SACtB,SAAS,CAAC,EAAE,WACV,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,UAAU,CAAC,IAAI,CAAC,aAC1C,OAAO,KACjB,UAAU,CAAC,IAAI,CAgBjB,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,CAAC,QAAQ,UAAU,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,aAAa,OAAO,KAAG,UAAU,CAAC,CAAC,CAa/G,CAAC"}
|
package/dist/util/maybeAsync.js
CHANGED
|
@@ -9,9 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.finalizeMaybeAsync = exports.runSequential = exports.resolveMaybeAsync =
|
|
13
|
-
const awaitMaybe = (value) => __awaiter(void 0, void 0, void 0, function* () { return value; });
|
|
14
|
-
exports.awaitMaybe = awaitMaybe;
|
|
12
|
+
exports.finalizeMaybeAsync = exports.runSequential = exports.resolveMaybeAsync = void 0;
|
|
15
13
|
/** Normalizes sync results for async traversal without forcing Promises on the sync path. */
|
|
16
14
|
const resolveMaybeAsync = (value, asyncMode) => {
|
|
17
15
|
if (!asyncMode) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"maybeAsync.js","sourceRoot":"","sources":["../../src/util/maybeAsync.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"maybeAsync.js","sourceRoot":"","sources":["../../src/util/maybeAsync.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,6FAA6F;AACtF,MAAM,iBAAiB,GAAG,CAAI,KAAoB,EAAE,SAAkB,EAAiB,EAAE;IAC9F,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,OAAO,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,KAAK,YAAY,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AACnE,CAAC,CAAC;AAVW,QAAA,iBAAiB,qBAU5B;AAEK,MAAM,aAAa,GAAG,CAC3B,KAAmB,EACnB,OAAqD,EACrD,SAAkB,EACA,EAAE;IACpB,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;YAC5C,IAAI,MAAM,YAAY,OAAO,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;QACD,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAS,EAAE;QACjB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YAClD,MAAM,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,CAAA,CAAC,EAAE,CAAC;AACP,CAAC,CAAC;AApBW,QAAA,aAAa,iBAoBxB;AAEK,MAAM,kBAAkB,GAAG,CAAI,IAAsB,EAAE,MAAe,EAAE,SAAkB,EAAiB,EAAE;IAClH,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,IAAI,IAAI,YAAY,OAAO,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,IAAI,IAAI,YAAY,OAAO,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;IAED,OAAO,MAAM,EAAE,CAAC;AAClB,CAAC,CAAC;AAbW,QAAA,kBAAkB,sBAa7B"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { JsonLeafValue, JsonValue, RedactablePrimitive } from '../types';
|
|
2
|
+
export declare function getStringValue(val: JsonValue | undefined): RedactablePrimitive;
|
|
3
|
+
export declare function toRedactablePrimitive(value: JsonLeafValue | undefined): RedactablePrimitive;
|
|
4
|
+
//# sourceMappingURL=primitiveCoercion.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"primitiveCoercion.d.ts","sourceRoot":"","sources":["../../src/util/primitiveCoercion.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EACb,SAAS,EACT,mBAAmB,EACpB,MAAM,UAAU,CAAC;AAElB,wBAAgB,cAAc,CAAC,GAAG,EAAE,SAAS,GAAG,SAAS,GAAG,mBAAmB,CAU9E;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,GAAG,mBAAmB,CAM3F"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getStringValue = getStringValue;
|
|
4
|
+
exports.toRedactablePrimitive = toRedactablePrimitive;
|
|
5
|
+
const types_1 = require("../types");
|
|
6
|
+
function getStringValue(val) {
|
|
7
|
+
if ((0, types_1.isJsonObject)(val) || Array.isArray(val)) {
|
|
8
|
+
return JSON.stringify(val);
|
|
9
|
+
}
|
|
10
|
+
if (val instanceof Date || typeof val === 'function') {
|
|
11
|
+
return val.toString();
|
|
12
|
+
}
|
|
13
|
+
return val;
|
|
14
|
+
}
|
|
15
|
+
function toRedactablePrimitive(value) {
|
|
16
|
+
if (value instanceof Date || typeof value === 'function') {
|
|
17
|
+
return getStringValue(value);
|
|
18
|
+
}
|
|
19
|
+
return value;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=primitiveCoercion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"primitiveCoercion.js","sourceRoot":"","sources":["../../src/util/primitiveCoercion.ts"],"names":[],"mappings":";;AAOA,wCAUC;AAED,sDAMC;AAzBD,oCAKkB;AAElB,SAAgB,cAAc,CAAC,GAA0B;IACvD,IAAI,IAAA,oBAAY,EAAC,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5C,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,IAAI,GAAG,YAAY,IAAI,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;QACrD,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAgB,qBAAqB,CAAC,KAAgC;IACpE,IAAI,KAAK,YAAY,IAAI,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;QACzD,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -4,7 +4,7 @@ Common mistakes when configuring Field Redactor — and what to do instead. Many
|
|
|
4
4
|
|
|
5
5
|
## Using `new FieldRedactor()` without rules
|
|
6
6
|
|
|
7
|
-
**Problem:** With no `secretKeys`, `deepSecretKeys`, `
|
|
7
|
+
**Problem:** With no `secretKeys`, `deepSecretKeys`, `opaqueSecretKeys`, `removeSecretKeys`, or `customObjects`, every value is redacted. Easy to ship a config that wipes entire payloads.
|
|
8
8
|
|
|
9
9
|
**Instead:** Use `FieldRedactor.createSafe()`, `FieldRedactorConfigBuilder.buildSafeRedactor()`, or the builder with at least one explicit rule.
|
|
10
10
|
|
|
@@ -33,7 +33,7 @@ const metadataSchema: CustomObject = {
|
|
|
33
33
|
|
|
34
34
|
## Sibling key rules
|
|
35
35
|
|
|
36
|
-
When a schema field is a **string** (e.g. `value: 'name'`), that string names a sibling key. The sibling's **value** is tested against `secretKeys`, `deepSecretKeys`, `
|
|
36
|
+
When a schema field is a **string** (e.g. `value: 'name'`), that string names a sibling key. The sibling's **value** is tested against `secretKeys`, `deepSecretKeys`, `opaqueSecretKeys`, and `removeSecretKeys`.
|
|
37
37
|
|
|
38
38
|
Falsy sibling values (`""`, `0`, `false`) are evaluated when the sibling key is present.
|
|
39
39
|
|
|
@@ -104,7 +104,7 @@ const redactor = FieldRedactor.createSafe({
|
|
|
104
104
|
});
|
|
105
105
|
```
|
|
106
106
|
|
|
107
|
-
`presets.loggingMetadata()` includes `{ name, type, value }` schema and `
|
|
107
|
+
`presets.loggingMetadata()` includes `{ name, type, value }` schema and `removeSecretKeys: [/authKey/i]`.
|
|
108
108
|
|
|
109
109
|
## Related
|
|
110
110
|
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
# Migration: npm 1.5.x → 1.6.
|
|
1
|
+
# Migration: npm 1.5.x → 1.6.x
|
|
2
2
|
|
|
3
|
-
**1.6.0** is a minor release: new features and aliases with no required config changes for typical upgrades from **1.5.0**.
|
|
3
|
+
**1.6.0** is a minor release: new features and aliases with no required config changes for typical upgrades from **1.5.0**. **1.6.1** / **1.6.2** are internal cleanup patches (install only; see [v1.6.1](../release-notes/v1.6.1.md) and [v1.6.2](../release-notes/v1.6.2.md)).
|
|
4
4
|
|
|
5
5
|
## Install
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
|
-
npm install field-redactor@1.6.
|
|
8
|
+
npm install field-redactor@1.6.2
|
|
9
9
|
# or
|
|
10
|
-
yarn add field-redactor@1.6.
|
|
10
|
+
yarn add field-redactor@1.6.2
|
|
11
11
|
```
|
|
12
12
|
|
|
13
13
|
## What you can adopt (optional)
|
|
@@ -32,7 +32,7 @@ See [Path rules & allowlists](path-rules.md).
|
|
|
32
32
|
| `CustomObjectMatchType.Opaque` | `CustomObjectMatchType.Full` |
|
|
33
33
|
| `CustomObjectMatchType.Remove` | `CustomObjectMatchType.Delete` |
|
|
34
34
|
|
|
35
|
-
Builder methods `.opaque()` / `.remove()`
|
|
35
|
+
Builder methods `.opaque()` / `.remove()` write `opaqueSecretKeys` / `removeSecretKeys`. Legacy `fullSecretKeys` / `deleteSecretKeys` remain accepted on config objects and are normalized internally.
|
|
36
36
|
|
|
37
37
|
## Behavior-sensitive notes
|
|
38
38
|
|
|
@@ -52,5 +52,7 @@ Source files were reorganized under `api/`, `engine/`, `rules/`, etc. That affec
|
|
|
52
52
|
|
|
53
53
|
## Links
|
|
54
54
|
|
|
55
|
+
- [Release notes v1.6.2](../release-notes/v1.6.2.md)
|
|
56
|
+
- [Release notes v1.6.1](../release-notes/v1.6.1.md)
|
|
55
57
|
- [Release notes v1.6.0](../release-notes/v1.6.0.md)
|
|
56
58
|
- [CHANGELOG](../../CHANGELOG.md)
|