@restorecommerce/acs-client 1.4.15 → 1.5.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/CHANGELOG.md +25 -0
- package/lib/acs/authz.d.ts +6 -6
- package/lib/acs/authz.js +14 -19
- package/lib/acs/authz.js.map +1 -1
- package/lib/acs/interfaces.d.ts +0 -1
- package/lib/acs/resolver.d.ts +1 -1
- package/lib/acs/resolver.js +15 -15
- package/lib/acs/resolver.js.map +1 -1
- package/lib/utils.js +45 -50
- package/lib/utils.js.map +1 -1
- package/package.json +7 -7
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,31 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [1.5.1](https://github.com/restorecommerce/libs/compare/@restorecommerce/acs-client@1.5.0...@restorecommerce/acs-client@1.5.1) (2024-04-15)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @restorecommerce/acs-client
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# [1.5.0](https://github.com/restorecommerce/libs/compare/@restorecommerce/acs-client@1.4.15...@restorecommerce/acs-client@1.5.0) (2024-04-15)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* up deps ([c6e0aa0](https://github.com/restorecommerce/libs/commit/c6e0aa053f7ee9b4e4afdfcaacf425ebb956224c))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
### Features
|
|
23
|
+
|
|
24
|
+
* **acs-client:** fix reduced user scope calculation when target scope is provided and add unit test with no target scope provided ([4426eca](https://github.com/restorecommerce/libs/commit/4426ecabd6311bc043279ce24c00d5f5dc967689))
|
|
25
|
+
* **acs-client:** remove role-scoping entity from acs-request ([15a0583](https://github.com/restorecommerce/libs/commit/15a058381e76c71224361cac9272ba8085011e36))
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
6
31
|
## [1.4.15](https://github.com/restorecommerce/libs/compare/@restorecommerce/acs-client@1.4.14...@restorecommerce/acs-client@1.4.15) (2024-03-20)
|
|
7
32
|
|
|
8
33
|
**Note:** Version bump only for package @restorecommerce/acs-client
|
package/lib/acs/authz.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ export declare type Authorizer = ACSAuthZ;
|
|
|
6
6
|
export declare let authZ: Authorizer;
|
|
7
7
|
export declare let unauthZ: UnAuthZ;
|
|
8
8
|
export declare const createActionTarget: (action: any) => Attribute[];
|
|
9
|
-
export declare const createSubjectTarget: (subject: DeepPartial<Subject
|
|
9
|
+
export declare const createSubjectTarget: (subject: DeepPartial<Subject>) => Attribute[];
|
|
10
10
|
export declare const formatResourceType: (type: string, namespacePrefix?: string) => string;
|
|
11
11
|
export declare const createResourceTarget: (resource: Resource[], action: AuthZAction) => Attribute[];
|
|
12
12
|
export declare class UnAuthZ implements IAuthZ {
|
|
@@ -17,8 +17,8 @@ export declare class UnAuthZ implements IAuthZ {
|
|
|
17
17
|
*/
|
|
18
18
|
constructor(acs: AccessControlServiceClient);
|
|
19
19
|
private encode;
|
|
20
|
-
isAllowed(request: Request<NoAuthTarget, AuthZContext>, ctx: ACSClientContext, useCache: boolean
|
|
21
|
-
whatIsAllowed(request: Request<NoAuthWhatIsAllowedTarget, AuthZContext>, ctx: ACSClientContext, useCache: boolean
|
|
20
|
+
isAllowed(request: Request<NoAuthTarget, AuthZContext>, ctx: ACSClientContext, useCache: boolean): Promise<DecisionResponse>;
|
|
21
|
+
whatIsAllowed(request: Request<NoAuthWhatIsAllowedTarget, AuthZContext>, ctx: ACSClientContext, useCache: boolean): Promise<PolicySetRQResponse>;
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
24
|
* General authorizer. Marshalls data and requests access to the Access Control Service (ACS).
|
|
@@ -36,15 +36,15 @@ export declare class ACSAuthZ implements IAuthZ {
|
|
|
36
36
|
* @param useCache
|
|
37
37
|
* @returns {DecisionResponse}
|
|
38
38
|
*/
|
|
39
|
-
isAllowed(request: Request<AuthZTarget, AuthZContext>, ctx: ACSClientContext, useCache: any
|
|
39
|
+
isAllowed(request: Request<AuthZTarget, AuthZContext>, ctx: ACSClientContext, useCache: any): Promise<DecisionResponse>;
|
|
40
40
|
/**
|
|
41
41
|
* Perform request to access-control-srv
|
|
42
42
|
* @param request - authZRequest containing subject, resource and action
|
|
43
43
|
* @returns {PolicySetRQ}
|
|
44
44
|
* @param resource
|
|
45
45
|
*/
|
|
46
|
-
whatIsAllowed(request: Request<AuthZWhatIsAllowedTarget, AuthZContext>, ctx: ACSClientContext, useCache: boolean
|
|
46
|
+
whatIsAllowed(request: Request<AuthZWhatIsAllowedTarget, AuthZContext>, ctx: ACSClientContext, useCache: boolean): Promise<PolicySetRQResponse>;
|
|
47
47
|
private encode;
|
|
48
|
-
prepareRequest(request: Request<AuthZTarget | AuthZWhatIsAllowedTarget, AuthZContext
|
|
48
|
+
prepareRequest(request: Request<AuthZTarget | AuthZWhatIsAllowedTarget, AuthZContext>): any;
|
|
49
49
|
}
|
|
50
50
|
export declare const initAuthZ: (config?: any) => Promise<void | ACSAuthZ>;
|
package/lib/acs/authz.js
CHANGED
|
@@ -63,7 +63,7 @@ const createActionTarget = (action) => {
|
|
|
63
63
|
}
|
|
64
64
|
};
|
|
65
65
|
exports.createActionTarget = createActionTarget;
|
|
66
|
-
const createSubjectTarget = (subject
|
|
66
|
+
const createSubjectTarget = (subject) => {
|
|
67
67
|
if (subject.unauthenticated) {
|
|
68
68
|
return [{
|
|
69
69
|
id: urns.unauthenticated_user,
|
|
@@ -79,16 +79,11 @@ const createSubjectTarget = (subject, orgScopeURN) => {
|
|
|
79
79
|
}
|
|
80
80
|
];
|
|
81
81
|
if (subject.scope) {
|
|
82
|
-
orgScopeURN = orgScopeURN ? orgScopeURN : 'urn:restorecommerce:acs:model:organization.Organization';
|
|
83
82
|
flattened = flattened.concat([
|
|
84
83
|
{
|
|
85
|
-
id: urns.
|
|
86
|
-
value:
|
|
87
|
-
attributes: [
|
|
88
|
-
id: urns.roleScopingInstance,
|
|
89
|
-
value: subject.scope,
|
|
90
|
-
attributes: []
|
|
91
|
-
}]
|
|
84
|
+
id: urns.roleScopingInstance,
|
|
85
|
+
value: subject.scope,
|
|
86
|
+
attributes: []
|
|
92
87
|
}
|
|
93
88
|
]);
|
|
94
89
|
}
|
|
@@ -195,11 +190,11 @@ class UnAuthZ {
|
|
|
195
190
|
}
|
|
196
191
|
}
|
|
197
192
|
}
|
|
198
|
-
async isAllowed(request, ctx, useCache
|
|
193
|
+
async isAllowed(request, ctx, useCache) {
|
|
199
194
|
const authZRequest = {
|
|
200
195
|
target: {
|
|
201
196
|
actions: (0, exports.createActionTarget)(request.target.actions),
|
|
202
|
-
subjects: (0, exports.createSubjectTarget)(request.target.subjects
|
|
197
|
+
subjects: (0, exports.createSubjectTarget)(request.target.subjects),
|
|
203
198
|
resources: (0, exports.createResourceTarget)(request.target.resources, request.target.actions)
|
|
204
199
|
},
|
|
205
200
|
context: {
|
|
@@ -236,11 +231,11 @@ class UnAuthZ {
|
|
|
236
231
|
}
|
|
237
232
|
return response;
|
|
238
233
|
}
|
|
239
|
-
async whatIsAllowed(request, ctx, useCache
|
|
234
|
+
async whatIsAllowed(request, ctx, useCache) {
|
|
240
235
|
const authZRequest = {
|
|
241
236
|
target: {
|
|
242
237
|
actions: (0, exports.createActionTarget)(request.target.actions),
|
|
243
|
-
subjects: (0, exports.createSubjectTarget)(request.target.subjects
|
|
238
|
+
subjects: (0, exports.createSubjectTarget)(request.target.subjects),
|
|
244
239
|
resources: (0, exports.createResourceTarget)(request.target.resources, request.target.actions)
|
|
245
240
|
},
|
|
246
241
|
context: {
|
|
@@ -295,8 +290,8 @@ class ACSAuthZ {
|
|
|
295
290
|
* @param useCache
|
|
296
291
|
* @returns {DecisionResponse}
|
|
297
292
|
*/
|
|
298
|
-
async isAllowed(request, ctx, useCache
|
|
299
|
-
const authZRequest = this.prepareRequest(request
|
|
293
|
+
async isAllowed(request, ctx, useCache) {
|
|
294
|
+
const authZRequest = this.prepareRequest(request);
|
|
300
295
|
authZRequest.context = {
|
|
301
296
|
subject: {},
|
|
302
297
|
resources: [],
|
|
@@ -350,8 +345,8 @@ class ACSAuthZ {
|
|
|
350
345
|
* @returns {PolicySetRQ}
|
|
351
346
|
* @param resource
|
|
352
347
|
*/
|
|
353
|
-
async whatIsAllowed(request, ctx, useCache
|
|
354
|
-
const authZRequest = this.prepareRequest(request
|
|
348
|
+
async whatIsAllowed(request, ctx, useCache) {
|
|
349
|
+
const authZRequest = this.prepareRequest(request);
|
|
355
350
|
authZRequest.context = {
|
|
356
351
|
subject: {},
|
|
357
352
|
resources: [],
|
|
@@ -404,12 +399,12 @@ class ACSAuthZ {
|
|
|
404
399
|
}
|
|
405
400
|
}
|
|
406
401
|
}
|
|
407
|
-
prepareRequest(request
|
|
402
|
+
prepareRequest(request) {
|
|
408
403
|
let { subjects, resources, actions } = request.target;
|
|
409
404
|
const authZRequest = {
|
|
410
405
|
target: {
|
|
411
406
|
actions: (0, exports.createActionTarget)(actions),
|
|
412
|
-
subjects: (0, exports.createSubjectTarget)(subjects
|
|
407
|
+
subjects: (0, exports.createSubjectTarget)(subjects),
|
|
413
408
|
},
|
|
414
409
|
};
|
|
415
410
|
authZRequest.target.resources = (0, exports.createResourceTarget)(resources, actions);
|
package/lib/acs/authz.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authz.js","sourceRoot":"","sources":["../../src/acs/authz.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"authz.js","sourceRoot":"","sources":["../../src/acs/authz.ts"],"names":[],"mappings":"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"}
|
package/lib/acs/interfaces.d.ts
CHANGED
package/lib/acs/resolver.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { Request } from '@restorecommerce/rc-grpc-clients/dist/generated-server/
|
|
|
3
3
|
import { FilterOp } from '@restorecommerce/rc-grpc-clients/dist/generated-server/io/restorecommerce/resource_base';
|
|
4
4
|
import { ACSAuthZ } from './authz';
|
|
5
5
|
import { ACSClientContext, DecisionResponse, PolicySetRQResponse, Resource, AuthZAction, ACSClientOptions } from './interfaces';
|
|
6
|
-
export declare const isAllowedRequest: (subject: Subject, resources: Resource[], actions: AuthZAction, ctx: ACSClientContext, useCache: boolean
|
|
6
|
+
export declare const isAllowedRequest: (subject: Subject, resources: Resource[], actions: AuthZAction, ctx: ACSClientContext, useCache: boolean) => Promise<DecisionResponse>;
|
|
7
7
|
/**
|
|
8
8
|
* It turns an API request as can be found in typical Web frameworks like express, koa etc.
|
|
9
9
|
* into a proper ACS request. For `whatIsAllowed` operation it returns the filters
|
package/lib/acs/resolver.js
CHANGED
|
@@ -37,7 +37,7 @@ const config_1 = require("../config");
|
|
|
37
37
|
const subjectIsUnauthenticated = (subject) => {
|
|
38
38
|
return subject?.unauthenticated === true;
|
|
39
39
|
};
|
|
40
|
-
const whatIsAllowedRequest = async (subject, resources, actions, ctx, useCache
|
|
40
|
+
const whatIsAllowedRequest = async (subject, resources, actions, ctx, useCache) => {
|
|
41
41
|
if (subjectIsUnauthenticated(subject)) {
|
|
42
42
|
return await authz_1.unauthZ.whatIsAllowed({
|
|
43
43
|
target: {
|
|
@@ -46,7 +46,7 @@ const whatIsAllowedRequest = async (subject, resources, actions, ctx, useCache,
|
|
|
46
46
|
context: {
|
|
47
47
|
security: {}
|
|
48
48
|
}
|
|
49
|
-
}, ctx, useCache
|
|
49
|
+
}, ctx, useCache);
|
|
50
50
|
}
|
|
51
51
|
else {
|
|
52
52
|
return await authz_1.authZ.whatIsAllowed({
|
|
@@ -58,10 +58,10 @@ const whatIsAllowedRequest = async (subject, resources, actions, ctx, useCache,
|
|
|
58
58
|
resources,
|
|
59
59
|
actions
|
|
60
60
|
}
|
|
61
|
-
}, ctx, useCache
|
|
61
|
+
}, ctx, useCache);
|
|
62
62
|
}
|
|
63
63
|
};
|
|
64
|
-
const isAllowedRequest = async (subject, resources, actions, ctx, useCache
|
|
64
|
+
const isAllowedRequest = async (subject, resources, actions, ctx, useCache) => {
|
|
65
65
|
if (subjectIsUnauthenticated(subject)) {
|
|
66
66
|
return await authz_1.unauthZ.isAllowed({
|
|
67
67
|
target: {
|
|
@@ -70,7 +70,7 @@ const isAllowedRequest = async (subject, resources, actions, ctx, useCache, role
|
|
|
70
70
|
context: {
|
|
71
71
|
security: {}
|
|
72
72
|
}
|
|
73
|
-
}, ctx, useCache
|
|
73
|
+
}, ctx, useCache);
|
|
74
74
|
}
|
|
75
75
|
else {
|
|
76
76
|
return await authz_1.authZ.isAllowed({
|
|
@@ -82,7 +82,7 @@ const isAllowedRequest = async (subject, resources, actions, ctx, useCache, role
|
|
|
82
82
|
resources,
|
|
83
83
|
actions
|
|
84
84
|
}
|
|
85
|
-
}, ctx, useCache
|
|
85
|
+
}, ctx, useCache);
|
|
86
86
|
}
|
|
87
87
|
};
|
|
88
88
|
exports.isAllowedRequest = isAllowedRequest;
|
|
@@ -142,6 +142,7 @@ const accessRequest = async (subject, resource, action, ctx, options) => {
|
|
|
142
142
|
// resolve userID by token
|
|
143
143
|
const subjectID = subject?.id;
|
|
144
144
|
const targetScope = subject?.scope;
|
|
145
|
+
const targetScopeMessage = targetScope ? `, target_scope:${targetScope};` : ';';
|
|
145
146
|
if (resource && !_.isArray(resource)) {
|
|
146
147
|
resource = [resource];
|
|
147
148
|
}
|
|
@@ -149,7 +150,7 @@ const accessRequest = async (subject, resource, action, ctx, options) => {
|
|
|
149
150
|
if (_.isEmpty(resource)) {
|
|
150
151
|
const msg = [
|
|
151
152
|
`Access not allowed for request with`,
|
|
152
|
-
`subject:${subjectID}, resource:${resourceName}, action:${action}
|
|
153
|
+
`subject:${subjectID}, resource:${resourceName}, action:${action}${targetScopeMessage}`,
|
|
153
154
|
`the response was ${access_control_1.Response_Decision.INDETERMINATE}`,
|
|
154
155
|
].join(' ');
|
|
155
156
|
const details = 'Entity missing';
|
|
@@ -165,8 +166,6 @@ const accessRequest = async (subject, resource, action, ctx, options) => {
|
|
|
165
166
|
// default database is arangoDB
|
|
166
167
|
const database = options?.database ? options.database : 'arangoDB';
|
|
167
168
|
const useCache = options?.useCache ? options.useCache : true;
|
|
168
|
-
// default value is RC organization
|
|
169
|
-
const roleScopingEntityURN = options?.roleScopingEntityURN ? options.roleScopingEntityURN : 'urn:restorecommerce:acs:model:organization.Organization';
|
|
170
169
|
// ctx.resources
|
|
171
170
|
if (ctx.resources && !_.isArray(ctx.resources)) {
|
|
172
171
|
ctx.resources = [ctx.resources];
|
|
@@ -177,7 +176,7 @@ const accessRequest = async (subject, resource, action, ctx, options) => {
|
|
|
177
176
|
try {
|
|
178
177
|
// retrieving set of applicable policies/rules from ACS
|
|
179
178
|
// Note: it is assumed that there is only one policy set
|
|
180
|
-
policySetResponse = await whatIsAllowedRequest(subClone, resource, action, ctx, useCache
|
|
179
|
+
policySetResponse = await whatIsAllowedRequest(subClone, resource, action, ctx, useCache);
|
|
181
180
|
}
|
|
182
181
|
catch (err) {
|
|
183
182
|
logger_1.default.error('Error calling whatIsAllowed operation', {
|
|
@@ -194,7 +193,7 @@ const accessRequest = async (subject, resource, action, ctx, options) => {
|
|
|
194
193
|
if (authzEnforced && (!policySetResponse || _.isEmpty(policySetResponse.policy_sets))) {
|
|
195
194
|
const msg = [
|
|
196
195
|
`Access not allowed for request with subject:${subjectID},`,
|
|
197
|
-
`resource:${resourceName}, action:${action}
|
|
196
|
+
`resource:${resourceName}, action:${action}${targetScopeMessage}`,
|
|
198
197
|
'the response was INDETERMINATE'
|
|
199
198
|
].join(' ');
|
|
200
199
|
const details = 'no matching policy/rule could be found';
|
|
@@ -208,12 +207,13 @@ const accessRequest = async (subject, resource, action, ctx, options) => {
|
|
|
208
207
|
if (!authzEnforced && (!policySetResponse || _.isEmpty(policySetResponse.policy_sets))) {
|
|
209
208
|
logger_1.default.verbose([
|
|
210
209
|
`The Access response was INDETERMIATE for a request with subject:${subjectID},`,
|
|
211
|
-
`resource:${resourceName}, action:${action}
|
|
210
|
+
`resource:${resourceName}, action:${action}${targetScopeMessage}`,
|
|
212
211
|
`as no matching policy/rule could be found, but since ACS enforcement`,
|
|
213
212
|
`config is disabled overriding the ACS result`,
|
|
214
213
|
].join(' '));
|
|
215
214
|
}
|
|
216
215
|
// create filters to enforce applicable policies and custom query / args if applicable
|
|
216
|
+
// TODO check and modify this
|
|
217
217
|
const resourceFilters = await (0, utils_1.createResourceFilterMap)(resource, policySetResponse, ctx.resources, action, subClone, subjectID, authzEnforced, targetScope, database);
|
|
218
218
|
if (resourceFilters.decision) {
|
|
219
219
|
return resourceFilters;
|
|
@@ -230,7 +230,7 @@ const accessRequest = async (subject, resource, action, ctx, options) => {
|
|
|
230
230
|
if (operation === interfaces_1.Operation.isAllowed) {
|
|
231
231
|
// authorization
|
|
232
232
|
try {
|
|
233
|
-
decisionResponse = await (0, exports.isAllowedRequest)(subClone, resource, action, ctx, useCache
|
|
233
|
+
decisionResponse = await (0, exports.isAllowedRequest)(subClone, resource, action, ctx, useCache);
|
|
234
234
|
}
|
|
235
235
|
catch (err) {
|
|
236
236
|
logger_1.default.error('Error calling isAllowed operation', { code: err.code, message: err.message, stack: err.stack });
|
|
@@ -246,7 +246,7 @@ const accessRequest = async (subject, resource, action, ctx, options) => {
|
|
|
246
246
|
}
|
|
247
247
|
const msg = [
|
|
248
248
|
`Access not allowed for request with subject:${subjectID},`,
|
|
249
|
-
`resource:${resourceName}, action:${action}
|
|
249
|
+
`resource:${resourceName}, action:${action}${targetScopeMessage}`,
|
|
250
250
|
`the response was ${access_control_1.Response_Decision[decisionResponse.decision]}`,
|
|
251
251
|
].join(' ');
|
|
252
252
|
logger_1.default.verbose(msg);
|
|
@@ -267,7 +267,7 @@ const accessRequest = async (subject, resource, action, ctx, options) => {
|
|
|
267
267
|
}
|
|
268
268
|
logger_1.default.verbose([
|
|
269
269
|
`Access not allowed for request with subject:${subjectID},`,
|
|
270
|
-
`resource:${resourceName}, action:${action}
|
|
270
|
+
`resource:${resourceName}, action:${action}${targetScopeMessage}`,
|
|
271
271
|
`the response was ${access_control_1.Response_Decision[decisionResponse.decision]}`,
|
|
272
272
|
]).join(' ');
|
|
273
273
|
logger_1.default.verbose(`${details}, Overriding the ACS result as ACS enforce config is disabled`);
|
package/lib/acs/resolver.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/acs/resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAA4B;AAC5B,oCAKkB;AAKlB,6HAGkG;AAIlG,mCAIiB;AACjB,6CAUsB;AACtB,uDAA+B;AAC/B,sCAAwC;AAGxC,MAAM,wBAAwB,GAAG,CAAC,OAAY,EAAqC,EAAE;IACnF,OAAO,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;AAC3C,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,KAAK,EAAE,OAA6B,EAAE,SAAqB,EACtF,OAAoB,EAAE,GAAqB,EAAE,QAAiB,EAAE,
|
|
1
|
+
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/acs/resolver.ts"],"names":[],"mappings":"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"}
|
package/lib/utils.js
CHANGED
|
@@ -55,31 +55,30 @@ const reduceUserScope = (hrScope, reducedUserScope, hierarchicalRoleScoping) =>
|
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
};
|
|
58
|
-
const checkTargetScopeExists = (
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
58
|
+
const checkTargetScopeExists = (hrScopes, targetScope, reducedUserScope, hierarchicalRoleScopingCheck) => {
|
|
59
|
+
return hrScopes.some((hrScope) => {
|
|
60
|
+
if (hrScope?.id === targetScope) {
|
|
61
|
+
// found the target scope object, iterate and put the orgs in reducedUserScope array
|
|
62
|
+
logger_1.default.debug(`Target entity match found in the user's hierarchical scope`);
|
|
63
|
+
reduceUserScope(hrScope, reducedUserScope, hierarchicalRoleScopingCheck);
|
|
64
|
+
return true;
|
|
65
|
+
}
|
|
66
|
+
else if (hrScope?.children?.length > 0 && hierarchicalRoleScopingCheck === 'true') {
|
|
67
|
+
for (let childNode of hrScope.children) {
|
|
68
|
+
if (checkTargetScopeExists([childNode], targetScope, reducedUserScope, hierarchicalRoleScopingCheck)) {
|
|
69
|
+
return true;
|
|
70
|
+
}
|
|
69
71
|
}
|
|
70
72
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
+
return false;
|
|
74
|
+
});
|
|
73
75
|
};
|
|
74
76
|
const checkSubjectMatch = (user, ruleSubjectAttributes, reducedUserScope) => {
|
|
75
77
|
// 1) Iterate through ruleSubjectAttributes and check if the roleScopingEntity URN and
|
|
76
78
|
// role URN exists
|
|
77
79
|
// 2) Now check if the subject rule role value matches with one of the users ctx role_associations
|
|
78
80
|
// then get the corresponding scope instance and check if the targetScope is present in user HR scope Object
|
|
79
|
-
let
|
|
80
|
-
let roleValueExists = false;
|
|
81
|
-
// by default HR scoping check is considered
|
|
82
|
-
let hierarchicalRoleScopingCheck = 'true';
|
|
81
|
+
let hierarchicalRoleScopingCheck = 'true'; // by default HR scoping check is considered
|
|
83
82
|
let ruleRoleValue;
|
|
84
83
|
let ruleRoleScopeEntityName;
|
|
85
84
|
const urns = config_1.cfg.get('authorization:urns');
|
|
@@ -91,53 +90,49 @@ const checkSubjectMatch = (user, ruleSubjectAttributes, reducedUserScope) => {
|
|
|
91
90
|
return true;
|
|
92
91
|
}
|
|
93
92
|
if (attribute?.id === urns.roleScopingEntity) {
|
|
94
|
-
roleScopeEntExists = true;
|
|
95
93
|
ruleRoleScopeEntityName = attribute.value;
|
|
96
94
|
}
|
|
97
95
|
else if (attribute.id === urns.role) { // urns.role -> urn:restorecommerce:acs:names:role
|
|
98
|
-
roleValueExists = true;
|
|
99
96
|
ruleRoleValue = attribute.value;
|
|
100
97
|
}
|
|
101
98
|
else if (attribute?.id === urns.hierarchicalRoleScoping) {
|
|
102
99
|
hierarchicalRoleScopingCheck = attribute.value;
|
|
103
100
|
}
|
|
104
101
|
}
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
// urn:restorecommerce:acs:names:roleScopingInstance
|
|
114
|
-
if (roleAttrs?.id === urns.roleScopingEntity &&
|
|
115
|
-
roleAttrs?.value === ruleRoleScopeEntityName) {
|
|
116
|
-
roleScopeEntityNameMatched = true;
|
|
102
|
+
if (ruleRoleValue && ruleRoleScopeEntityName) {
|
|
103
|
+
const matchingRoleScopedInstance = user?.role_associations?.filter((roleObj) => {
|
|
104
|
+
return roleObj?.attributes?.some((roleAttributeObj) => {
|
|
105
|
+
if (roleAttributeObj?.id === urns?.roleScopingEntity
|
|
106
|
+
&& roleAttributeObj?.value === ruleRoleScopeEntityName) {
|
|
107
|
+
return roleAttributeObj?.attributes?.some((roleScopingInstanceObj) => {
|
|
108
|
+
if (roleScopingInstanceObj?.id === urns?.roleScopingInstance) {
|
|
109
|
+
return roleScopingInstanceObj?.value;
|
|
117
110
|
}
|
|
118
|
-
|
|
119
|
-
for (let roleScopeInstObj of roleAttrs.attributes) {
|
|
120
|
-
if (roleScopeInstObj.id === urns.roleScopingInstance) {
|
|
121
|
-
userAssocScope = roleScopeInstObj.value;
|
|
122
|
-
break;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
// check if this userAssocScope's HR object contains the targetScope
|
|
128
|
-
const userAssocHRScope = user?.hierarchical_scopes.find(hrScope => hrScope?.id === userAssocScope);
|
|
129
|
-
// check HR scope matching for subject if hierarchicalRoleScopingCheck is 'true'
|
|
130
|
-
if (!userAssocHRScope) {
|
|
131
|
-
return false;
|
|
132
|
-
}
|
|
133
|
-
else if (checkTargetScopeExists(userAssocHRScope, user.scope, reducedUserScope, hierarchicalRoleScopingCheck)) {
|
|
134
|
-
return true;
|
|
135
|
-
}
|
|
111
|
+
});
|
|
136
112
|
}
|
|
113
|
+
});
|
|
114
|
+
}).flatMap((roleObj) => roleObj?.attributes?.map(roleObjAttr => roleObjAttr?.attributes?.map((attrInstObj) => attrInstObj.value)[0]));
|
|
115
|
+
// validate HR scope root ID contains the role scope instances
|
|
116
|
+
const hrScopeExist = user?.hierarchical_scopes?.every((hrScope) => matchingRoleScopedInstance.includes(hrScope.id));
|
|
117
|
+
if (!hrScopeExist) {
|
|
118
|
+
logger_1.default.info('Hierarchial scopes for matching role does not exist', { role: ruleRoleValue, instances: matchingRoleScopedInstance });
|
|
119
|
+
return false;
|
|
120
|
+
}
|
|
121
|
+
else if (hrScopeExist && user?.scope) {
|
|
122
|
+
return checkTargetScopeExists(user?.hierarchical_scopes?.filter((hrScope) => matchingRoleScopedInstance?.includes(hrScope?.id)), user?.scope, reducedUserScope, hierarchicalRoleScopingCheck);
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
// HR scope match exist but user has not provided scope so still a match is considered
|
|
126
|
+
if (!user?.scope) {
|
|
127
|
+
// if no scope is provided then use the complete HR tree for user scopes
|
|
128
|
+
user?.hierarchical_scopes?.filter((hrScope) => matchingRoleScopedInstance?.includes(hrScope?.id)).forEach((eachHRScope) => {
|
|
129
|
+
reduceUserScope(eachHRScope, reducedUserScope, hierarchicalRoleScopingCheck);
|
|
130
|
+
});
|
|
137
131
|
}
|
|
132
|
+
return hrScopeExist;
|
|
138
133
|
}
|
|
139
134
|
}
|
|
140
|
-
else if (
|
|
135
|
+
else if (ruleRoleValue) {
|
|
141
136
|
return user?.role_associations?.some(ra => ra.role === ruleRoleValue);
|
|
142
137
|
}
|
|
143
138
|
return false;
|
package/lib/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@restorecommerce/acs-client",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.1",
|
|
4
4
|
"description": "Access Control Service Client",
|
|
5
5
|
"author": "n-fuse GmbH",
|
|
6
6
|
"repository": {
|
|
@@ -17,20 +17,20 @@
|
|
|
17
17
|
],
|
|
18
18
|
"main": "./lib/index.js",
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@restorecommerce/grpc-client": "^2.2.
|
|
21
|
-
"@restorecommerce/kafka-client": "^1.1
|
|
20
|
+
"@restorecommerce/grpc-client": "^2.2.1",
|
|
21
|
+
"@restorecommerce/kafka-client": "^1.2.1",
|
|
22
22
|
"@restorecommerce/logger": "^1.2.10",
|
|
23
|
-
"@restorecommerce/rc-grpc-clients": "^5.1.
|
|
23
|
+
"@restorecommerce/rc-grpc-clients": "^5.1.23",
|
|
24
24
|
"@restorecommerce/service-config": "^1.0.12",
|
|
25
25
|
"lodash": "^4.17.21",
|
|
26
26
|
"nconf": "^0.12.1",
|
|
27
27
|
"node-eval": "^2.0.0",
|
|
28
28
|
"redis": "^4.6.13",
|
|
29
|
-
"winston": "^3.
|
|
29
|
+
"winston": "^3.13.0"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"@alenon/grpc-mock-server": "^3.1.7",
|
|
33
|
-
"@restorecommerce/protos": "^6.8.
|
|
33
|
+
"@restorecommerce/protos": "^6.8.1",
|
|
34
34
|
"@types/koa": "^2.13.11",
|
|
35
35
|
"@types/lodash": "^4.14.201",
|
|
36
36
|
"@types/mocha": "^10.0.4",
|
|
@@ -75,5 +75,5 @@
|
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
77
|
},
|
|
78
|
-
"gitHead": "
|
|
78
|
+
"gitHead": "990089d882199cb72ce7f634c126e4a733d79ed2"
|
|
79
79
|
}
|