@aldb2b/common 1.0.23 → 1.0.24
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/build/index.d.ts +1 -0
- package/build/index.js +1 -0
- package/build/index.js.map +1 -1
- package/build/middlewares/authorizer.middleware.d.ts +8 -0
- package/build/middlewares/authorizer.middleware.js +54 -0
- package/build/middlewares/authorizer.middleware.js.map +1 -0
- package/build/tsconfig.tsbuildinfo +1908 -69
- package/package.json +2 -1
package/build/index.d.ts
CHANGED
|
@@ -31,6 +31,7 @@ export * from './types/header-user.interface';
|
|
|
31
31
|
export * from './types/upload-presigned-url.interface';
|
|
32
32
|
export * from './types/download-presigned-url.interface';
|
|
33
33
|
export * from './middlewares/app.middleware';
|
|
34
|
+
export * from './middlewares/authorizer.middleware';
|
|
34
35
|
export * from './utils/create-default-directories';
|
|
35
36
|
export * from './utils/equal-array-object';
|
|
36
37
|
export * from './utils/equal-object';
|
package/build/index.js
CHANGED
|
@@ -43,6 +43,7 @@ __exportStar(require("./types/header-user.interface"), exports);
|
|
|
43
43
|
__exportStar(require("./types/upload-presigned-url.interface"), exports);
|
|
44
44
|
__exportStar(require("./types/download-presigned-url.interface"), exports);
|
|
45
45
|
__exportStar(require("./middlewares/app.middleware"), exports);
|
|
46
|
+
__exportStar(require("./middlewares/authorizer.middleware"), exports);
|
|
46
47
|
__exportStar(require("./utils/create-default-directories"), exports);
|
|
47
48
|
__exportStar(require("./utils/equal-array-object"), exports);
|
|
48
49
|
__exportStar(require("./utils/equal-object"), exports);
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAiC;AACjC,iEAA8C;AAC9C,mEAAgD;AAChD,+DAA4C;AAC5C,oEAAiD;AACjD,oEAAiD;AACjD,oEAAiD;AAEjD,oEAAiD;AACjD,8DAA2C;AAC3C,+DAA4C;AAC5C,kEAA+C;AAC/C,wEAAqD;AACrD,kEAA+C;AAC/C,gFAA6D;AAC7D,+DAA4C;AAC5C,yEAAsD;AACtD,mFAAgE;AAChE,iFAA8D;AAC9D,iEAA8C;AAC9C,2EAAwD;AAExD,kEAA+C;AAE/C,sEAAmD;AACnD,uEAAoD;AAEpD,mDAAgC;AAChC,oDAAiC;AACjC,6DAA0C;AAE1C,gEAA6C;AAC7C,sEAAmD;AACnD,yDAAsC;AACtC,gEAA6C;AAC7C,yEAAsD;AACtD,2EAAwD;AAExD,+DAA4C;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAiC;AACjC,iEAA8C;AAC9C,mEAAgD;AAChD,+DAA4C;AAC5C,oEAAiD;AACjD,oEAAiD;AACjD,oEAAiD;AAEjD,oEAAiD;AACjD,8DAA2C;AAC3C,+DAA4C;AAC5C,kEAA+C;AAC/C,wEAAqD;AACrD,kEAA+C;AAC/C,gFAA6D;AAC7D,+DAA4C;AAC5C,yEAAsD;AACtD,mFAAgE;AAChE,iFAA8D;AAC9D,iEAA8C;AAC9C,2EAAwD;AAExD,kEAA+C;AAE/C,sEAAmD;AACnD,uEAAoD;AAEpD,mDAAgC;AAChC,oDAAiC;AACjC,6DAA0C;AAE1C,gEAA6C;AAC7C,sEAAmD;AACnD,yDAAsC;AACtC,gEAA6C;AAC7C,yEAAsD;AACtD,2EAAwD;AAExD,+DAA4C;AAC5C,sEAAmD;AAEnD,qEAAkD;AAClD,6DAA0C;AAC1C,uDAAoC;AACpC,sDAAmC;AACnC,qDAAkC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NestMiddleware } from '@nestjs/common';
|
|
2
|
+
import { ClientProxy } from '@nestjs/microservices';
|
|
3
|
+
import { Request, Response, NextFunction } from 'express';
|
|
4
|
+
export declare class AuthorizerMiddleware implements NestMiddleware {
|
|
5
|
+
private readonly client;
|
|
6
|
+
constructor(client: ClientProxy);
|
|
7
|
+
use(request: Request, response: Response, next: NextFunction): Promise<void>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.AuthorizerMiddleware = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const microservices_1 = require("@nestjs/microservices");
|
|
18
|
+
const rxjs_1 = require("rxjs");
|
|
19
|
+
const subjects_1 = require("../events/subjects");
|
|
20
|
+
let AuthorizerMiddleware = class AuthorizerMiddleware {
|
|
21
|
+
constructor(client) {
|
|
22
|
+
this.client = client;
|
|
23
|
+
}
|
|
24
|
+
async use(request, response, next) {
|
|
25
|
+
const campaignUser = {
|
|
26
|
+
subject: subjects_1.Subjects.AuthorizeUser,
|
|
27
|
+
data: {
|
|
28
|
+
path: request.path,
|
|
29
|
+
method: request.method,
|
|
30
|
+
cognitoUserId: Array.isArray(request.headers['x-cognito-userid'])
|
|
31
|
+
? request.headers['x-cognito-userid'][0]
|
|
32
|
+
: request.headers['x-cognito-userid'],
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
const resp = await rxjs_1.firstValueFrom(this.client.send(campaignUser.subject, campaignUser.data));
|
|
36
|
+
if (resp.isAuthorized === false) {
|
|
37
|
+
throw new common_1.UnauthorizedException();
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
request.headers.id = resp.id;
|
|
41
|
+
request.headers.type = resp.type;
|
|
42
|
+
request.headers.role = resp.role;
|
|
43
|
+
request.headers.email = resp.email;
|
|
44
|
+
}
|
|
45
|
+
next();
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
AuthorizerMiddleware = __decorate([
|
|
49
|
+
common_1.Injectable(),
|
|
50
|
+
__param(0, common_1.Inject('USER_SERVICE')),
|
|
51
|
+
__metadata("design:paramtypes", [microservices_1.ClientProxy])
|
|
52
|
+
], AuthorizerMiddleware);
|
|
53
|
+
exports.AuthorizerMiddleware = AuthorizerMiddleware;
|
|
54
|
+
//# sourceMappingURL=authorizer.middleware.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authorizer.middleware.js","sourceRoot":"","sources":["../../src/middlewares/authorizer.middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAKuB;AACvB,yDAAmD;AAEnD,+BAAqC;AAErC,iDAA6C;AAG7C,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;IAC/B,YAAqD,MAAmB;QAAnB,WAAM,GAAN,MAAM,CAAa;IAAG,CAAC;IAE5E,KAAK,CAAC,GAAG,CACP,OAAgB,EAChB,QAAkB,EAClB,IAAkB;QAElB,MAAM,YAAY,GAA0B;YAC1C,OAAO,EAAE,mBAAQ,CAAC,aAAa;YAC/B,IAAI,EAAE;gBACJ,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;oBAC/D,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;oBACxC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC;aACxC;SACF,CAAA;QACD,MAAM,IAAI,GAAG,MAAM,qBAAc,CAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,CAC1D,CAAA;QACD,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,EAAE;YAC/B,MAAM,IAAI,8BAAqB,EAAE,CAAA;SAClC;aAAM;YACL,OAAO,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAA;YAC5B,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;YAChC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;YAChC,OAAO,CAAC,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;SACnC;QACD,IAAI,EAAE,CAAA;IACR,CAAC;CACF,CAAA;AA/BY,oBAAoB;IADhC,mBAAU,EAAE;IAEE,WAAA,eAAM,CAAC,cAAc,CAAC,CAAA;qCAA0B,2BAAW;GAD7D,oBAAoB,CA+BhC;AA/BY,oDAAoB"}
|