casbin 5.48.0 → 5.49.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/lib/cjs/cachedEnforcer.js +1 -1
- package/lib/cjs/config.js +1 -1
- package/lib/cjs/coreEnforcer.js +25 -25
- package/lib/cjs/effect/defaultEffectorStream.js +5 -5
- package/lib/cjs/effect/index.js +6 -2
- package/lib/cjs/enforceContext.js +2 -1
- package/lib/cjs/enforcer.js +17 -13
- package/lib/cjs/frontend.js +2 -2
- package/lib/cjs/index.js +7 -3
- package/lib/cjs/internalEnforcer.js +7 -7
- package/lib/cjs/log/index.js +6 -2
- package/lib/cjs/model/assertion.js +7 -3
- package/lib/cjs/model/functionMap.d.ts +1 -1
- package/lib/cjs/model/functionMap.js +6 -2
- package/lib/cjs/model/index.js +6 -2
- package/lib/cjs/model/model.js +17 -13
- package/lib/cjs/persist/defaultFilteredAdapter.js +1 -1
- package/lib/cjs/persist/fileAdapter.js +4 -4
- package/lib/cjs/persist/fileSystem.d.ts +1 -1
- package/lib/cjs/persist/fileSystem.js +6 -3
- package/lib/cjs/persist/helper.js +1 -1
- package/lib/cjs/persist/index.js +6 -2
- package/lib/cjs/rbac/defaultRoleManager.d.ts +1 -1
- package/lib/cjs/rbac/defaultRoleManager.js +2 -2
- package/lib/cjs/rbac/index.js +6 -2
- package/lib/cjs/syncedEnforcer.js +1 -1
- package/lib/cjs/util/builtinOperators.js +1 -1
- package/lib/cjs/util/index.js +6 -2
- package/lib/cjs/util/ip.d.ts +3 -3
- package/lib/cjs/util/util.d.ts +2 -2
- package/lib/cjs/util/util.js +4 -4
- package/lib/esm/constants.js +1 -0
- package/lib/esm/effect/defaultEffectorStream.js +5 -5
- package/lib/esm/effect/effectorStream.js +1 -0
- package/lib/esm/enforcer.js +5 -5
- package/lib/esm/internalEnforcer.js +7 -7
- package/lib/esm/log/logger.js +1 -0
- package/lib/esm/model/functionMap.d.ts +1 -1
- package/lib/esm/model/model.js +6 -6
- package/lib/esm/persist/adapter.js +1 -0
- package/lib/esm/persist/batchAdapter.js +1 -0
- package/lib/esm/persist/fileSystem.d.ts +1 -1
- package/lib/esm/persist/filteredAdapter.js +1 -0
- package/lib/esm/persist/updatableAdapter.js +1 -0
- package/lib/esm/persist/watcher.js +1 -0
- package/lib/esm/persist/watcherEx.js +1 -0
- package/lib/esm/rbac/defaultRoleManager.d.ts +1 -1
- package/lib/esm/rbac/roleManager.js +1 -0
- package/lib/esm/util/ip.d.ts +3 -3
- package/lib/esm/util/util.d.ts +2 -2
- package/lib/esm/util/util.js +2 -2
- package/package.json +3 -3
|
@@ -67,6 +67,6 @@ class CachedEnforcer extends enforcer_1.Enforcer {
|
|
|
67
67
|
exports.CachedEnforcer = CachedEnforcer;
|
|
68
68
|
// newCachedEnforcer creates a cached enforcer via file or DB.
|
|
69
69
|
async function newCachedEnforcer(...params) {
|
|
70
|
-
return enforcer_1.newEnforcerWithClass(CachedEnforcer, ...params);
|
|
70
|
+
return (0, enforcer_1.newEnforcerWithClass)(CachedEnforcer, ...params);
|
|
71
71
|
}
|
|
72
72
|
exports.newCachedEnforcer = newCachedEnforcer;
|
package/lib/cjs/config.js
CHANGED
|
@@ -74,7 +74,7 @@ class Config {
|
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
parse(path) {
|
|
77
|
-
const body = (this.fs ? this.fs : persist_1.mustGetDefaultFileSystem()).readFileSync(path);
|
|
77
|
+
const body = (this.fs ? this.fs : (0, persist_1.mustGetDefaultFileSystem)()).readFileSync(path);
|
|
78
78
|
this.parseBuffer(Buffer.isBuffer(body) ? body : Buffer.from(body));
|
|
79
79
|
}
|
|
80
80
|
parseBuffer(buf) {
|
package/lib/cjs/coreEnforcer.js
CHANGED
|
@@ -53,11 +53,11 @@ class CoreEnforcer {
|
|
|
53
53
|
}
|
|
54
54
|
getExpression(asyncCompile, exp) {
|
|
55
55
|
const matcherKey = `${asyncCompile ? 'ASYNC[' : 'SYNC['}${exp}]`;
|
|
56
|
-
expression_eval_1.addBinaryOp('in', 1, util_1.customIn);
|
|
56
|
+
(0, expression_eval_1.addBinaryOp)('in', 1, util_1.customIn);
|
|
57
57
|
let expression = this.matcherMap.get(matcherKey);
|
|
58
58
|
if (!expression) {
|
|
59
|
-
exp = util_1.bracketCompatible(exp);
|
|
60
|
-
expression = asyncCompile ? expression_eval_1.compileAsync(exp) : expression_eval_1.compile(exp);
|
|
59
|
+
exp = (0, util_1.bracketCompatible)(exp);
|
|
60
|
+
expression = asyncCompile ? (0, expression_eval_1.compileAsync)(exp) : (0, expression_eval_1.compile)(exp);
|
|
61
61
|
this.matcherMap.set(matcherKey, expression);
|
|
62
62
|
}
|
|
63
63
|
return expression;
|
|
@@ -68,7 +68,7 @@ class CoreEnforcer {
|
|
|
68
68
|
* so the policy is invalidated and needs to be reloaded by calling LoadPolicy().
|
|
69
69
|
*/
|
|
70
70
|
loadModel() {
|
|
71
|
-
this.model = model_1.newModelFromFile(this.modelPath, this.fs);
|
|
71
|
+
this.model = (0, model_1.newModelFromFile)(this.modelPath, this.fs);
|
|
72
72
|
this.model.printModel();
|
|
73
73
|
}
|
|
74
74
|
/**
|
|
@@ -276,7 +276,7 @@ class CoreEnforcer {
|
|
|
276
276
|
* @param enable whether to enable Casbin's log.
|
|
277
277
|
*/
|
|
278
278
|
enableLog(enable) {
|
|
279
|
-
log_1.getLogger().enableLog(enable);
|
|
279
|
+
(0, log_1.getLogger)().enableLog(enable);
|
|
280
280
|
}
|
|
281
281
|
/**
|
|
282
282
|
* enableAutoSave controls whether to save a policy rule automatically to
|
|
@@ -373,14 +373,14 @@ class CoreEnforcer {
|
|
|
373
373
|
const astMap = this.model.model.get('g');
|
|
374
374
|
astMap === null || astMap === void 0 ? void 0 : astMap.forEach((value, key) => {
|
|
375
375
|
const rm = value.rm;
|
|
376
|
-
functions[key] = asyncCompile ? util_1.generateGFunction(rm) : util_1.generateSyncedGFunction(rm);
|
|
376
|
+
functions[key] = asyncCompile ? (0, util_1.generateGFunction)(rm) : (0, util_1.generateSyncedGFunction)(rm);
|
|
377
377
|
});
|
|
378
378
|
let expString;
|
|
379
379
|
if (!matcher) {
|
|
380
380
|
expString = (_b = (_a = this.model.model.get('m')) === null || _a === void 0 ? void 0 : _a.get(enforceContext.mType)) === null || _b === void 0 ? void 0 : _b.value;
|
|
381
381
|
}
|
|
382
382
|
else {
|
|
383
|
-
expString = util_1.removeComments(util_1.escapeAssertion(matcher));
|
|
383
|
+
expString = (0, util_1.removeComments)((0, util_1.escapeAssertion)(matcher));
|
|
384
384
|
}
|
|
385
385
|
if (!expString) {
|
|
386
386
|
throw new Error('Unable to find matchers in model');
|
|
@@ -389,7 +389,7 @@ class CoreEnforcer {
|
|
|
389
389
|
if (!effectExpr) {
|
|
390
390
|
throw new Error('Unable to find policy_effect in model');
|
|
391
391
|
}
|
|
392
|
-
const HasEval = util_1.hasEval(expString);
|
|
392
|
+
const HasEval = (0, util_1.hasEval)(expString);
|
|
393
393
|
let expression = undefined;
|
|
394
394
|
const p = (_e = this.model.model.get('p')) === null || _e === void 0 ? void 0 : _e.get(enforceContext.pType);
|
|
395
395
|
const policyLen = (_f = p === null || p === void 0 ? void 0 : p.policy) === null || _f === void 0 ? void 0 : _f.length;
|
|
@@ -422,12 +422,12 @@ class CoreEnforcer {
|
|
|
422
422
|
parameters[token] = p === null || p === void 0 ? void 0 : p.policy[i][j];
|
|
423
423
|
});
|
|
424
424
|
if (HasEval) {
|
|
425
|
-
const ruleNames = util_1.getEvalValue(expString);
|
|
425
|
+
const ruleNames = (0, util_1.getEvalValue)(expString);
|
|
426
426
|
let expWithRule = expString;
|
|
427
427
|
for (const ruleName of ruleNames) {
|
|
428
428
|
if (ruleName in parameters) {
|
|
429
|
-
const rule = util_1.escapeAssertion(parameters[ruleName]);
|
|
430
|
-
expWithRule = util_1.replaceEval(expWithRule, ruleName, rule);
|
|
429
|
+
const rule = (0, util_1.escapeAssertion)(parameters[ruleName]);
|
|
430
|
+
expWithRule = (0, util_1.replaceEval)(expWithRule, ruleName, rule);
|
|
431
431
|
}
|
|
432
432
|
else {
|
|
433
433
|
throw new Error(`${ruleName} not in ${parameters}`);
|
|
@@ -509,7 +509,7 @@ class CoreEnforcer {
|
|
|
509
509
|
const res = effectStream.current();
|
|
510
510
|
// only generate the request --> result string if the message
|
|
511
511
|
// is going to be logged.
|
|
512
|
-
if (log_1.getLogger().isEnable()) {
|
|
512
|
+
if ((0, log_1.getLogger)().isEnable()) {
|
|
513
513
|
let reqStr = 'Request: ';
|
|
514
514
|
for (let i = 0; i < rvals.length; i++) {
|
|
515
515
|
if (i !== rvals.length - 1) {
|
|
@@ -520,7 +520,7 @@ class CoreEnforcer {
|
|
|
520
520
|
}
|
|
521
521
|
}
|
|
522
522
|
reqStr += ` ---> ${res}`;
|
|
523
|
-
log_1.logPrint(reqStr);
|
|
523
|
+
(0, log_1.logPrint)(reqStr);
|
|
524
524
|
}
|
|
525
525
|
if (explain) {
|
|
526
526
|
if (explainIndex === -1) {
|
|
@@ -543,9 +543,9 @@ class CoreEnforcer {
|
|
|
543
543
|
enforceSync(...rvals) {
|
|
544
544
|
if (rvals[0] instanceof enforceContext_1.EnforceContext) {
|
|
545
545
|
const enforceContext = rvals.shift();
|
|
546
|
-
return util_1.generatorRunSync(this.privateEnforce(false, false, '', enforceContext, ...rvals));
|
|
546
|
+
return (0, util_1.generatorRunSync)(this.privateEnforce(false, false, '', enforceContext, ...rvals));
|
|
547
547
|
}
|
|
548
|
-
return util_1.generatorRunSync(this.privateEnforce(false, false, '', this.defaultEnforceContext, ...rvals));
|
|
548
|
+
return (0, util_1.generatorRunSync)(this.privateEnforce(false, false, '', this.defaultEnforceContext, ...rvals));
|
|
549
549
|
}
|
|
550
550
|
/**
|
|
551
551
|
* If the matchers does not contain an asynchronous method, call it faster.
|
|
@@ -560,9 +560,9 @@ class CoreEnforcer {
|
|
|
560
560
|
enforceExSync(...rvals) {
|
|
561
561
|
if (rvals[0] instanceof enforceContext_1.EnforceContext) {
|
|
562
562
|
const enforceContext = rvals.shift();
|
|
563
|
-
return util_1.generatorRunSync(this.privateEnforce(false, true, '', enforceContext, ...rvals));
|
|
563
|
+
return (0, util_1.generatorRunSync)(this.privateEnforce(false, true, '', enforceContext, ...rvals));
|
|
564
564
|
}
|
|
565
|
-
return util_1.generatorRunSync(this.privateEnforce(false, true, '', this.defaultEnforceContext, ...rvals));
|
|
565
|
+
return (0, util_1.generatorRunSync)(this.privateEnforce(false, true, '', this.defaultEnforceContext, ...rvals));
|
|
566
566
|
}
|
|
567
567
|
/**
|
|
568
568
|
* Same as enforceSync. To be removed.
|
|
@@ -581,9 +581,9 @@ class CoreEnforcer {
|
|
|
581
581
|
async enforce(...rvals) {
|
|
582
582
|
if (rvals[0] instanceof enforceContext_1.EnforceContext) {
|
|
583
583
|
const enforceContext = rvals.shift();
|
|
584
|
-
return util_1.generatorRunAsync(this.privateEnforce(true, false, '', enforceContext, ...rvals));
|
|
584
|
+
return (0, util_1.generatorRunAsync)(this.privateEnforce(true, false, '', enforceContext, ...rvals));
|
|
585
585
|
}
|
|
586
|
-
return util_1.generatorRunAsync(this.privateEnforce(true, false, '', this.defaultEnforceContext, ...rvals));
|
|
586
|
+
return (0, util_1.generatorRunAsync)(this.privateEnforce(true, false, '', this.defaultEnforceContext, ...rvals));
|
|
587
587
|
}
|
|
588
588
|
/**
|
|
589
589
|
* enforceWithMatcher decides whether a "subject" can access a "object" with
|
|
@@ -598,9 +598,9 @@ class CoreEnforcer {
|
|
|
598
598
|
async enforceWithMatcher(matcher, ...rvals) {
|
|
599
599
|
if (rvals[0] instanceof enforceContext_1.EnforceContext) {
|
|
600
600
|
const enforceContext = rvals.shift();
|
|
601
|
-
return util_1.generatorRunAsync(this.privateEnforce(true, false, matcher, enforceContext, ...rvals));
|
|
601
|
+
return (0, util_1.generatorRunAsync)(this.privateEnforce(true, false, matcher, enforceContext, ...rvals));
|
|
602
602
|
}
|
|
603
|
-
return util_1.generatorRunAsync(this.privateEnforce(true, false, matcher, this.defaultEnforceContext, ...rvals));
|
|
603
|
+
return (0, util_1.generatorRunAsync)(this.privateEnforce(true, false, matcher, this.defaultEnforceContext, ...rvals));
|
|
604
604
|
}
|
|
605
605
|
/**
|
|
606
606
|
* enforce decides whether a "subject" can access a "object" with
|
|
@@ -613,9 +613,9 @@ class CoreEnforcer {
|
|
|
613
613
|
async enforceEx(...rvals) {
|
|
614
614
|
if (rvals[0] instanceof enforceContext_1.EnforceContext) {
|
|
615
615
|
const enforceContext = rvals.shift();
|
|
616
|
-
return util_1.generatorRunAsync(this.privateEnforce(true, true, '', enforceContext, ...rvals));
|
|
616
|
+
return (0, util_1.generatorRunAsync)(this.privateEnforce(true, true, '', enforceContext, ...rvals));
|
|
617
617
|
}
|
|
618
|
-
return util_1.generatorRunAsync(this.privateEnforce(true, true, '', this.defaultEnforceContext, ...rvals));
|
|
618
|
+
return (0, util_1.generatorRunAsync)(this.privateEnforce(true, true, '', this.defaultEnforceContext, ...rvals));
|
|
619
619
|
}
|
|
620
620
|
/**
|
|
621
621
|
* enforceExWithMatcher decides whether a "subject" can access a "object" with
|
|
@@ -630,9 +630,9 @@ class CoreEnforcer {
|
|
|
630
630
|
async enforceExWithMatcher(matcher, ...rvals) {
|
|
631
631
|
if (rvals[0] instanceof enforceContext_1.EnforceContext) {
|
|
632
632
|
const enforceContext = rvals.shift();
|
|
633
|
-
return util_1.generatorRunAsync(this.privateEnforce(true, true, matcher, enforceContext, ...rvals));
|
|
633
|
+
return (0, util_1.generatorRunAsync)(this.privateEnforce(true, true, matcher, enforceContext, ...rvals));
|
|
634
634
|
}
|
|
635
|
-
return util_1.generatorRunAsync(this.privateEnforce(true, true, matcher, this.defaultEnforceContext, ...rvals));
|
|
635
|
+
return (0, util_1.generatorRunAsync)(this.privateEnforce(true, true, matcher, this.defaultEnforceContext, ...rvals));
|
|
636
636
|
}
|
|
637
637
|
/**
|
|
638
638
|
* batchEnforce enforces each request and returns result in a bool array.
|
|
@@ -30,14 +30,14 @@ class DefaultEffectorStream {
|
|
|
30
30
|
}
|
|
31
31
|
pushEffect(eft) {
|
|
32
32
|
switch (this.expr) {
|
|
33
|
-
case "some(where (p_eft == allow))" /* ALLOW */:
|
|
33
|
+
case "some(where (p_eft == allow))" /* EffectExpress.ALLOW */:
|
|
34
34
|
if (eft === effector_1.Effect.Allow) {
|
|
35
35
|
this.res = true;
|
|
36
36
|
this.done = true;
|
|
37
37
|
this.rec = true;
|
|
38
38
|
}
|
|
39
39
|
break;
|
|
40
|
-
case "!some(where (p_eft == deny))" /* DENY */:
|
|
40
|
+
case "!some(where (p_eft == deny))" /* EffectExpress.DENY */:
|
|
41
41
|
this.res = true;
|
|
42
42
|
if (eft === effector_1.Effect.Deny) {
|
|
43
43
|
this.res = false;
|
|
@@ -45,7 +45,7 @@ class DefaultEffectorStream {
|
|
|
45
45
|
this.rec = true;
|
|
46
46
|
}
|
|
47
47
|
break;
|
|
48
|
-
case "some(where (p_eft == allow)) && !some(where (p_eft == deny))" /* ALLOW_AND_DENY */:
|
|
48
|
+
case "some(where (p_eft == allow)) && !some(where (p_eft == deny))" /* EffectExpress.ALLOW_AND_DENY */:
|
|
49
49
|
if (eft === effector_1.Effect.Allow) {
|
|
50
50
|
this.res = true;
|
|
51
51
|
this.rec = true;
|
|
@@ -59,8 +59,8 @@ class DefaultEffectorStream {
|
|
|
59
59
|
this.rec = false;
|
|
60
60
|
}
|
|
61
61
|
break;
|
|
62
|
-
case "priority(p_eft) || deny" /* PRIORITY */:
|
|
63
|
-
case "subjectPriority(p_eft) || deny" /* SUBJECT_PRIORITY */:
|
|
62
|
+
case "priority(p_eft) || deny" /* EffectExpress.PRIORITY */:
|
|
63
|
+
case "subjectPriority(p_eft) || deny" /* EffectExpress.SUBJECT_PRIORITY */:
|
|
64
64
|
if (eft !== effector_1.Effect.Indeterminate) {
|
|
65
65
|
this.res = eft === effector_1.Effect.Allow;
|
|
66
66
|
this.done = true;
|
package/lib/cjs/effect/index.js
CHANGED
|
@@ -14,13 +14,17 @@
|
|
|
14
14
|
// limitations under the License.
|
|
15
15
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
16
16
|
if (k2 === undefined) k2 = k;
|
|
17
|
-
Object.
|
|
17
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
18
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
19
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
20
|
+
}
|
|
21
|
+
Object.defineProperty(o, k2, desc);
|
|
18
22
|
}) : (function(o, m, k, k2) {
|
|
19
23
|
if (k2 === undefined) k2 = k;
|
|
20
24
|
o[k2] = m[k];
|
|
21
25
|
}));
|
|
22
26
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
23
|
-
for (var p in m) if (p !== "default" && !
|
|
27
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
24
28
|
};
|
|
25
29
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
30
|
__exportStar(require("./effector"), exports);
|
|
@@ -23,6 +23,7 @@ class EnforceContext {
|
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
exports.EnforceContext = EnforceContext;
|
|
26
|
-
|
|
26
|
+
const newEnforceContext = (index) => {
|
|
27
27
|
return new EnforceContext('r' + index, 'p' + index, 'e' + index, 'm' + index);
|
|
28
28
|
};
|
|
29
|
+
exports.newEnforceContext = newEnforceContext;
|
package/lib/cjs/enforcer.js
CHANGED
|
@@ -14,7 +14,11 @@
|
|
|
14
14
|
// limitations under the License.
|
|
15
15
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
16
16
|
if (k2 === undefined) k2 = k;
|
|
17
|
-
Object.
|
|
17
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
18
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
19
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
20
|
+
}
|
|
21
|
+
Object.defineProperty(o, k2, desc);
|
|
18
22
|
}) : (function(o, m, k, k2) {
|
|
19
23
|
if (k2 === undefined) k2 = k;
|
|
20
24
|
o[k2] = m[k];
|
|
@@ -27,7 +31,7 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
27
31
|
var __importStar = (this && this.__importStar) || function (mod) {
|
|
28
32
|
if (mod && mod.__esModule) return mod;
|
|
29
33
|
var result = {};
|
|
30
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
34
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
31
35
|
__setModuleDefault(result, mod);
|
|
32
36
|
return result;
|
|
33
37
|
};
|
|
@@ -69,7 +73,7 @@ class Enforcer extends managementEnforcer_1.ManagementEnforcer {
|
|
|
69
73
|
* @param lazyLoad whether to load policy at initial time
|
|
70
74
|
*/
|
|
71
75
|
async initWithAdapter(modelPath, adapter, lazyLoad = false) {
|
|
72
|
-
const m = model_1.newModelFromFile(modelPath, this.fs);
|
|
76
|
+
const m = (0, model_1.newModelFromFile)(modelPath, this.fs);
|
|
73
77
|
await this.initWithModelAndAdapter(m, adapter, lazyLoad);
|
|
74
78
|
this.modelPath = modelPath;
|
|
75
79
|
}
|
|
@@ -200,7 +204,7 @@ class Enforcer extends managementEnforcer_1.ManagementEnforcer {
|
|
|
200
204
|
throw new Error('user must not be empty');
|
|
201
205
|
}
|
|
202
206
|
if (domain === undefined) {
|
|
203
|
-
const subIndex = this.getFieldIndex('p', "sub" /* Subject */);
|
|
207
|
+
const subIndex = this.getFieldIndex('p', "sub" /* FieldIndex.Subject */);
|
|
204
208
|
return this.removeFilteredGroupingPolicy(subIndex, user);
|
|
205
209
|
}
|
|
206
210
|
else {
|
|
@@ -218,7 +222,7 @@ class Enforcer extends managementEnforcer_1.ManagementEnforcer {
|
|
|
218
222
|
if (!user) {
|
|
219
223
|
throw new Error('user must not be empty');
|
|
220
224
|
}
|
|
221
|
-
const subIndex = this.getFieldIndex('p', "sub" /* Subject */);
|
|
225
|
+
const subIndex = this.getFieldIndex('p', "sub" /* FieldIndex.Subject */);
|
|
222
226
|
const res1 = await this.removeFilteredGroupingPolicy(subIndex, user);
|
|
223
227
|
const res2 = await this.removeFilteredPolicy(subIndex, user);
|
|
224
228
|
return res1 || res2;
|
|
@@ -234,7 +238,7 @@ class Enforcer extends managementEnforcer_1.ManagementEnforcer {
|
|
|
234
238
|
if (!role) {
|
|
235
239
|
throw new Error('role must not be empty');
|
|
236
240
|
}
|
|
237
|
-
const subIndex = this.getFieldIndex('p', "sub" /* Subject */);
|
|
241
|
+
const subIndex = this.getFieldIndex('p', "sub" /* FieldIndex.Subject */);
|
|
238
242
|
const res1 = await this.removeFilteredGroupingPolicy(subIndex, role);
|
|
239
243
|
const res2 = await this.removeFilteredPolicy(subIndex, role);
|
|
240
244
|
return res1 || res2;
|
|
@@ -290,7 +294,7 @@ class Enforcer extends managementEnforcer_1.ManagementEnforcer {
|
|
|
290
294
|
if (!user) {
|
|
291
295
|
throw new Error('user must not be empty');
|
|
292
296
|
}
|
|
293
|
-
const subIndex = this.getFieldIndex('p', "sub" /* Subject */);
|
|
297
|
+
const subIndex = this.getFieldIndex('p', "sub" /* FieldIndex.Subject */);
|
|
294
298
|
return this.removeFilteredPolicy(subIndex, user);
|
|
295
299
|
}
|
|
296
300
|
/**
|
|
@@ -300,7 +304,7 @@ class Enforcer extends managementEnforcer_1.ManagementEnforcer {
|
|
|
300
304
|
* @return the permissions, a permission is usually like (obj, act). It is actually the rule without the subject.
|
|
301
305
|
*/
|
|
302
306
|
async getPermissionsForUser(user) {
|
|
303
|
-
const subIndex = this.getFieldIndex('p', "sub" /* Subject */);
|
|
307
|
+
const subIndex = this.getFieldIndex('p', "sub" /* FieldIndex.Subject */);
|
|
304
308
|
return this.getFilteredPolicy(subIndex, user);
|
|
305
309
|
}
|
|
306
310
|
/**
|
|
@@ -468,7 +472,7 @@ class Enforcer extends managementEnforcer_1.ManagementEnforcer {
|
|
|
468
472
|
async getImplicitUsersForPermission(...permission) {
|
|
469
473
|
const res = [];
|
|
470
474
|
const policySubjects = await this.getAllSubjects();
|
|
471
|
-
const subjects = util_1.arrayRemoveDuplicates([...policySubjects, ...this.model.getValuesForFieldInPolicyAllTypes('g', 0)]);
|
|
475
|
+
const subjects = (0, util_1.arrayRemoveDuplicates)([...policySubjects, ...this.model.getValuesForFieldInPolicyAllTypes('g', 0)]);
|
|
472
476
|
const inherits = this.model.getValuesForFieldInPolicyAllTypes('g', 1);
|
|
473
477
|
for (const user of subjects) {
|
|
474
478
|
const allowed = await this.enforce(user, ...permission);
|
|
@@ -498,14 +502,14 @@ class Enforcer extends managementEnforcer_1.ManagementEnforcer {
|
|
|
498
502
|
const domain = await rm.getAllDomains();
|
|
499
503
|
domains.push(...domain);
|
|
500
504
|
}
|
|
501
|
-
return util_1.arrayRemoveDuplicates(domains);
|
|
505
|
+
return (0, util_1.arrayRemoveDuplicates)(domains);
|
|
502
506
|
}
|
|
503
507
|
}
|
|
504
508
|
exports.Enforcer = Enforcer;
|
|
505
509
|
async function newEnforcerWithClass(enforcer, ...params) {
|
|
506
510
|
var _a;
|
|
507
511
|
// inject the FS
|
|
508
|
-
if (!persist_1.getDefaultFileSystem()) {
|
|
512
|
+
if (!(0, persist_1.getDefaultFileSystem)()) {
|
|
509
513
|
try {
|
|
510
514
|
if (typeof process !== 'undefined' && ((_a = process === null || process === void 0 ? void 0 : process.versions) === null || _a === void 0 ? void 0 : _a.node)) {
|
|
511
515
|
const fs = await Promise.resolve().then(() => __importStar(require('fs')));
|
|
@@ -517,7 +521,7 @@ async function newEnforcerWithClass(enforcer, ...params) {
|
|
|
517
521
|
return fs.writeFileSync(path, text, encoding);
|
|
518
522
|
},
|
|
519
523
|
};
|
|
520
|
-
persist_1.setDefaultFileSystem(defaultFileSystem);
|
|
524
|
+
(0, persist_1.setDefaultFileSystem)(defaultFileSystem);
|
|
521
525
|
}
|
|
522
526
|
}
|
|
523
527
|
catch (ignored) { }
|
|
@@ -527,7 +531,7 @@ async function newEnforcerWithClass(enforcer, ...params) {
|
|
|
527
531
|
if (params.length >= 1) {
|
|
528
532
|
const enableLog = params[params.length - 1];
|
|
529
533
|
if (typeof enableLog === 'boolean') {
|
|
530
|
-
log_1.getLogger().enableLog(enableLog);
|
|
534
|
+
(0, log_1.getLogger)().enableLog(enableLog);
|
|
531
535
|
parsedParamLen++;
|
|
532
536
|
}
|
|
533
537
|
}
|
package/lib/cjs/frontend.js
CHANGED
|
@@ -40,8 +40,8 @@ async function casbinJsGetPermissionForUser(e, user) {
|
|
|
40
40
|
s += '[matchers]\n';
|
|
41
41
|
s += `m = ${(_l = (_k = m.get('m')) === null || _k === void 0 ? void 0 : _k.get('m')) === null || _l === void 0 ? void 0 : _l.value.replace(/_/g, '.')}`;
|
|
42
42
|
obj['m'] = s;
|
|
43
|
-
const policy = util_1.deepCopy(await e.getPolicy());
|
|
44
|
-
const groupPolicy = util_1.deepCopy(await e.getGroupingPolicy());
|
|
43
|
+
const policy = (0, util_1.deepCopy)(await e.getPolicy());
|
|
44
|
+
const groupPolicy = (0, util_1.deepCopy)(await e.getGroupingPolicy());
|
|
45
45
|
policy.forEach((item) => {
|
|
46
46
|
item.unshift('p');
|
|
47
47
|
});
|
package/lib/cjs/index.js
CHANGED
|
@@ -14,7 +14,11 @@
|
|
|
14
14
|
// limitations under the License.
|
|
15
15
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
16
16
|
if (k2 === undefined) k2 = k;
|
|
17
|
-
Object.
|
|
17
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
18
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
19
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
20
|
+
}
|
|
21
|
+
Object.defineProperty(o, k2, desc);
|
|
18
22
|
}) : (function(o, m, k, k2) {
|
|
19
23
|
if (k2 === undefined) k2 = k;
|
|
20
24
|
o[k2] = m[k];
|
|
@@ -27,12 +31,12 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
27
31
|
var __importStar = (this && this.__importStar) || function (mod) {
|
|
28
32
|
if (mod && mod.__esModule) return mod;
|
|
29
33
|
var result = {};
|
|
30
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
34
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
31
35
|
__setModuleDefault(result, mod);
|
|
32
36
|
return result;
|
|
33
37
|
};
|
|
34
38
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
35
|
-
for (var p in m) if (p !== "default" && !
|
|
39
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
36
40
|
};
|
|
37
41
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
42
|
exports.Util = void 0;
|
|
@@ -33,7 +33,7 @@ class InternalEnforcer extends coreEnforcer_1.CoreEnforcer {
|
|
|
33
33
|
await this.adapter.addPolicy(sec, ptype, rule);
|
|
34
34
|
}
|
|
35
35
|
catch (e) {
|
|
36
|
-
if (e.message !== 'not implemented') {
|
|
36
|
+
if (e instanceof Error && e.message !== 'not implemented') {
|
|
37
37
|
throw e;
|
|
38
38
|
}
|
|
39
39
|
}
|
|
@@ -70,7 +70,7 @@ class InternalEnforcer extends coreEnforcer_1.CoreEnforcer {
|
|
|
70
70
|
await this.adapter.addPolicies(sec, ptype, rules);
|
|
71
71
|
}
|
|
72
72
|
catch (e) {
|
|
73
|
-
if (e.message !== 'not implemented') {
|
|
73
|
+
if (e instanceof Error && e.message !== 'not implemented') {
|
|
74
74
|
throw e;
|
|
75
75
|
}
|
|
76
76
|
}
|
|
@@ -115,7 +115,7 @@ class InternalEnforcer extends coreEnforcer_1.CoreEnforcer {
|
|
|
115
115
|
await this.adapter.addPolicies(sec, ptype, newRules);
|
|
116
116
|
}
|
|
117
117
|
catch (e) {
|
|
118
|
-
if (e.message !== 'not implemented') {
|
|
118
|
+
if (e instanceof Error && e.message !== 'not implemented') {
|
|
119
119
|
throw e;
|
|
120
120
|
}
|
|
121
121
|
}
|
|
@@ -155,7 +155,7 @@ class InternalEnforcer extends coreEnforcer_1.CoreEnforcer {
|
|
|
155
155
|
await this.adapter.updatePolicy(sec, ptype, oldRule, newRule);
|
|
156
156
|
}
|
|
157
157
|
catch (e) {
|
|
158
|
-
if (e.message !== 'not implemented') {
|
|
158
|
+
if (e instanceof Error && e.message !== 'not implemented') {
|
|
159
159
|
throw e;
|
|
160
160
|
}
|
|
161
161
|
}
|
|
@@ -193,7 +193,7 @@ class InternalEnforcer extends coreEnforcer_1.CoreEnforcer {
|
|
|
193
193
|
await this.adapter.removePolicy(sec, ptype, rule);
|
|
194
194
|
}
|
|
195
195
|
catch (e) {
|
|
196
|
-
if (e.message !== 'not implemented') {
|
|
196
|
+
if (e instanceof Error && e.message !== 'not implemented') {
|
|
197
197
|
throw e;
|
|
198
198
|
}
|
|
199
199
|
}
|
|
@@ -229,7 +229,7 @@ class InternalEnforcer extends coreEnforcer_1.CoreEnforcer {
|
|
|
229
229
|
await this.adapter.removePolicies(sec, ptype, rules);
|
|
230
230
|
}
|
|
231
231
|
catch (e) {
|
|
232
|
-
if (e.message !== 'not implemented') {
|
|
232
|
+
if (e instanceof Error && e.message !== 'not implemented') {
|
|
233
233
|
throw e;
|
|
234
234
|
}
|
|
235
235
|
}
|
|
@@ -265,7 +265,7 @@ class InternalEnforcer extends coreEnforcer_1.CoreEnforcer {
|
|
|
265
265
|
await this.adapter.removeFilteredPolicy(sec, ptype, fieldIndex, ...fieldValues);
|
|
266
266
|
}
|
|
267
267
|
catch (e) {
|
|
268
|
-
if (e.message !== 'not implemented') {
|
|
268
|
+
if (e instanceof Error && e.message !== 'not implemented') {
|
|
269
269
|
throw e;
|
|
270
270
|
}
|
|
271
271
|
}
|
package/lib/cjs/log/index.js
CHANGED
|
@@ -14,13 +14,17 @@
|
|
|
14
14
|
// limitations under the License.
|
|
15
15
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
16
16
|
if (k2 === undefined) k2 = k;
|
|
17
|
-
Object.
|
|
17
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
18
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
19
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
20
|
+
}
|
|
21
|
+
Object.defineProperty(o, k2, desc);
|
|
18
22
|
}) : (function(o, m, k, k2) {
|
|
19
23
|
if (k2 === undefined) k2 = k;
|
|
20
24
|
o[k2] = m[k];
|
|
21
25
|
}));
|
|
22
26
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
23
|
-
for (var p in m) if (p !== "default" && !
|
|
27
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
24
28
|
};
|
|
25
29
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
30
|
__exportStar(require("./defaultLogger"), exports);
|
|
@@ -14,7 +14,11 @@
|
|
|
14
14
|
// limitations under the License.
|
|
15
15
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
16
16
|
if (k2 === undefined) k2 = k;
|
|
17
|
-
Object.
|
|
17
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
18
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
19
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
20
|
+
}
|
|
21
|
+
Object.defineProperty(o, k2, desc);
|
|
18
22
|
}) : (function(o, m, k, k2) {
|
|
19
23
|
if (k2 === undefined) k2 = k;
|
|
20
24
|
o[k2] = m[k];
|
|
@@ -27,7 +31,7 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
27
31
|
var __importStar = (this && this.__importStar) || function (mod) {
|
|
28
32
|
if (mod && mod.__esModule) return mod;
|
|
29
33
|
var result = {};
|
|
30
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
34
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
31
35
|
__setModuleDefault(result, mod);
|
|
32
36
|
return result;
|
|
33
37
|
};
|
|
@@ -87,7 +91,7 @@ class Assertion {
|
|
|
87
91
|
}
|
|
88
92
|
await this.rm.addLink(rule[0], rule[1], ...rule.slice(2));
|
|
89
93
|
}
|
|
90
|
-
log_1.logPrint(`Role links for: ${this.key}`);
|
|
94
|
+
(0, log_1.logPrint)(`Role links for: ${this.key}`);
|
|
91
95
|
await this.rm.printRoles();
|
|
92
96
|
}
|
|
93
97
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export
|
|
1
|
+
export type MatchingFunction = (...arg: any[]) => boolean | number | string | Promise<boolean> | Promise<number> | Promise<string>;
|
|
2
2
|
export declare class FunctionMap {
|
|
3
3
|
private functions;
|
|
4
4
|
/**
|
|
@@ -14,7 +14,11 @@
|
|
|
14
14
|
// limitations under the License.
|
|
15
15
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
16
16
|
if (k2 === undefined) k2 = k;
|
|
17
|
-
Object.
|
|
17
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
18
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
19
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
20
|
+
}
|
|
21
|
+
Object.defineProperty(o, k2, desc);
|
|
18
22
|
}) : (function(o, m, k, k2) {
|
|
19
23
|
if (k2 === undefined) k2 = k;
|
|
20
24
|
o[k2] = m[k];
|
|
@@ -27,7 +31,7 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
27
31
|
var __importStar = (this && this.__importStar) || function (mod) {
|
|
28
32
|
if (mod && mod.__esModule) return mod;
|
|
29
33
|
var result = {};
|
|
30
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
34
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
31
35
|
__setModuleDefault(result, mod);
|
|
32
36
|
return result;
|
|
33
37
|
};
|
package/lib/cjs/model/index.js
CHANGED
|
@@ -14,13 +14,17 @@
|
|
|
14
14
|
// limitations under the License.
|
|
15
15
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
16
16
|
if (k2 === undefined) k2 = k;
|
|
17
|
-
Object.
|
|
17
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
18
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
19
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
20
|
+
}
|
|
21
|
+
Object.defineProperty(o, k2, desc);
|
|
18
22
|
}) : (function(o, m, k, k2) {
|
|
19
23
|
if (k2 === undefined) k2 = k;
|
|
20
24
|
o[k2] = m[k];
|
|
21
25
|
}));
|
|
22
26
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
23
|
-
for (var p in m) if (p !== "default" && !
|
|
27
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
24
28
|
};
|
|
25
29
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
30
|
__exportStar(require("./assertion"), exports);
|