vona-module-a-rbac 5.0.6 → 5.0.7
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bean.rbacScope.d.ts","sourceRoot":"","sources":["../../src/bean/bean.rbacScope.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAA6B,MAAM,MAAM,CAAC;AAI3D,OAAO,KAAK,EAAE,gBAAgB,EAAqB,MAAM,mBAAmB,CAAC;AAI7E,qBACa,aAAc,SAAQ,QAAQ;IACzC,OAAO,CAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"bean.rbacScope.d.ts","sourceRoot":"","sources":["../../src/bean/bean.rbacScope.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAA6B,MAAM,MAAM,CAAC;AAI3D,OAAO,KAAK,EAAE,gBAAgB,EAAqB,MAAM,mBAAmB,CAAC;AAI7E,qBACa,aAAc,SAAQ,QAAQ;IACzC,OAAO,CAAC,aAAa,CAAuC;IAEtD,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAMlC,OAAO,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAe5D,OAAO,KAAK,YAAY,GAWvB;YAEa,kBAAkB;IAkBhC,OAAO,CAAC,YAAY;IA8BpB,OAAO,CAAC,oBAAoB;IAgC5B,OAAO,CAAC,KAAK;IAab,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,OAAO;IAmBf,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,mBAAmB;IAe3B,OAAO,CAAC,YAAY;IAiBpB,OAAO,CAAC,cAAc;CAYvB"}
|
package/dist/index.js
CHANGED
|
@@ -243,7 +243,9 @@ let BeanRbacScope = class BeanRbacScope extends BeanBase {
|
|
|
243
243
|
this._scopeAdapter = void 0;
|
|
244
244
|
}
|
|
245
245
|
async isUnrestricted() {
|
|
246
|
-
|
|
246
|
+
const scopeAdapter = this.scopeAdapter;
|
|
247
|
+
if (scopeAdapter) return await scopeAdapter.isUnrestricted();
|
|
248
|
+
return await this.bean.passport.isSystemAdmin();
|
|
247
249
|
}
|
|
248
250
|
async current(actionKey) {
|
|
249
251
|
const action = this.resolveAction(actionKey);
|
|
@@ -251,18 +253,20 @@ let BeanRbacScope = class BeanRbacScope extends BeanBase {
|
|
|
251
253
|
const decision = getRbacDecision(this.ctx);
|
|
252
254
|
if (!this.isDecisionForAction(decision, action)) this.app.throw(403);
|
|
253
255
|
const unrestricted = hasRbacAllScope(decision);
|
|
254
|
-
const ownerValues = action.action === 'create' ? await this.prepareOwnerValues(action, decision, unrestricted) : undefined;
|
|
256
|
+
const ownerValues = action.action === 'create' && action.options.dataScope ? await this.prepareOwnerValues(action, decision, unrestricted) : undefined;
|
|
255
257
|
return this.createAccess(action, decision, unrestricted, ownerValues);
|
|
256
258
|
}
|
|
257
259
|
get scopeAdapter() {
|
|
258
|
-
if (
|
|
260
|
+
if (this._scopeAdapter === undefined) {
|
|
259
261
|
const beanFullName = beanFullNameFromOnionName(this.scope.config.adapter.rbacScope, 'service');
|
|
260
|
-
this._scopeAdapter = this.bean._getBean(beanFullName);
|
|
262
|
+
this._scopeAdapter = this.bean._getBean(beanFullName) ?? null;
|
|
261
263
|
}
|
|
262
264
|
return this._scopeAdapter;
|
|
263
265
|
}
|
|
264
266
|
async prepareOwnerValues(action, decision, unrestricted) {
|
|
265
|
-
const
|
|
267
|
+
const scopeAdapter = this.scopeAdapter;
|
|
268
|
+
if (!scopeAdapter) this.app.throw(403);
|
|
269
|
+
const values = await scopeAdapter.ownerValues(action, decision);
|
|
266
270
|
const departmentField = action.options.dataScopeField ?? 'departmentId';
|
|
267
271
|
const ownerField = action.options.dataScopeMineField ?? 'userIdOwner';
|
|
268
272
|
const ownerValues = {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/config/locale/en-us.ts","../src/config/locale/zh-cn.ts","../src/.metadata/locales.ts","../src/lib/rbac.ts","../src/bean/guard.rbac.ts","../src/bean/bean.rbacCatalog.ts","../src/bean/bean.rbacResourceBulk.ts","../src/bean/bean.rbacScope.ts","../src/bean/event.policyInvalidated.ts","../src/bean/event.resolvePolicy.ts","../src/bean/eventListener.roleMembershipChanged.ts","../src/config/config.ts","../src/config/errors.ts","../src/.metadata/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["ResourceBulkIdsEmpty","ResourceBulkIdsInvalid","ResourceBulkIdsDuplicate","ResourceBulkEntriesMissing","locales","locale_en_us","locale_zh_cn","$locale","key","args","$makeLocaleMagic","SymbolRbacDecision","Symbol","createRbacAllScopeDecision","action","allowed","actionKey","terms","dataScope","createRbacCapability","isRbacCapability","value","capability","Object","keys","every","length","hasRbacAllScope","decision","some","term","rbacActionKey","controllerBeanFullName","getRbacDecision","ctx","setRbacDecision","clearRbacDecision","GuardRbac","GuardBase","check","options","bean","rbacCatalog","getAction","route","effectiveAction","rbacScope","isUnrestricted","scope","event","resolvePolicy","emit","policyActionKey","actionInheritKey","undefined","isValidDecision","isValidAction","revision","isValidTerms","descriptor","Array","isArray","isValidTerm","ownerId","isDepartmentDataScope","departmentIds","id","includes","__decorate","Guard","dataScopeField","dataScopeMineField","__z_BeanInfo","module","BeanFullNameGuardRbac","beanFullNameFromOnionName","BeanRbacCatalog","BeanBase","constructor","_catalog","getCatalog","get","createCatalog","clear","catalog","Map","routesByController","getCacheControllerRoutes","app","routes","values","meta","set","freeze","resolveActionInherit","actionInherit","routesByAction","map","resolveActionInheritKey","seen","Set","current","Error","targetKey","has","add","target","Bean","BeanRbacResourceBulk","entries","ids","load","access","requested","validateIds","entriesByKey","entry","idKey","error","throw","orderedEntries","checkEntries","String","BeanRbacScope","_scopeAdapter","scopeAdapter","resolveAction","isDecisionForAction","unrestricted","ownerValues","prepareOwnerValues","createAccess","beanFullName","config","adapter","_getBean","departmentField","ownerField","departmentId","userIdOwner","matches","where","callerWhere","checkEntry","permissionProjection","matcher","mode","rules","flatMap","field","scopeWhere","_and_","_and_0","predicates","termPredicates","_or_","row","Boolean","_in_","EventPolicyInvalidated","BeanEventBase","Event","EventResolvePolicy","EventListenerRoleMembershipChanged","execute","data","next","policyInvalidated","kind","EventListener","match","_app","errors","code","status","ScopeModuleARbac","BeanScopeBase","Scope"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/config/locale/en-us.ts","../src/config/locale/zh-cn.ts","../src/.metadata/locales.ts","../src/lib/rbac.ts","../src/bean/guard.rbac.ts","../src/bean/bean.rbacCatalog.ts","../src/bean/bean.rbacResourceBulk.ts","../src/bean/bean.rbacScope.ts","../src/bean/event.policyInvalidated.ts","../src/bean/event.resolvePolicy.ts","../src/bean/eventListener.roleMembershipChanged.ts","../src/config/config.ts","../src/config/errors.ts","../src/.metadata/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["ResourceBulkIdsEmpty","ResourceBulkIdsInvalid","ResourceBulkIdsDuplicate","ResourceBulkEntriesMissing","locales","locale_en_us","locale_zh_cn","$locale","key","args","$makeLocaleMagic","SymbolRbacDecision","Symbol","createRbacAllScopeDecision","action","allowed","actionKey","terms","dataScope","createRbacCapability","isRbacCapability","value","capability","Object","keys","every","length","hasRbacAllScope","decision","some","term","rbacActionKey","controllerBeanFullName","getRbacDecision","ctx","setRbacDecision","clearRbacDecision","GuardRbac","GuardBase","check","options","bean","rbacCatalog","getAction","route","effectiveAction","rbacScope","isUnrestricted","scope","event","resolvePolicy","emit","policyActionKey","actionInheritKey","undefined","isValidDecision","isValidAction","revision","isValidTerms","descriptor","Array","isArray","isValidTerm","ownerId","isDepartmentDataScope","departmentIds","id","includes","__decorate","Guard","dataScopeField","dataScopeMineField","__z_BeanInfo","module","BeanFullNameGuardRbac","beanFullNameFromOnionName","BeanRbacCatalog","BeanBase","constructor","_catalog","getCatalog","get","createCatalog","clear","catalog","Map","routesByController","getCacheControllerRoutes","app","routes","values","meta","set","freeze","resolveActionInherit","actionInherit","routesByAction","map","resolveActionInheritKey","seen","Set","current","Error","targetKey","has","add","target","Bean","BeanRbacResourceBulk","entries","ids","load","access","requested","validateIds","entriesByKey","entry","idKey","error","throw","orderedEntries","checkEntries","String","BeanRbacScope","_scopeAdapter","scopeAdapter","passport","isSystemAdmin","resolveAction","isDecisionForAction","unrestricted","ownerValues","prepareOwnerValues","createAccess","beanFullName","config","adapter","_getBean","departmentField","ownerField","departmentId","userIdOwner","matches","where","callerWhere","checkEntry","permissionProjection","matcher","mode","rules","flatMap","field","scopeWhere","_and_","_and_0","predicates","termPredicates","_or_","row","Boolean","_in_","EventPolicyInvalidated","BeanEventBase","Event","EventResolvePolicy","EventListenerRoleMembershipChanged","execute","data","next","policyInvalidated","kind","EventListener","match","_app","errors","code","status","ScopeModuleARbac","BeanScopeBase","Scope"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vona-module-a-rbac",
|
|
3
|
-
"version": "5.0.
|
|
3
|
+
"version": "5.0.7",
|
|
4
4
|
"description": "",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Vona Module"
|
|
@@ -42,5 +42,5 @@
|
|
|
42
42
|
"a-vona": "5.0.0"
|
|
43
43
|
}
|
|
44
44
|
},
|
|
45
|
-
"gitHead": "
|
|
45
|
+
"gitHead": "e2843e4cab02a08051be465a8993919c9a37b5f5"
|
|
46
46
|
}
|
|
@@ -11,10 +11,12 @@ import { getRbacDecision, hasRbacAllScope, rbacActionKey } from '../lib/rbac.ts'
|
|
|
11
11
|
|
|
12
12
|
@Bean()
|
|
13
13
|
export class BeanRbacScope extends BeanBase {
|
|
14
|
-
private _scopeAdapter: IRbacScopeAdapter | undefined;
|
|
14
|
+
private _scopeAdapter: IRbacScopeAdapter | null | undefined;
|
|
15
15
|
|
|
16
16
|
async isUnrestricted(): Promise<boolean> {
|
|
17
|
-
|
|
17
|
+
const scopeAdapter = this.scopeAdapter;
|
|
18
|
+
if (scopeAdapter) return await scopeAdapter.isUnrestricted();
|
|
19
|
+
return await this.bean.passport.isSystemAdmin();
|
|
18
20
|
}
|
|
19
21
|
|
|
20
22
|
async current(actionKey?: string): Promise<IRbacScopeAccess> {
|
|
@@ -26,19 +28,21 @@ export class BeanRbacScope extends BeanBase {
|
|
|
26
28
|
|
|
27
29
|
const unrestricted = hasRbacAllScope(decision);
|
|
28
30
|
const ownerValues =
|
|
29
|
-
action.action === 'create'
|
|
31
|
+
action.action === 'create' && action.options.dataScope
|
|
30
32
|
? await this.prepareOwnerValues(action, decision, unrestricted)
|
|
31
33
|
: undefined;
|
|
32
34
|
return this.createAccess(action, decision, unrestricted, ownerValues);
|
|
33
35
|
}
|
|
34
36
|
|
|
35
|
-
private get scopeAdapter(): IRbacScopeAdapter {
|
|
36
|
-
if (
|
|
37
|
+
private get scopeAdapter(): IRbacScopeAdapter | null {
|
|
38
|
+
if (this._scopeAdapter === undefined) {
|
|
37
39
|
const beanFullName = beanFullNameFromOnionName(
|
|
38
40
|
this.scope.config.adapter.rbacScope,
|
|
39
41
|
'service',
|
|
40
42
|
);
|
|
41
|
-
this._scopeAdapter =
|
|
43
|
+
this._scopeAdapter =
|
|
44
|
+
(this.bean._getBean(beanFullName) as unknown as IRbacScopeAdapter | null | undefined) ??
|
|
45
|
+
null;
|
|
42
46
|
}
|
|
43
47
|
return this._scopeAdapter;
|
|
44
48
|
}
|
|
@@ -48,7 +52,9 @@ export class BeanRbacScope extends BeanBase {
|
|
|
48
52
|
decision: IRbacPolicyDecision,
|
|
49
53
|
unrestricted: boolean,
|
|
50
54
|
): Promise<Record<string, TableIdentity | null | undefined>> {
|
|
51
|
-
const
|
|
55
|
+
const scopeAdapter = this.scopeAdapter;
|
|
56
|
+
if (!scopeAdapter) this.app.throw(403);
|
|
57
|
+
const values = await scopeAdapter.ownerValues(action, decision);
|
|
52
58
|
const departmentField = action.options.dataScopeField ?? 'departmentId';
|
|
53
59
|
const ownerField = action.options.dataScopeMineField ?? 'userIdOwner';
|
|
54
60
|
const ownerValues = {
|