@beautinique/be-middlewares 1.0.13 → 1.0.15
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,4 +1,5 @@
|
|
|
1
1
|
import { NextFunction, Request, Response } from 'express';
|
|
2
|
-
import { TRequestCheckOptions } from '../types';
|
|
2
|
+
import { TRequestCheckOptions, type TServiceAccessOptions } from '../types';
|
|
3
3
|
export declare const checkEmptyRequest: (options: TRequestCheckOptions) => (req: Request, _: Response, next: NextFunction) => void;
|
|
4
4
|
export declare const setRequestId: (req: Request, res: Response, next: NextFunction) => void;
|
|
5
|
+
export declare const serviceAccess: ({ secret, headerName, }: TServiceAccessOptions) => (req: Request, _res: Response, next: NextFunction) => void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.setRequestId = exports.checkEmptyRequest = void 0;
|
|
3
|
+
exports.serviceAccess = exports.setRequestId = exports.checkEmptyRequest = void 0;
|
|
4
4
|
const be_classes_1 = require("@beautinique/be-classes");
|
|
5
5
|
const crypto_1 = require("crypto");
|
|
6
6
|
const checkEmptyRequest = (options) => (req, _, next) => {
|
|
@@ -55,4 +55,20 @@ const setRequestId = (req, res, next) => {
|
|
|
55
55
|
next();
|
|
56
56
|
};
|
|
57
57
|
exports.setRequestId = setRequestId;
|
|
58
|
+
const serviceAccess = ({ secret, headerName = 'X-Service-Secret', }) => {
|
|
59
|
+
if (!secret) {
|
|
60
|
+
throw new be_classes_1.AppError({ message: 'Service secret is not defined', code: 'INTERNAL_SERVER_ERROR' });
|
|
61
|
+
}
|
|
62
|
+
return (req, _res, next) => {
|
|
63
|
+
const internalSecret = req.get(headerName)?.trim();
|
|
64
|
+
if (!internalSecret || internalSecret !== secret) {
|
|
65
|
+
throw new be_classes_1.AppError({
|
|
66
|
+
message: 'You are not authorized to access this service',
|
|
67
|
+
code: 'AUTHORIZATION_ERROR',
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
next();
|
|
71
|
+
};
|
|
72
|
+
};
|
|
73
|
+
exports.serviceAccess = serviceAccess;
|
|
58
74
|
//# sourceMappingURL=request.middleware.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.middleware.js","sourceRoot":"","sources":["../../src/middlewares/request.middleware.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"request.middleware.js","sourceRoot":"","sources":["../../src/middlewares/request.middleware.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@beautinique/be-middlewares",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.15",
|
|
4
4
|
"description": "Middlewares for the Beautinique backend project.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"@beautinique/be-classes": "^1.0.5",
|
|
43
43
|
"@beautinique/be-constants": "^1.0.6",
|
|
44
44
|
"@beautinique/be-utils": "^1.0.3",
|
|
45
|
-
"@beautinique/be-zod": "^1.0.
|
|
45
|
+
"@beautinique/be-zod": "^1.0.17",
|
|
46
46
|
"multer": "^2.1.1",
|
|
47
47
|
"winston": "^3.19.0"
|
|
48
48
|
}
|