@bearei/server-common 0.0.155 → 0.0.157
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/access/access.guard.js +4 -3
- package/dist/access/access.guard.js.map +1 -1
- package/dist/access/access.interceptor.js +4 -2
- package/dist/access/access.interceptor.js.map +1 -1
- package/dist/external/external.interface.d.ts +1 -0
- package/dist/external/external.service.js +2 -2
- package/dist/external/external.service.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -49,9 +49,7 @@ let AccessGuard = class AccessGuard {
|
|
|
49
49
|
request.internalAccess = value;
|
|
50
50
|
return value;
|
|
51
51
|
};
|
|
52
|
-
return (requiredAccesses) => ({ sub: subject, iss: issuer }) => {
|
|
53
|
-
request.issuer = issuer;
|
|
54
|
-
request.subject = subject;
|
|
52
|
+
return (requiredAccesses) => ({ sub: subject, iss: issuer, aud: audience }) => {
|
|
55
53
|
if (request.headers['x-ei-internal-authorization']) {
|
|
56
54
|
return (0, utils_1.signCompare)({
|
|
57
55
|
accessKey: this.configService.get('service.accessKey'),
|
|
@@ -66,6 +64,9 @@ let AccessGuard = class AccessGuard {
|
|
|
66
64
|
message: 'Guest user do not have access to current resource'
|
|
67
65
|
})(utils_1.HTTPError.UNAUTHORIZED);
|
|
68
66
|
}
|
|
67
|
+
request.audience = audience;
|
|
68
|
+
request.issuer = issuer;
|
|
69
|
+
request.subject = subject;
|
|
69
70
|
return Boolean(subject);
|
|
70
71
|
};
|
|
71
72
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"access.guard.js","sourceRoot":"","sources":["../../src/access/access.guard.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAwE;AACxE,2CAA4C;AAC5C,uCAAsC;AACtC,8CAA2C;AAE3C,gCAA6C;AAC7C,oCAA4E;AAC5E,+CAAoC;AAG7B,IAAM,WAAW,GAAjB,MAAM,WAAW;IAES;IACA;IACA;IAHzB,YACyB,aAA4B,EAC5B,UAAsB,EACtB,SAAoB;QAFpB,kBAAa,GAAb,aAAa,CAAe;QAC5B,eAAU,GAAV,UAAU,CAAY;QACtB,cAAS,GAAT,SAAS,CAAW;IAC1C,CAAC;IAEJ,WAAW,CAAC,OAAyB;QAC7B,MAAM,gBAAgB,GAAa,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,0BAAa,EAAE;YAC3E,OAAO,CAAC,QAAQ,EAAE;YAClB,OAAO,CAAC,UAAU,EAAE;SAC3B,CAAC,CAAA;QAEF,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAe,CAAA;QAChE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;QAC/B,MAAM,aAAa,GACX,OAAO,CAAC,6BAA6B,CAAC,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,eAAe,CAAA;QAEhG,MAAM,KAAK,GAAG,IAAA,mBAAW,EAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAA;QAEjD,IAAI,CAAC,KAAK,EAAE,CAAC;YACL,IAAA,sBAAc,EAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,qCAAqC,EAAC,CAAC,CACxE,iBAAS,CAAC,YAAY,CAC7B,CAAA;QACT,CAAC;QAED,MAAM,gBAAgB,GAAG,CAAC,OAAoB,EAAE,EAAE;YAC1C,MAAM,mBAAmB,GAAG,CAAC,OAAoB,EAAE,EAAE,CAAC,CAAC,KAAc,EAAE,EAAE;gBACjE,IAAI,CAAC,KAAK,EAAE,CAAC;oBACL,IAAA,sBAAc,EAAC;wBACP,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,gDAAgD;qBAChE,CAAC,CAAC,iBAAS,CAAC,YAAY,CAAC,CAAA;gBAClC,CAAC;gBAED,OAAO,CAAC,cAAc,GAAG,KAAK,CAAA;gBAE9B,OAAO,KAAK,CAAA;YACpB,CAAC,CAAA;YAED,OAAO,CAAC,gBAA0B,EAAE,EAAE,CAC9B,CAAC,EAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"access.guard.js","sourceRoot":"","sources":["../../src/access/access.guard.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,8 @@ let AccessInterceptor = class AccessInterceptor {
|
|
|
16
16
|
return next.handle();
|
|
17
17
|
}
|
|
18
18
|
const invalidRequestHeader = [
|
|
19
|
-
request.headers['x-ei-
|
|
19
|
+
request.headers['x-ei-client'],
|
|
20
|
+
request.headers['x-ei-domain-id'],
|
|
20
21
|
request.headers['x-ei-ip'],
|
|
21
22
|
request.headers['x-ei-subject'],
|
|
22
23
|
request.headers['x-ei-subscription']
|
|
@@ -24,7 +25,8 @@ let AccessInterceptor = class AccessInterceptor {
|
|
|
24
25
|
if (invalidRequestHeader) {
|
|
25
26
|
(0, utils_1.throwHTTPError)({ code: '400007', message: 'Invalid request header' })(utils_1.HTTPError.BAD_REQUEST);
|
|
26
27
|
}
|
|
27
|
-
request.headers['x-ei-
|
|
28
|
+
request.headers['x-ei-client'] = request.audience;
|
|
29
|
+
request.headers['x-ei-domain-id'] = request.issuer;
|
|
28
30
|
request.headers['x-ei-ip'] = request.headers['x-forwarded-for'] ?? request.headers['x-real-ip'];
|
|
29
31
|
request.headers['x-ei-subject'] = request.subject;
|
|
30
32
|
request.headers['x-ei-subscription'] = Boolean(request.subscription);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"access.interceptor.js","sourceRoot":"","sources":["../../src/access/access.interceptor.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAyF;AAEzF,oCAAkD;AAG3C,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IACtB,SAAS,CAAC,OAAyB,EAAE,IAAiB;QAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAe,CAAA;QAEhE,IAAI,OAAO,CAAC,OAAO,CAAC,6BAA6B,CAAC,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,MAAM,EAAE,CAAA;QAC5B,CAAC;QAED,MAAM,oBAAoB,GAAG;YACrB,OAAO,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"access.interceptor.js","sourceRoot":"","sources":["../../src/access/access.interceptor.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAyF;AAEzF,oCAAkD;AAG3C,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IACtB,SAAS,CAAC,OAAyB,EAAE,IAAiB;QAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAe,CAAA;QAEhE,IAAI,OAAO,CAAC,OAAO,CAAC,6BAA6B,CAAC,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,MAAM,EAAE,CAAA;QAC5B,CAAC;QAED,MAAM,oBAAoB,GAAG;YACrB,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC;YAC9B,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;YACjC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;YAC1B,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC;YAC/B,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC;SAC3C,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAEf,IAAI,oBAAoB,EAAE,CAAC;YACnB,IAAA,sBAAc,EAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,wBAAwB,EAAC,CAAC,CAAC,iBAAS,CAAC,WAAW,CAAC,CAAA;QAClG,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAA;QACjD,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,MAAM,CAAA;QAClD,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QAC/F,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,OAAO,CAAA;QACjD,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;QAEpE,OAAO,IAAI,CAAC,MAAM,EAAE,CAAA;IAC5B,CAAC;CACR,CAAA;AA5BY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;GACA,iBAAiB,CA4B7B"}
|
|
@@ -77,7 +77,7 @@ let ExternalService = class ExternalService {
|
|
|
77
77
|
});
|
|
78
78
|
const token = await this.jwtService.signAsync({
|
|
79
79
|
audience: `internal:${this.configService.get('service.name')}`,
|
|
80
|
-
issuer: `${this.configService.get('service.name')}:${headers['x-ei-
|
|
80
|
+
issuer: `${this.configService.get('service.name')}:${headers['x-ei-domain-id']}`
|
|
81
81
|
})({ expiresIn: '3m' })(subject);
|
|
82
82
|
const handleParams = (params = {}) => Object.entries(params).reduce((accumulator, [key, value]) => (Array.isArray(value) ? value.length : typeof value !== 'undefined') ?
|
|
83
83
|
{ ...accumulator, [key]: Array.isArray(value) ? value.join(',') : value }
|
|
@@ -92,7 +92,7 @@ let ExternalService = class ExternalService {
|
|
|
92
92
|
headers: {
|
|
93
93
|
...(async && { 'x-fc-invocation-type': 'Async' }),
|
|
94
94
|
'x-ei-client': headers['x-ei-client'],
|
|
95
|
-
'x-ei-
|
|
95
|
+
'x-ei-domain-id': headers['x-ei-domain-id'],
|
|
96
96
|
'x-ei-internal-authorization': `Bearer ${token}`,
|
|
97
97
|
'x-ei-ip': headers['x-ei-ip'],
|
|
98
98
|
'x-ei-subject': headers['x-ei-subject'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"external.service.js","sourceRoot":"","sources":["../../src/external/external.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAAyC;AACzC,2CAAyC;AACzC,2CAA4C;AAC5C,+BAA+C;AAE/C,gCAAiC;AACjC,oCAAwD;AAUjD,IAAM,eAAe,GAArB,MAAM,eAAe;IAEK;IACA;IACA;IAHzB,YACyB,aAA4B,EAC5B,WAAwB,EACxB,UAAsB;QAFtB,kBAAa,GAAb,aAAa,CAAe;QAC5B,gBAAW,GAAX,WAAW,CAAa;QACxB,eAAU,GAAV,UAAU,CAAY;IAC5C,CAAC;IAEJ,4BAA4B,CAAC,OAAuB;QAC5C,OAAO,KAAK,EAAE,OAAgD,EAAE,EAAE;YAC1D,OAAO,IAAI,CAAC,OAAO,CAAC;gBACZ,OAAO;gBACP,MAAM,EAAE,KAAK;gBACb,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,mCAAmC;gBACzC,WAAW,EAAE,aAAa;aACjC,CAAC,CAAA;QACV,CAAC,CAAA;IACT,CAAC;IAED,8BAA8B,CAAC,OAAuB;QAC9C,OAAO,KAAK,EACJ,OAAkD,EACL,EAAE;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC;gBACZ,OAAO;gBACP,MAAM,EAAE,KAAK;gBACb,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,qCAAqC;gBAC3C,WAAW,EAAE,aAAa;aACjC,CAAC,CAAA;QACV,CAAC,CAAA;IACT,CAAC;IAED,eAAe,CAAC,OAAuB;QAC/B,OAAO,KAAK,EAAE,EAAC,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,EAAiC,EAAE,EAAE;YAC/E,MAAM,IAAI,CAAC,OAAO,CAAC;gBACX,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,OAAO;gBACvC,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,cAAc;gBACpB,WAAW,EAAE,YAAY;gBACzB,IAAI,EAAE;oBACE,GAAG,WAAW;oBACd,MAAM;oBACN,OAAO,EAAE,GAAG,MAAM,IAAI,WAAW,EAAE;oBACnC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC;oBAC9B,QAAQ,EAAE,OAAO,CAAC,gBAAgB,CAAC;oBACnC,EAAE,EAAE,OAAO,CAAC,SAAS,CAAC;oBACtB,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC;oBACnD,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC;oBAChC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC;iBACtC;gBACD,OAAO;aACd,CAAC,CAAA;QACV,CAAC,CAAA;IACT,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EACN,KAAK,GAAG,KAAK,EACb,OAAO,EACP,OAAO,EACP,MAAM,GAAG,KAAK,EACd,MAAM,EACN,IAAI,GAAG,GAAG,EACV,WAAW,EACX,OAAO,EACP,OAAO,EACP,GAAG,WAAW,EACL;QACT,MAAM,OAAO,GAAG,MAAM,IAAA,YAAI,EAAC,EAAE,CAAC,CAAC;YACvB,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,mBAAmB,CAAC;YACtD,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,mBAAmB,CAAC;YACtD,WAAW;SAClB,CAAC,CAAA;QAEF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;YACtC,QAAQ,EAAE,YAAY,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE;YAC9D,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"external.service.js","sourceRoot":"","sources":["../../src/external/external.service.ts"],"names":[],"mappings":"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"}
|