@minimaltech/node-infra 0.5.10-1 → 0.5.10-10
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/base/applications/base.application.js +26 -39
- package/dist/base/applications/base.application.js.map +1 -1
- package/dist/base/applications/default.application.js +1 -2
- package/dist/base/applications/default.application.js.map +1 -1
- package/dist/base/base.component.js +1 -2
- package/dist/base/base.component.js.map +1 -1
- package/dist/base/base.helper.js +2 -3
- package/dist/base/base.helper.js.map +1 -1
- package/dist/base/base.provider.js +1 -2
- package/dist/base/base.provider.js.map +1 -1
- package/dist/base/base.sequence.js +14 -25
- package/dist/base/base.sequence.js.map +1 -1
- package/dist/base/controllers/common.js +6 -6
- package/dist/base/controllers/common.js.map +1 -1
- package/dist/base/controllers/crud.controller.d.ts +1 -0
- package/dist/base/controllers/crud.controller.d.ts.map +1 -1
- package/dist/base/controllers/crud.controller.js +69 -63
- package/dist/base/controllers/crud.controller.js.map +1 -1
- package/dist/base/controllers/kv.controller.js +5 -16
- package/dist/base/controllers/kv.controller.js.map +1 -1
- package/dist/base/controllers/relational.controller.js +36 -43
- package/dist/base/controllers/relational.controller.js.map +1 -1
- package/dist/base/controllers/service-crud.controller.js +42 -35
- package/dist/base/controllers/service-crud.controller.js.map +1 -1
- package/dist/base/repositories/base.repository.d.ts +8 -0
- package/dist/base/repositories/base.repository.d.ts.map +1 -1
- package/dist/base/repositories/base.repository.js +10 -15
- package/dist/base/repositories/base.repository.js.map +1 -1
- package/dist/base/repositories/relations/has-many-polymorphic/decorator.js +11 -2
- package/dist/base/repositories/relations/has-many-polymorphic/decorator.js.map +1 -1
- package/dist/base/repositories/relations/has-many-polymorphic/factory.js +12 -17
- package/dist/base/repositories/relations/has-many-polymorphic/factory.js.map +1 -1
- package/dist/base/repositories/searchable-tz-crud.repository.js +131 -150
- package/dist/base/repositories/searchable-tz-crud.repository.js.map +1 -1
- package/dist/base/repositories/tz-crud.repository.js +23 -40
- package/dist/base/repositories/tz-crud.repository.js.map +1 -1
- package/dist/base/services/base-crud.service.js +5 -9
- package/dist/base/services/base-crud.service.js.map +1 -1
- package/dist/base/services/base.service.js +1 -2
- package/dist/base/services/base.service.js.map +1 -1
- package/dist/common/configurations.d.ts +18 -0
- package/dist/common/configurations.d.ts.map +1 -0
- package/dist/common/configurations.js +34 -0
- package/dist/common/configurations.js.map +1 -0
- package/dist/common/constants.d.ts +35 -0
- package/dist/common/constants.d.ts.map +1 -0
- package/dist/common/constants.js +52 -0
- package/dist/common/constants.js.map +1 -0
- package/dist/common/environments.js +25 -25
- package/dist/common/environments.js.map +1 -1
- package/dist/common/formatters.d.ts +13 -0
- package/dist/common/formatters.d.ts.map +1 -0
- package/dist/common/formatters.js +17 -0
- package/dist/common/formatters.js.map +1 -0
- package/dist/common/index.d.ts +6 -3
- package/dist/common/index.d.ts.map +1 -1
- package/dist/common/index.js +6 -3
- package/dist/common/index.js.map +1 -1
- package/dist/common/keys.js +2 -2
- package/dist/common/keys.js.map +1 -1
- package/dist/common/result-codes.d.ts +30 -0
- package/dist/common/result-codes.d.ts.map +1 -0
- package/dist/common/result-codes.js +37 -0
- package/dist/common/result-codes.js.map +1 -0
- package/dist/common/statuses.js +28 -31
- package/dist/common/statuses.js.map +1 -1
- package/dist/common/users.js +3 -5
- package/dist/common/users.js.map +1 -1
- package/dist/components/authenticate/common/constants.js +13 -13
- package/dist/components/authenticate/common/constants.js.map +1 -1
- package/dist/components/authenticate/common/keys.js +7 -7
- package/dist/components/authenticate/common/keys.js.map +1 -1
- package/dist/components/authenticate/common/types.d.ts +9 -1
- package/dist/components/authenticate/common/types.d.ts.map +1 -1
- package/dist/components/authenticate/common/types.js +50 -9
- package/dist/components/authenticate/common/types.js.map +1 -1
- package/dist/components/authenticate/component.d.ts.map +1 -1
- package/dist/components/authenticate/component.js +3 -3
- package/dist/components/authenticate/component.js.map +1 -1
- package/dist/components/authenticate/controllers/auth.controller.js +10 -7
- package/dist/components/authenticate/controllers/auth.controller.js.map +1 -1
- package/dist/components/authenticate/controllers/oauth2.controller.d.ts +5 -3
- package/dist/components/authenticate/controllers/oauth2.controller.d.ts.map +1 -1
- package/dist/components/authenticate/controllers/oauth2.controller.js +57 -25
- package/dist/components/authenticate/controllers/oauth2.controller.js.map +1 -1
- package/dist/components/authenticate/index.d.ts +1 -0
- package/dist/components/authenticate/index.d.ts.map +1 -1
- package/dist/components/authenticate/index.js +1 -0
- package/dist/components/authenticate/index.js.map +1 -1
- package/dist/components/authenticate/middleware.js +23 -35
- package/dist/components/authenticate/middleware.js.map +1 -1
- package/dist/components/authenticate/oauth2-handlers/authorization-code.handler.js +4 -5
- package/dist/components/authenticate/oauth2-handlers/authorization-code.handler.js.map +1 -1
- package/dist/components/authenticate/oauth2-handlers/base.js +93 -111
- package/dist/components/authenticate/oauth2-handlers/base.js.map +1 -1
- package/dist/components/authenticate/oauth2-handlers/client-credential.handler.js +2 -3
- package/dist/components/authenticate/oauth2-handlers/client-credential.handler.js.map +1 -1
- package/dist/components/authenticate/oauth2-handlers/oauth2.js +2 -2
- package/dist/components/authenticate/oauth2-handlers/oauth2.js.map +1 -1
- package/dist/components/authenticate/services/basic-token.service.js +18 -29
- package/dist/components/authenticate/services/basic-token.service.js.map +1 -1
- package/dist/components/authenticate/services/basic.strategy.js +5 -16
- package/dist/components/authenticate/services/basic.strategy.js.map +1 -1
- package/dist/components/authenticate/services/jwt-token.service.js +22 -34
- package/dist/components/authenticate/services/jwt-token.service.js.map +1 -1
- package/dist/components/authenticate/services/oauth2.service.d.ts +2 -1
- package/dist/components/authenticate/services/oauth2.service.d.ts.map +1 -1
- package/dist/components/authenticate/services/oauth2.service.js +100 -105
- package/dist/components/authenticate/services/oauth2.service.js.map +1 -1
- package/dist/components/authenticate/services/oauth2.strategy.js +23 -37
- package/dist/components/authenticate/services/oauth2.strategy.js.map +1 -1
- package/dist/components/authorize/adapters/casbin-postgres-adapter.helper.js +40 -52
- package/dist/components/authorize/adapters/casbin-postgres-adapter.helper.js.map +1 -1
- package/dist/components/authorize/common/constants.js +10 -12
- package/dist/components/authorize/common/constants.js.map +1 -1
- package/dist/components/authorize/common/keys.js +15 -15
- package/dist/components/authorize/common/keys.js.map +1 -1
- package/dist/components/authorize/common/types.js +2 -2
- package/dist/components/authorize/common/types.js.map +1 -1
- package/dist/components/authorize/component.js +28 -39
- package/dist/components/authorize/component.js.map +1 -1
- package/dist/components/authorize/decorators/index.js +1 -1
- package/dist/components/authorize/decorators/index.js.map +1 -1
- package/dist/components/authorize/interceptor.js +75 -80
- package/dist/components/authorize/interceptor.js.map +1 -1
- package/dist/components/authorize/migrations/0000-create-view-policy.js +3 -12
- package/dist/components/authorize/migrations/0000-create-view-policy.js.map +1 -1
- package/dist/components/authorize/provider.js +80 -93
- package/dist/components/authorize/provider.js.map +1 -1
- package/dist/components/authorize/services/enforcer.service.js +16 -26
- package/dist/components/authorize/services/enforcer.service.js.map +1 -1
- package/dist/components/authorize/services/generator.service.js +62 -76
- package/dist/components/authorize/services/generator.service.js.map +1 -1
- package/dist/components/crash-report/common/keys.js +8 -10
- package/dist/components/crash-report/common/keys.js.map +1 -1
- package/dist/components/crash-report/component.js +29 -41
- package/dist/components/crash-report/component.js.map +1 -1
- package/dist/components/crash-report/providers/third-parties/base.js +1 -2
- package/dist/components/crash-report/providers/third-parties/base.js.map +1 -1
- package/dist/components/crash-report/services/mt-crash-report.service.js +3 -4
- package/dist/components/crash-report/services/mt-crash-report.service.js.map +1 -1
- package/dist/components/grpc/common/keys.js +4 -4
- package/dist/components/grpc/common/keys.js.map +1 -1
- package/dist/components/grpc/components/server.component.js +1 -2
- package/dist/components/grpc/components/server.component.js.map +1 -1
- package/dist/components/grpc/helpers/grpc-client.js +2 -3
- package/dist/components/grpc/helpers/grpc-client.js.map +1 -1
- package/dist/components/grpc/helpers/grpc-server.js +9 -11
- package/dist/components/grpc/helpers/grpc-server.js.map +1 -1
- package/dist/components/grpc/persistents/grpc.connector.js +1 -2
- package/dist/components/grpc/persistents/grpc.connector.js.map +1 -1
- package/dist/components/grpc/persistents/grpc.datasource.js +1 -1
- package/dist/components/grpc/persistents/grpc.datasource.js.map +1 -1
- package/dist/components/grpc/persistents/grpc.repository.js +1 -2
- package/dist/components/grpc/persistents/grpc.repository.js.map +1 -1
- package/dist/components/migration/common/keys.js +3 -3
- package/dist/components/migration/common/keys.js.map +1 -1
- package/dist/components/socket-io/common/constants.js +10 -10
- package/dist/components/socket-io/common/constants.js.map +1 -1
- package/dist/components/socket-io/common/keys.js +6 -6
- package/dist/components/socket-io/common/keys.js.map +1 -1
- package/dist/components/socket-io/component.js +1 -1
- package/dist/components/socket-io/component.js.map +1 -1
- package/dist/components/socket-io/helpers/socket-io-client.helper.js +2 -4
- package/dist/components/socket-io/helpers/socket-io-client.helper.js.map +1 -1
- package/dist/components/socket-io/helpers/socket-io-server.helper.js +13 -15
- package/dist/components/socket-io/helpers/socket-io-server.helper.js.map +1 -1
- package/dist/components/static-asset/common/keys.js +4 -4
- package/dist/components/static-asset/common/keys.js.map +1 -1
- package/dist/components/static-asset/controllers/asset.controller.js +67 -84
- package/dist/components/static-asset/controllers/asset.controller.js.map +1 -1
- package/dist/components/static-asset/controllers/resource.controller.js +2 -3
- package/dist/components/static-asset/controllers/resource.controller.js.map +1 -1
- package/dist/datasources/memory/datasource.js +3 -2
- package/dist/datasources/memory/datasource.js.map +1 -1
- package/dist/datasources/postgres/datasource.js +10 -10
- package/dist/datasources/postgres/datasource.js.map +1 -1
- package/dist/datasources/redis/connector.js +13 -7
- package/dist/datasources/redis/connector.js.map +1 -1
- package/dist/datasources/redis/datasource.js +7 -7
- package/dist/datasources/redis/datasource.js.map +1 -1
- package/dist/helpers/application-environment.helper.js +1 -2
- package/dist/helpers/application-environment.helper.js.map +1 -1
- package/dist/helpers/cron.helper.js +2 -3
- package/dist/helpers/cron.helper.js.map +1 -1
- package/dist/helpers/crypto/algorithms/aes.algorithm.js +8 -7
- package/dist/helpers/crypto/algorithms/aes.algorithm.js.map +1 -1
- package/dist/helpers/crypto/algorithms/base.algorithm.js +2 -4
- package/dist/helpers/crypto/algorithms/base.algorithm.js.map +1 -1
- package/dist/helpers/crypto/algorithms/rsa.algorithm.js +4 -5
- package/dist/helpers/crypto/algorithms/rsa.algorithm.js.map +1 -1
- package/dist/helpers/logger/application-logger.js +4 -6
- package/dist/helpers/logger/application-logger.js.map +1 -1
- package/dist/helpers/logger/common/types.js +20 -22
- package/dist/helpers/logger/common/types.js.map +1 -1
- package/dist/helpers/logger/default-logger.js +2 -3
- package/dist/helpers/logger/default-logger.js.map +1 -1
- package/dist/helpers/logger/factory.js +1 -1
- package/dist/helpers/logger/factory.js.map +1 -1
- package/dist/helpers/logger/transports/dgram.transport.js +10 -25
- package/dist/helpers/logger/transports/dgram.transport.js.map +1 -1
- package/dist/helpers/network/http-request/base-network-request.helper.js +32 -29
- package/dist/helpers/network/http-request/base-network-request.helper.js.map +1 -1
- package/dist/helpers/network/http-request/fetcher/axios-fetcher.js +10 -18
- package/dist/helpers/network/http-request/fetcher/axios-fetcher.js.map +1 -1
- package/dist/helpers/network/http-request/fetcher/base-fetcher.js +10 -21
- package/dist/helpers/network/http-request/fetcher/base-fetcher.js.map +1 -1
- package/dist/helpers/network/http-request/fetcher/node-fetcher.js +36 -55
- package/dist/helpers/network/http-request/fetcher/node-fetcher.js.map +1 -1
- package/dist/helpers/network/tcp-socket/base-tcp-client.helper.js +16 -23
- package/dist/helpers/network/tcp-socket/base-tcp-client.helper.js.map +1 -1
- package/dist/helpers/network/tcp-socket/base-tcp-server.helper.js +9 -16
- package/dist/helpers/network/tcp-socket/base-tcp-server.helper.js.map +1 -1
- package/dist/helpers/network/tcp-socket/network-tcp-client.helper.js +5 -1
- package/dist/helpers/network/tcp-socket/network-tcp-client.helper.js.map +1 -1
- package/dist/helpers/network/tcp-socket/network-tcp-server.helper.js +5 -1
- package/dist/helpers/network/tcp-socket/network-tcp-server.helper.js.map +1 -1
- package/dist/helpers/network/tcp-socket/network-tls-tcp-client.helper.js +5 -1
- package/dist/helpers/network/tcp-socket/network-tls-tcp-client.helper.js.map +1 -1
- package/dist/helpers/network/tcp-socket/network-tls-tcp-server.helper.js +5 -1
- package/dist/helpers/network/tcp-socket/network-tls-tcp-server.helper.js.map +1 -1
- package/dist/helpers/network/udp-socket/network-udp-client.helper.js +11 -18
- package/dist/helpers/network/udp-socket/network-udp-client.helper.js.map +1 -1
- package/dist/helpers/queue/bullmq.helper.js +11 -18
- package/dist/helpers/queue/bullmq.helper.js.map +1 -1
- package/dist/helpers/queue/mqtt.helper.d.ts +4 -0
- package/dist/helpers/queue/mqtt.helper.d.ts.map +1 -1
- package/dist/helpers/queue/mqtt.helper.js +25 -14
- package/dist/helpers/queue/mqtt.helper.js.map +1 -1
- package/dist/helpers/queue/queue.helper.js +63 -85
- package/dist/helpers/queue/queue.helper.js.map +1 -1
- package/dist/helpers/redis/default.helper.js +115 -134
- package/dist/helpers/redis/default.helper.js.map +1 -1
- package/dist/helpers/redis/redis-cluster.helper.js +7 -2
- package/dist/helpers/redis/redis-cluster.helper.js.map +1 -1
- package/dist/helpers/redis/redis.helper.js +7 -2
- package/dist/helpers/redis/redis.helper.js.map +1 -1
- package/dist/helpers/storage/minio.helper.d.ts +1 -1
- package/dist/helpers/storage/minio.helper.js +87 -115
- package/dist/helpers/storage/minio.helper.js.map +1 -1
- package/dist/helpers/testing/common.js +3 -3
- package/dist/helpers/testing/common.js.map +1 -1
- package/dist/helpers/testing/describe.js +12 -21
- package/dist/helpers/testing/describe.js.map +1 -1
- package/dist/helpers/testing/test-handler.js +19 -30
- package/dist/helpers/testing/test-handler.js.map +1 -1
- package/dist/helpers/testing/test-plan/base.js +4 -6
- package/dist/helpers/testing/test-plan/base.js.map +1 -1
- package/dist/helpers/worker-thread/base.js +6 -12
- package/dist/helpers/worker-thread/base.js.map +1 -1
- package/dist/helpers/worker-thread/worker-bus.js +5 -6
- package/dist/helpers/worker-thread/worker-bus.js.map +1 -1
- package/dist/helpers/worker-thread/worker-pool.js +13 -25
- package/dist/helpers/worker-thread/worker-pool.js.map +1 -1
- package/dist/interceptors/content-range.interceptor.js +116 -128
- package/dist/interceptors/content-range.interceptor.js.map +1 -1
- package/dist/middlewares/request-body-parser.middleware.js +4 -16
- package/dist/middlewares/request-body-parser.middleware.js.map +1 -1
- package/dist/middlewares/request-spy.middleware.js +4 -5
- package/dist/middlewares/request-spy.middleware.js.map +1 -1
- package/dist/migrations/handler.js +13 -22
- package/dist/migrations/handler.js.map +1 -1
- package/dist/mixins/tz.mixin.js +7 -8
- package/dist/mixins/tz.mixin.js.map +1 -1
- package/dist/mixins/user-audit.mixin.js +1 -1
- package/dist/mixins/user-audit.mixin.js.map +1 -1
- package/dist/mixins/vector.mixin.js +5 -6
- package/dist/mixins/vector.mixin.js.map +1 -1
- package/dist/tsconfig.base.json +1 -1
- package/dist/utilities/date.utility.js +5 -7
- package/dist/utilities/date.utility.js.map +1 -1
- package/dist/utilities/model.utility.js +2 -4
- package/dist/utilities/model.utility.js.map +1 -1
- package/dist/utilities/parse.utility.js +6 -8
- package/dist/utilities/parse.utility.js.map +1 -1
- package/dist/utilities/performance.utility.js +1 -2
- package/dist/utilities/performance.utility.js.map +1 -1
- package/dist/utilities/promise.utility.js +5 -14
- package/dist/utilities/promise.utility.js.map +1 -1
- package/dist/utilities/query.utility.js +8 -10
- package/dist/utilities/query.utility.js.map +1 -1
- package/dist/utilities/request.utility.js +2 -3
- package/dist/utilities/request.utility.js.map +1 -1
- package/package.json +23 -25
|
@@ -34,9 +34,13 @@ const repositories_1 = require("../repositories");
|
|
|
34
34
|
// --------------------------------------------------------------------------------
|
|
35
35
|
class DefaultOAuth2ExpressServer extends controllers_1.AbstractExpressRequestHandler {
|
|
36
36
|
constructor(opts) {
|
|
37
|
-
super(
|
|
37
|
+
super({
|
|
38
|
+
...opts,
|
|
39
|
+
scope: DefaultOAuth2ExpressServer.name,
|
|
40
|
+
});
|
|
38
41
|
this.authServiceKey = opts.authServiceKey;
|
|
39
42
|
this.viewFolder = opts.viewFolder;
|
|
43
|
+
this.useImplicitGrant = opts.useImplicitGrant ?? true;
|
|
40
44
|
this.binding();
|
|
41
45
|
}
|
|
42
46
|
static getInstance(opts) {
|
|
@@ -47,17 +51,17 @@ class DefaultOAuth2ExpressServer extends controllers_1.AbstractExpressRequestHan
|
|
|
47
51
|
return this.instance;
|
|
48
52
|
}
|
|
49
53
|
binding() {
|
|
50
|
-
var _a, _b, _c;
|
|
51
54
|
this.expressApp.set('view engine', 'ejs');
|
|
52
|
-
const oauth2ViewFolder =
|
|
55
|
+
const oauth2ViewFolder = this.viewFolder ??
|
|
56
|
+
helpers_1.applicationEnvironment.get(common_1.EnvironmentKeys.APP_ENV_OAUTH2_VIEW_FOLDER) ??
|
|
57
|
+
(0, node_path_1.join)(__dirname, '../', 'views');
|
|
53
58
|
this.expressApp.set('views', oauth2ViewFolder);
|
|
54
59
|
this.logger.info('[binding] View folder: %s', oauth2ViewFolder);
|
|
55
|
-
const basePath =
|
|
60
|
+
const basePath = helpers_1.applicationEnvironment.get(common_1.EnvironmentKeys.APP_ENV_SERVER_BASE_PATH) ?? '';
|
|
56
61
|
const authAction = `${basePath}/oauth2/auth`;
|
|
57
62
|
this.logger.info('[binding] Auth action path: %s', authAction);
|
|
58
63
|
// -----------------------------------------------------------------------------------------------------------------
|
|
59
64
|
this.expressApp.get('/auth', (request, response) => {
|
|
60
|
-
var _a;
|
|
61
65
|
const { c, r } = request.query;
|
|
62
66
|
if (!c) {
|
|
63
67
|
response.render('pages/auth', {
|
|
@@ -70,7 +74,7 @@ class DefaultOAuth2ExpressServer extends controllers_1.AbstractExpressRequestHan
|
|
|
70
74
|
title: `${helpers_1.applicationEnvironment.get(common_1.EnvironmentKeys.APP_ENV_APPLICATION_NAME)} OAuth`,
|
|
71
75
|
action: authAction,
|
|
72
76
|
c: decodeURIComponent(c.toString()),
|
|
73
|
-
r: decodeURIComponent(
|
|
77
|
+
r: decodeURIComponent(r?.toString() ?? ''),
|
|
74
78
|
};
|
|
75
79
|
response.render('pages/auth', {
|
|
76
80
|
message: 'Please fill out your credential!',
|
|
@@ -79,15 +83,15 @@ class DefaultOAuth2ExpressServer extends controllers_1.AbstractExpressRequestHan
|
|
|
79
83
|
});
|
|
80
84
|
// -----------------------------------------------------------------------------------------------------------------
|
|
81
85
|
this.expressApp.post('/auth', (request, response) => {
|
|
82
|
-
const { username, password, token, redirectUrl } = request.body;
|
|
86
|
+
const { username, password, token: clientToken, redirectUrl } = request.body;
|
|
83
87
|
const requiredProps = [
|
|
84
88
|
{ key: 'username', value: username },
|
|
85
|
-
{ key: 'password', value:
|
|
86
|
-
{ key: 'token', value:
|
|
87
|
-
{ key: 'redirectUrl', value:
|
|
89
|
+
{ key: 'password', value: password },
|
|
90
|
+
{ key: 'token', value: clientToken },
|
|
91
|
+
{ key: 'redirectUrl', value: redirectUrl },
|
|
88
92
|
];
|
|
89
93
|
for (const prop of requiredProps) {
|
|
90
|
-
if (
|
|
94
|
+
if (prop?.value && !(0, isEmpty_1.default)(prop?.value)) {
|
|
91
95
|
continue;
|
|
92
96
|
}
|
|
93
97
|
this.logger.error('[oauth2][post] Missing prop: %s | key: %s | value: %s', prop.key, prop.key, prop.value);
|
|
@@ -97,7 +101,7 @@ class DefaultOAuth2ExpressServer extends controllers_1.AbstractExpressRequestHan
|
|
|
97
101
|
return;
|
|
98
102
|
}
|
|
99
103
|
const oauth2Service = this.injectionGetter('services.OAuth2Service');
|
|
100
|
-
const decryptedClient = oauth2Service.decryptClientToken({ token });
|
|
104
|
+
const decryptedClient = oauth2Service.decryptClientToken({ token: clientToken });
|
|
101
105
|
oauth2Service
|
|
102
106
|
.doOAuth2({
|
|
103
107
|
context: { request, response },
|
|
@@ -119,16 +123,19 @@ class DefaultOAuth2ExpressServer extends controllers_1.AbstractExpressRequestHan
|
|
|
119
123
|
}
|
|
120
124
|
oauth2Service
|
|
121
125
|
.doClientCallback({
|
|
122
|
-
|
|
126
|
+
clientToken,
|
|
123
127
|
oauth2Token: rs.oauth2TokenRs,
|
|
128
|
+
useImplicitGrant: this.useImplicitGrant,
|
|
124
129
|
})
|
|
125
130
|
.then(() => {
|
|
126
|
-
var _a, _b;
|
|
127
131
|
const url = new URL(rs.redirectUrl);
|
|
128
|
-
url.searchParams.append('c', encodeURIComponent(
|
|
132
|
+
url.searchParams.append('c', encodeURIComponent(clientToken));
|
|
129
133
|
url.searchParams.append('clientId', client.clientId);
|
|
130
|
-
url.searchParams.append('
|
|
131
|
-
url.searchParams.append('userReference',
|
|
134
|
+
url.searchParams.append('authorizationCode', rs.oauth2TokenRs.authorizationCode);
|
|
135
|
+
url.searchParams.append('userReference', rs.oauth2TokenRs.user?.id ?? '-1');
|
|
136
|
+
if (this.useImplicitGrant) {
|
|
137
|
+
url.searchParams.append('accessToken', accessToken);
|
|
138
|
+
}
|
|
132
139
|
response.redirect(url.toString());
|
|
133
140
|
})
|
|
134
141
|
.catch(error => {
|
|
@@ -136,9 +143,8 @@ class DefaultOAuth2ExpressServer extends controllers_1.AbstractExpressRequestHan
|
|
|
136
143
|
});
|
|
137
144
|
})
|
|
138
145
|
.catch(error => {
|
|
139
|
-
var _a;
|
|
140
146
|
response.render('pages/error', {
|
|
141
|
-
message: `${
|
|
147
|
+
message: `${error?.message ?? 'Failed to authenticate'} | Please try to request again!`,
|
|
142
148
|
});
|
|
143
149
|
});
|
|
144
150
|
});
|
|
@@ -150,7 +156,7 @@ const defineOAuth2Controller = (opts) => {
|
|
|
150
156
|
var BaseOAuth2Controller_1;
|
|
151
157
|
const { restPath = '/oauth2', tokenPath = '/token', authorizePath = '/authorize', oauth2ServiceKey = 'services.OAuth2Service',
|
|
152
158
|
// authStrategy = { name: `${applicationEnvironment.get<string>(EnvironmentKeys.APP_ENV_APPLICATION_NAME)}_oauth2` },
|
|
153
|
-
} = opts
|
|
159
|
+
} = opts ?? {};
|
|
154
160
|
let BaseOAuth2Controller = BaseOAuth2Controller_1 = class BaseOAuth2Controller extends controllers_1.BaseController {
|
|
155
161
|
constructor(authService, getCurrentUser, httpContext) {
|
|
156
162
|
super({ scope: BaseOAuth2Controller_1.name });
|
|
@@ -163,8 +169,15 @@ const defineOAuth2Controller = (opts) => {
|
|
|
163
169
|
return this.getCurrentUser();
|
|
164
170
|
}
|
|
165
171
|
// ------------------------------------------------------------------------------
|
|
166
|
-
generateToken() {
|
|
172
|
+
generateToken(payload) {
|
|
167
173
|
const { request, response } = this.httpContext;
|
|
174
|
+
request.body = {
|
|
175
|
+
client_id: payload.clientId, // eslint-disable-line @typescript-eslint/naming-convention
|
|
176
|
+
client_secret: payload.clientSecret, // eslint-disable-line @typescript-eslint/naming-convention
|
|
177
|
+
code: payload.authorizationCode,
|
|
178
|
+
grant_type: payload.grantType, // eslint-disable-line @typescript-eslint/naming-convention
|
|
179
|
+
redirect_uri: payload.redirectUrl, // eslint-disable-line @typescript-eslint/naming-convention
|
|
180
|
+
};
|
|
168
181
|
return this.service.generateToken({
|
|
169
182
|
request: new oauth2_server_1.Request(request),
|
|
170
183
|
response: new oauth2_server_1.Response(response),
|
|
@@ -191,9 +204,28 @@ const defineOAuth2Controller = (opts) => {
|
|
|
191
204
|
__metadata("design:returntype", void 0)
|
|
192
205
|
], BaseOAuth2Controller.prototype, "whoami", null);
|
|
193
206
|
__decorate([
|
|
194
|
-
(0, rest_1.post)(tokenPath
|
|
207
|
+
(0, rest_1.post)(tokenPath, {
|
|
208
|
+
responses: {
|
|
209
|
+
'200': {
|
|
210
|
+
description: 'Generate OAuth2 Token',
|
|
211
|
+
content: {
|
|
212
|
+
'application/x-www-form-urlencoded': {
|
|
213
|
+
schema: { type: 'object' },
|
|
214
|
+
},
|
|
215
|
+
},
|
|
216
|
+
},
|
|
217
|
+
},
|
|
218
|
+
}),
|
|
219
|
+
__param(0, (0, rest_1.requestBody)({
|
|
220
|
+
required: true,
|
|
221
|
+
content: {
|
|
222
|
+
'application/x-www-form-urlencoded': {
|
|
223
|
+
schema: (0, utilities_1.getSchemaObject)(common_2.OAuth2AuthorizationCodeRequest),
|
|
224
|
+
},
|
|
225
|
+
},
|
|
226
|
+
})),
|
|
195
227
|
__metadata("design:type", Function),
|
|
196
|
-
__metadata("design:paramtypes", []),
|
|
228
|
+
__metadata("design:paramtypes", [common_2.OAuth2AuthorizationCodeRequest]),
|
|
197
229
|
__metadata("design:returntype", void 0)
|
|
198
230
|
], BaseOAuth2Controller.prototype, "generateToken", null);
|
|
199
231
|
__decorate([
|
|
@@ -208,12 +240,12 @@ const defineOAuth2Controller = (opts) => {
|
|
|
208
240
|
required: true,
|
|
209
241
|
content: {
|
|
210
242
|
'application/json': {
|
|
211
|
-
schema: (0, utilities_1.getSchemaObject)(common_2.
|
|
243
|
+
schema: (0, utilities_1.getSchemaObject)(common_2.OAuth2PathRequest),
|
|
212
244
|
},
|
|
213
245
|
},
|
|
214
246
|
})),
|
|
215
247
|
__metadata("design:type", Function),
|
|
216
|
-
__metadata("design:paramtypes", [common_2.
|
|
248
|
+
__metadata("design:paramtypes", [common_2.OAuth2PathRequest]),
|
|
217
249
|
__metadata("design:returntype", void 0)
|
|
218
250
|
], BaseOAuth2Controller.prototype, "getOAuth2RequestPath", null);
|
|
219
251
|
BaseOAuth2Controller = BaseOAuth2Controller_1 = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth2.controller.js","sourceRoot":"","sources":["../../../../src/components/authenticate/controllers/oauth2.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,qCAAqE;AACrE,uCAAmD;AACnD,2CAA8C;AAC9C,6DAAwD;AACxD,yCAAyD;AACzD,yCAQwB;AACxB,iDAAsD;AACtD,6DAA8D;AAE9D,0CAA4C;AAE5C,oDAI4B;AAC5B,6DAAqC;AACrC,yCAAiC;AACjC,
|
|
1
|
+
{"version":3,"file":"oauth2.controller.js","sourceRoot":"","sources":["../../../../src/components/authenticate/controllers/oauth2.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,qCAAqE;AACrE,uCAAmD;AACnD,2CAA8C;AAC9C,6DAAwD;AACxD,yCAAyD;AACzD,yCAQwB;AACxB,iDAAsD;AACtD,6DAA8D;AAE9D,0CAA4C;AAE5C,oDAI4B;AAC5B,6DAAqC;AACrC,yCAAiC;AACjC,sCAKmB;AACnB,sCAAyC;AACzC,kDAAyD;AAWzD,mFAAmF;AACnF,MAAa,0BAA2B,SAAQ,2CAA6B;IAO3E,YAAY,IAA8B;QACxC,KAAK,CAAC;YACJ,GAAG,IAAI;YACP,KAAK,EAAE,0BAA0B,CAAC,IAAI;SACvC,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC1C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC;QAEtD,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,IAA8B;QAC/C,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,0BAA0B,CAAC,IAAI,CAAC,CAAC;YACrD,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,OAAO;QACL,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QAE1C,MAAM,gBAAgB,GACpB,IAAI,CAAC,UAAU;YACf,gCAAsB,CAAC,GAAG,CAAS,wBAAe,CAAC,0BAA0B,CAAC;YAC9E,IAAA,gBAAI,EAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,gBAAgB,CAAC,CAAC;QAEhE,MAAM,QAAQ,GACZ,gCAAsB,CAAC,GAAG,CAAS,wBAAe,CAAC,wBAAwB,CAAC,IAAI,EAAE,CAAC;QACrF,MAAM,UAAU,GAAG,GAAG,QAAQ,cAAc,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,UAAU,CAAC,CAAC;QAE/D,oHAAoH;QACpH,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE;YACjD,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC;YAE/B,IAAI,CAAC,CAAC,EAAE,CAAC;gBACP,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE;oBAC5B,OAAO,EAAE,yDAAyD;oBAClE,OAAO,EAAE,EAAE;iBACZ,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG;gBACd,KAAK,EAAE,GAAG,gCAAsB,CAAC,GAAG,CAAS,wBAAe,CAAC,wBAAwB,CAAC,QAAQ;gBAC9F,MAAM,EAAE,UAAU;gBAClB,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;gBACnC,CAAC,EAAE,kBAAkB,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;aAC3C,CAAC;YAEF,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE;gBAC5B,OAAO,EAAE,kCAAkC;gBAC3C,OAAO;aACR,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,oHAAoH;QACpH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE;YAClD,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YAE7E,MAAM,aAAa,GAAG;gBACpB,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE;gBACpC,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE;gBACpC,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE;gBACpC,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE;aAC3C,CAAC;YACF,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;gBACjC,IAAI,IAAI,EAAE,KAAK,IAAI,CAAC,IAAA,iBAAO,EAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;oBACzC,SAAS;gBACX,CAAC;gBAED,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,uDAAuD,EACvD,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,KAAK,CACX,CAAC;gBACF,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE;oBAC7B,OAAO,EAAE,gBAAgB,IAAI,CAAC,GAAG,uIAAuI;iBACzK,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,CAAgB,wBAAwB,CAAC,CAAC;YAEpF,MAAM,eAAe,GAAG,aAAa,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;YACjF,aAAa;iBACV,QAAQ,CAAC;gBACR,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;gBAC9B,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,aAAa,EAAE;oBACb,UAAU,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE;oBACnD,UAAU,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE;oBAChD,QAAQ,EAAE,eAAe,CAAC,QAAQ;iBACnC;gBACD,WAAW;aACZ,CAAC;iBACD,IAAI,CAAC,EAAE,CAAC,EAAE;gBACT,MAAM,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC;gBAEvE,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC1B,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE;wBAC7B,OAAO,EAAE,0EAA0E;qBACpF,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;gBAED,aAAa;qBACV,gBAAgB,CAAC;oBAChB,WAAW;oBACX,WAAW,EAAE,EAAE,CAAC,aAAa;oBAC7B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;iBACxC,CAAC;qBACD,IAAI,CAAC,GAAG,EAAE;oBACT,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;oBACpC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC;oBAC9D,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;oBACrD,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,mBAAmB,EAAE,EAAE,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;oBACjF,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI,CAAC,CAAC;oBAC5E,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBAC1B,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;oBACtD,CAAC;oBACD,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACpC,CAAC,CAAC;qBACD,KAAK,CAAC,KAAK,CAAC,EAAE;oBACb,MAAM,KAAK,CAAC;gBACd,CAAC,CAAC,CAAC;YACP,CAAC,CAAC;iBACD,KAAK,CAAC,KAAK,CAAC,EAAE;gBACb,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE;oBAC7B,OAAO,EAAE,GAAG,KAAK,EAAE,OAAO,IAAI,wBAAwB,iCAAiC;iBACxF,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AApJD,gEAoJC;AAED,mFAAmF;AAC5E,MAAM,sBAAsB,GAAG,CAAC,IAAqC,EAAE,EAAE;;IAC9E,MAAM,EACJ,QAAQ,GAAG,SAAS,EACpB,SAAS,GAAG,QAAQ,EACpB,aAAa,GAAG,YAAY,EAC5B,gBAAgB,GAAG,wBAAwB;IAE3C,qHAAqH;MACtH,GAAG,IAAI,IAAI,EAAE,CAAC;IAEf,IACM,oBAAoB,4BAD1B,MACM,oBAAqB,SAAQ,4BAAc;QAK/C,YACE,WAA0B,EAC1B,cAA0C,EAC1C,WAA2B;YAE3B,KAAK,CAAC,EAAE,KAAK,EAAE,sBAAoB,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5C,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC;YAC3B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;YACrC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QACjC,CAAC;QAED,iFAAiF;QAGjF,MAAM;YACJ,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;QAC/B,CAAC;QAED,iFAAiF;QAajF,aAAa,CASX,OAAuC;YAEvC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC;YAC/C,OAAO,CAAC,IAAI,GAAG;gBACb,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,2DAA2D;gBACxF,aAAa,EAAE,OAAO,CAAC,YAAY,EAAE,2DAA2D;gBAChG,IAAI,EAAE,OAAO,CAAC,iBAAiB;gBAC/B,UAAU,EAAE,OAAO,CAAC,SAAS,EAAE,2DAA2D;gBAC1F,YAAY,EAAE,OAAO,CAAC,WAAW,EAAE,2DAA2D;aAC/F,CAAC;YAEF,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;gBAChC,OAAO,EAAE,IAAI,uBAAO,CAAC,OAAO,CAAC;gBAC7B,QAAQ,EAAE,IAAI,wBAAQ,CAAC,QAAQ,CAAC;aACjC,CAAC,CAAC;QACL,CAAC;QAED,iFAAiF;QAEjF,SAAS;YACP,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;gBAC5B,OAAO,EAAE,IAAI,uBAAO,CAAC,OAAO,CAAC;gBAC7B,QAAQ,EAAE,IAAI,wBAAQ,CAAC,QAAQ,CAAC;aACjC,CAAC,CAAC;QACL,CAAC;QAED,iFAAiF;QAEjF,oBAAoB,CASlB,OAA0B;YAE1B,OAAO,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACpD,CAAC;KACF,CAAA;IApEC;QAFC,IAAA,6BAAY,EAAC,uBAAc,CAAC,YAAY,CAAC;QACzC,IAAA,UAAG,EAAC,WAAW,CAAC;;;;sDAGhB;IAeD;QAZC,IAAA,WAAI,EAAC,SAAS,EAAE;YACf,SAAS,EAAE;gBACT,KAAK,EAAE;oBACL,WAAW,EAAE,uBAAuB;oBACpC,OAAO,EAAE;wBACP,mCAAmC,EAAE;4BACnC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yBAC3B;qBACF;iBACF;aACF;SACF,CAAC;QAEC,WAAA,IAAA,kBAAW,EAAC;YACX,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,mCAAmC,EAAE;oBACnC,MAAM,EAAE,IAAA,2BAAe,EAAC,uCAA8B,CAAC;iBACxD;aACF;SACF,CAAC,CAAA;;yCACO,uCAA8B;;6DAexC;IAID;QADC,IAAA,WAAI,EAAC,aAAa,CAAC;;;;yDAOnB;IAID;QADC,IAAA,WAAI,EAAC,UAAU,CAAC;QAEd,WAAA,IAAA,kBAAW,EAAC;YACX,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,kBAAkB,EAAE;oBAClB,MAAM,EAAE,IAAA,2BAAe,EAAC,0BAAiB,CAAC;iBAC3C;aACF;SACF,CAAC,CAAA;;yCACO,0BAAiB;;oEAG3B;IAtFG,oBAAoB;QADzB,IAAA,UAAG,EAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;yCAOX,wBAAa,YAEb,qBAAc;OARzB,oBAAoB,CAuFzB;IAED,IAAA,aAAM,EAAC,gBAAgB,CAAC,CAAC,oBAAoB,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAC7D,aAAM,CAAC,MAAM,CAAC,2BAAgB,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,oBAAoB,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAC7F,IAAA,aAAM,EAAC,mBAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,oBAAoB,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAEtE,OAAO,oBAAoB,CAAC;AAC9B,CAAC,CAAC;AAzGW,QAAA,sBAAsB,0BAyGjC;AAEF,mFAAmF;AACnF,MAAM,uBAAuB,GAAG,IAAA,kCAAoB,EAAC;IACnD,MAAM,EAAE,qBAAY;IACpB,UAAU,EAAE,EAAE,IAAI,EAAE,qCAAsB,CAAC,IAAI,EAAE;IACjD,UAAU,EAAE,EAAE,QAAQ,EAAE,iBAAiB,EAAE;CAC5C,CAAC,CAAC;AAGI,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,uBAAuB;IACjE,YAEY,UAAkC;QAE5C,KAAK,CAAC,UAAU,CAAC,CAAC;QAFR,eAAU,GAAV,UAAU,CAAwB;IAG9C,CAAC;CACF,CAAA;AAPY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,UAAG,EAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAGhC,WAAA,IAAA,aAAM,EAAC,qCAAqC,CAAC,CAAA;qCACxB,qCAAsB;GAHnC,sBAAsB,CAOlC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/authenticate/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/authenticate/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC"}
|
|
@@ -20,5 +20,6 @@ __exportStar(require("./controllers"), exports);
|
|
|
20
20
|
__exportStar(require("./middleware"), exports);
|
|
21
21
|
__exportStar(require("./models"), exports);
|
|
22
22
|
__exportStar(require("./oauth2-handlers"), exports);
|
|
23
|
+
__exportStar(require("./repositories"), exports);
|
|
23
24
|
__exportStar(require("./services"), exports);
|
|
24
25
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/authenticate/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,8CAA4B;AAC5B,gDAA8B;AAC9B,+CAA6B;AAC7B,2CAAyB;AACzB,oDAAkC;AAClC,6CAA2B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/authenticate/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,8CAA4B;AAC5B,gDAA8B;AAC9B,+CAA6B;AAC7B,2CAAyB;AACzB,oDAAkC;AAClC,iDAA+B;AAC/B,6CAA2B"}
|
|
@@ -11,15 +11,6 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
12
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
13
|
};
|
|
14
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
15
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
16
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
17
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
18
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
19
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
20
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
14
|
var AuthenticationMiddleware_1;
|
|
24
15
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
16
|
exports.AuthenticationMiddleware = void 0;
|
|
@@ -34,45 +25,42 @@ let AuthenticationMiddleware = AuthenticationMiddleware_1 = class Authentication
|
|
|
34
25
|
this.authenticateFn = authenticateFn;
|
|
35
26
|
this.alwaysAllowPathGetter = alwaysAllowPathGetter;
|
|
36
27
|
}
|
|
37
|
-
authenticate(request) {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
this.logger.error('[authenticate] User request failed to authenticate | %s', error);
|
|
55
|
-
break;
|
|
56
|
-
}
|
|
28
|
+
async authenticate(request) {
|
|
29
|
+
try {
|
|
30
|
+
const { url = '' } = request;
|
|
31
|
+
this.logger.debug('[authenticate] Authenticating request | Url: %s', decodeURIComponent(url)?.replace(/(?:\r\n|\r|\n)/g, ''));
|
|
32
|
+
await this.authenticateFn(request);
|
|
33
|
+
}
|
|
34
|
+
catch (error) {
|
|
35
|
+
const { code } = error || {};
|
|
36
|
+
switch (code) {
|
|
37
|
+
case authentication_1.AUTHENTICATION_STRATEGY_NOT_FOUND:
|
|
38
|
+
case authentication_1.USER_PROFILE_NOT_FOUND: {
|
|
39
|
+
Object.assign(error, { statusCode: 401 });
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
42
|
+
default: {
|
|
43
|
+
this.logger.error('[authenticate] User request failed to authenticate | %s', error);
|
|
44
|
+
break;
|
|
57
45
|
}
|
|
58
|
-
throw error;
|
|
59
46
|
}
|
|
60
|
-
|
|
47
|
+
throw error;
|
|
48
|
+
}
|
|
61
49
|
}
|
|
62
50
|
value() {
|
|
63
|
-
return (context, next) =>
|
|
51
|
+
return async (context, next) => {
|
|
64
52
|
const t = new Date().getTime();
|
|
65
53
|
const { request } = context;
|
|
66
54
|
const { url } = request;
|
|
67
55
|
const requestUrl = decodeURIComponent(url);
|
|
68
56
|
const requestPath = requestUrl.slice(0, requestUrl.indexOf('?'));
|
|
69
|
-
const alwaysAllowPaths =
|
|
57
|
+
const alwaysAllowPaths = await this.alwaysAllowPathGetter();
|
|
70
58
|
if (!alwaysAllowPaths.includes(requestPath)) {
|
|
71
|
-
|
|
59
|
+
await this.authenticate(request);
|
|
72
60
|
}
|
|
73
61
|
this.logger.debug('[handle] Authenticated request... | Took: %d(ms)', new Date().getTime() - t);
|
|
74
62
|
return next();
|
|
75
|
-
}
|
|
63
|
+
};
|
|
76
64
|
}
|
|
77
65
|
};
|
|
78
66
|
exports.AuthenticationMiddleware = AuthenticationMiddleware;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/components/authenticate/middleware.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/components/authenticate/middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAoD;AACpD,6DAKkC;AAClC,yCAAkF;AAClF,yCAOwB;AACxB,qCAA4C;AASrC,IAAM,wBAAwB,gCAA9B,MAAM,wBAAyB,SAAQ,4BAAwB;IACpE,YAEU,cAA8B,EAE9B,qBAAuC;QAE/C,KAAK,CAAC,EAAE,KAAK,EAAE,0BAAwB,CAAC,IAAI,EAAE,CAAC,CAAC;QAJxC,mBAAc,GAAd,cAAc,CAAgB;QAE9B,0BAAqB,GAArB,qBAAqB,CAAkB;IAGjD,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAAgB;QACjC,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,iDAAiD,EACjD,kBAAkB,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CACxD,CAAC;YACF,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC;YAC7B,QAAQ,IAAI,EAAE,CAAC;gBACb,KAAK,kDAAiC,CAAC;gBACvC,KAAK,uCAAsB,CAAC,CAAC,CAAC;oBAC5B,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;oBAC1C,MAAM;gBACR,CAAC;gBACD,OAAO,CAAC,CAAC,CAAC;oBACR,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yDAAyD,EAAE,KAAK,CAAC,CAAC;oBACpF,MAAM;gBACR,CAAC;YACH,CAAC;YAED,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK;QACH,OAAO,KAAK,EAAE,OAA0B,EAAE,IAAU,EAAE,EAAE;YACtD,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YAE/B,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;YAC5B,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;YACxB,MAAM,UAAU,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;YAC3C,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;YAEjE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC5D,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC5C,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACnC,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,kDAAkD,EAClD,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,CACzB,CAAC;YACF,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC;CACF,CAAA;AAzDY,4DAAwB;mCAAxB,wBAAwB;IAPpC,IAAA,iBAAU,EACT,IAAA,mBAAY,EAAC;QACX,KAAK,EAAE,eAAQ,CAAC,qBAAqB;QACrC,KAAK,EAAE,2BAAoB,CAAC,cAAc;QAC1C,cAAc,EAAE,CAAC,2BAAoB,CAAC,IAAI,CAAC;KAC5C,CAAC,CACH;IAGI,WAAA,IAAA,aAAM,EAAC,uCAAsB,CAAC,WAAW,CAAC,CAAA;IAE1C,WAAA,aAAM,CAAC,MAAM,CAAC,yBAAgB,CAAC,kBAAkB,CAAC,CAAA;;GAJ1C,wBAAwB,CAyDpC"}
|
|
@@ -18,14 +18,13 @@ class OAuth2AuthorizationCodeHandler extends base_1.AbstractOAuth2Authentication
|
|
|
18
18
|
token: authorizationCode,
|
|
19
19
|
})
|
|
20
20
|
.then(rs => {
|
|
21
|
-
var _a, _b;
|
|
22
21
|
const { token: oauth2Token, client, user } = rs;
|
|
23
22
|
resolve({
|
|
24
23
|
authorizationCode: oauth2Token.token,
|
|
25
|
-
expiresAt: new Date(
|
|
26
|
-
redirectUri:
|
|
24
|
+
expiresAt: new Date(oauth2Token.details?.expiresAt),
|
|
25
|
+
redirectUri: oauth2Token.details?.redirectUri,
|
|
27
26
|
scope: oauth2Token.scopes,
|
|
28
|
-
client:
|
|
27
|
+
client: { ...client, id: client.id.toString() },
|
|
29
28
|
user,
|
|
30
29
|
});
|
|
31
30
|
})
|
|
@@ -42,7 +41,7 @@ class OAuth2AuthorizationCodeHandler extends base_1.AbstractOAuth2Authentication
|
|
|
42
41
|
details: code,
|
|
43
42
|
})
|
|
44
43
|
.then(() => {
|
|
45
|
-
resolve(
|
|
44
|
+
resolve({ ...code, client, user });
|
|
46
45
|
})
|
|
47
46
|
.catch(reject);
|
|
48
47
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authorization-code.handler.js","sourceRoot":"","sources":["../../../../src/components/authenticate/oauth2-handlers/authorization-code.handler.ts"],"names":[],"mappings":";;;AAQA,sCAAqD;AACrD,iCAA6D;AAE7D,MAAa,8BACX,SAAQ,0CAAmC;IAG3C,YAAY,IAAmF;QAC7F,KAAK,CAAC;YACJ,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,eAAe,EAAE,IAAI,CAAC,eAAe;SACtC,CAAC,CAAC;IACL,CAAC;IAED,oBAAoB,CAAC,iBAAyB;QAC5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,SAAS,CAAC;gBACb,IAAI,EAAE,iCAAwB,CAAC,uBAAuB;gBACtD,KAAK,EAAE,iBAAiB;aACzB,CAAC;iBACC,IAAI,CAAC,EAAE,CAAC,EAAE
|
|
1
|
+
{"version":3,"file":"authorization-code.handler.js","sourceRoot":"","sources":["../../../../src/components/authenticate/oauth2-handlers/authorization-code.handler.ts"],"names":[],"mappings":";;;AAQA,sCAAqD;AACrD,iCAA6D;AAE7D,MAAa,8BACX,SAAQ,0CAAmC;IAG3C,YAAY,IAAmF;QAC7F,KAAK,CAAC;YACJ,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,eAAe,EAAE,IAAI,CAAC,eAAe;SACtC,CAAC,CAAC;IACL,CAAC;IAED,oBAAoB,CAAC,iBAAyB;QAC5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,SAAS,CAAC;gBACb,IAAI,EAAE,iCAAwB,CAAC,uBAAuB;gBACtD,KAAK,EAAE,iBAAiB;aACzB,CAAC;iBACC,IAAI,CAAC,EAAE,CAAC,EAAE;gBACT,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;gBAChD,OAAO,CAAC;oBACN,iBAAiB,EAAE,WAAW,CAAC,KAAK;oBACpC,SAAS,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC;oBACnD,WAAW,EAAE,WAAW,CAAC,OAAO,EAAE,WAAW;oBAC7C,KAAK,EAAE,WAAW,CAAC,MAAM;oBACzB,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE;oBAC/C,IAAI;iBACL,CAAC,CAAC;YACL,CAAC,CAAC;iBACD,KAAK,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,qBAAqB,CACnB,IAQC,EACD,MAAc,EACd,IAAU;QAEV,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,UAAU,CAAC;gBACd,KAAK,EAAE,IAAI,CAAC,iBAAiB;gBAC7B,IAAI,EAAE,iCAAwB,CAAC,uBAAuB;gBACtD,MAAM;gBACN,IAAI;gBACJ,OAAO,EAAE,IAAI;aACd,CAAC;iBACC,IAAI,CAAC,GAAG,EAAE;gBACT,OAAO,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YACrC,CAAC,CAAC;iBACD,KAAK,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,uBAAuB,CAAC,IAAuB;QAC7C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4CAA4C,EAAE,IAAI,CAAC,CAAC;QACtE,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;CACF;AAjED,wEAiEC"}
|