@based/server 6.2.6 → 6.2.7
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/auth/defaultConfig.js +5 -1
- package/dist/auth/defaultConfig.js.map +1 -1
- package/dist/auth/parseJSONAuthState.js +18 -1
- package/dist/auth/parseJSONAuthState.js.map +1 -1
- package/dist/incoming/http/index.js +15 -0
- package/dist/incoming/http/index.js.map +1 -1
- package/dist/incoming/ws/auth.js +16 -11
- package/dist/incoming/ws/auth.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.defaultVerifyAuthState = exports.defaultAuthorize = void 0;
|
|
4
|
+
const utils_1 = require("@saulx/utils");
|
|
4
5
|
const defaultAuthorize = async () => {
|
|
5
6
|
return true;
|
|
6
7
|
};
|
|
7
8
|
exports.defaultAuthorize = defaultAuthorize;
|
|
8
|
-
const defaultVerifyAuthState = async () => {
|
|
9
|
+
const defaultVerifyAuthState = async (based, ctx, authState) => {
|
|
10
|
+
if (ctx.session && !(0, utils_1.deepEqual)(authState, ctx.session.authState)) {
|
|
11
|
+
return authState;
|
|
12
|
+
}
|
|
9
13
|
return true;
|
|
10
14
|
};
|
|
11
15
|
exports.defaultVerifyAuthState = defaultVerifyAuthState;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultConfig.js","sourceRoot":"","sources":["../../src/auth/defaultConfig.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"defaultConfig.js","sourceRoot":"","sources":["../../src/auth/defaultConfig.ts"],"names":[],"mappings":";;;AACA,wCAAwC;AAEjC,MAAM,gBAAgB,GAAc,KAAK,IAAI,EAAE;IACpD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAFY,QAAA,gBAAgB,oBAE5B;AAEM,MAAM,sBAAsB,GAAoB,KAAK,EAC1D,KAAK,EACL,GAAG,EACH,SAAS,EACT,EAAE;IACF,IAAI,GAAG,CAAC,OAAO,IAAI,CAAC,IAAA,iBAAS,EAAC,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC/D,OAAO,SAAS,CAAA;KACjB;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AATY,QAAA,sBAAsB,0BASlC"}
|
|
@@ -2,7 +2,24 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.default = (authorization) => {
|
|
4
4
|
try {
|
|
5
|
-
|
|
5
|
+
const authState = JSON.parse(decodeURIComponent(authorization));
|
|
6
|
+
for (const key in authState) {
|
|
7
|
+
if (key !== 'token' &&
|
|
8
|
+
key !== 'userId' &&
|
|
9
|
+
key !== 'refreshToken' &&
|
|
10
|
+
key !== 'error' &&
|
|
11
|
+
key !== 'persistent' &&
|
|
12
|
+
key !== 'type') {
|
|
13
|
+
return { error: 'Illegal key in authState ' + key };
|
|
14
|
+
}
|
|
15
|
+
else if (key === 'persistent' && typeof authState[key] !== 'boolean') {
|
|
16
|
+
return { error: 'Persistent is not a boolean' };
|
|
17
|
+
}
|
|
18
|
+
else if (typeof authState[key] !== 'string') {
|
|
19
|
+
return { error: `${key} is not of string` };
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return authState;
|
|
6
23
|
}
|
|
7
24
|
catch (err) { }
|
|
8
25
|
return { error: 'Invalid token' };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseJSONAuthState.js","sourceRoot":"","sources":["../../src/auth/parseJSONAuthState.ts"],"names":[],"mappings":";;AAEA,kBAAe,CAAC,aAAqB,EAAa,EAAE;IAClD,IAAI;QACF,
|
|
1
|
+
{"version":3,"file":"parseJSONAuthState.js","sourceRoot":"","sources":["../../src/auth/parseJSONAuthState.ts"],"names":[],"mappings":";;AAEA,kBAAe,CAAC,aAAqB,EAAa,EAAE;IAClD,IAAI;QACF,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAA;QAC/D,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE;YAC3B,IACE,GAAG,KAAK,OAAO;gBACf,GAAG,KAAK,QAAQ;gBAChB,GAAG,KAAK,cAAc;gBACtB,GAAG,KAAK,OAAO;gBACf,GAAG,KAAK,YAAY;gBACpB,GAAG,KAAK,MAAM,EACd;gBACA,OAAO,EAAE,KAAK,EAAE,2BAA2B,GAAG,GAAG,EAAE,CAAA;aACpD;iBAAM,IAAI,GAAG,KAAK,YAAY,IAAI,OAAO,SAAS,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE;gBACtE,OAAO,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAAA;aAChD;iBAAM,IAAI,OAAO,SAAS,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE;gBAC7C,OAAO,EAAE,KAAK,EAAE,GAAG,GAAG,mBAAmB,EAAE,CAAA;aAC5C;SACF;QACD,OAAO,SAAS,CAAA;KACjB;IAAC,OAAO,GAAG,EAAE,GAAE;IAChB,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,CAAA;AACnC,CAAC,CAAA"}
|
|
@@ -60,6 +60,21 @@ const httpHandler = (server, req, res) => {
|
|
|
60
60
|
let authState = {};
|
|
61
61
|
if (route.public !== true) {
|
|
62
62
|
const authorization = req.getHeader('authorization');
|
|
63
|
+
if (authorization.length > 5e3) {
|
|
64
|
+
(0, sendError_1.sendError)(server, {
|
|
65
|
+
session: {
|
|
66
|
+
ua: req.getHeader('user-agent'),
|
|
67
|
+
ip,
|
|
68
|
+
method,
|
|
69
|
+
id: ++clientId,
|
|
70
|
+
headers: {},
|
|
71
|
+
authState: {},
|
|
72
|
+
res,
|
|
73
|
+
req,
|
|
74
|
+
},
|
|
75
|
+
}, error_1.BasedErrorCode.PayloadTooLarge, { route: { name: 'authorize', type: 'function' } });
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
63
78
|
if (authorization) {
|
|
64
79
|
authState = (0, auth_1.parseAuthState)(authorization);
|
|
65
80
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/incoming/http/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/incoming/http/index.ts"],"names":[],"mappings":"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"}
|
package/dist/incoming/ws/auth.js
CHANGED
|
@@ -6,6 +6,7 @@ const query_1 = require("./query");
|
|
|
6
6
|
const security_1 = require("../../security");
|
|
7
7
|
const channelSubscribe_1 = require("./channelSubscribe");
|
|
8
8
|
const installFn_1 = require("../../installFn");
|
|
9
|
+
const authorize_1 = require("../../authorize");
|
|
9
10
|
const sendAuthMessage = (ctx, payload) => ctx.session?.ws.send((0, protocol_1.encodeAuthResponse)((0, protocol_1.valueToBuffer)(payload)), true, false);
|
|
10
11
|
const parse = (payload) => {
|
|
11
12
|
try {
|
|
@@ -28,15 +29,14 @@ const reEvaulateUnauthorized = (server, ctx) => {
|
|
|
28
29
|
type: 'query',
|
|
29
30
|
};
|
|
30
31
|
(0, installFn_1.installFn)(server, ctx, route, id).then((spec) => {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
}
|
|
32
|
+
(0, authorize_1.authorize)(route, server, ctx, payload, () => {
|
|
33
|
+
session.unauthorizedObs.delete(obs);
|
|
34
|
+
if (spec) {
|
|
35
|
+
(0, query_1.enableSubscribe)(route, spec, server, ctx, payload, id, checksum);
|
|
36
|
+
}
|
|
37
|
+
});
|
|
37
38
|
});
|
|
38
39
|
});
|
|
39
|
-
session.unauthorizedObs.clear();
|
|
40
40
|
}
|
|
41
41
|
if (session.unauthorizedChannels?.size) {
|
|
42
42
|
session.unauthorizedChannels.forEach((channel) => {
|
|
@@ -46,12 +46,14 @@ const reEvaulateUnauthorized = (server, ctx) => {
|
|
|
46
46
|
type: 'channel',
|
|
47
47
|
};
|
|
48
48
|
(0, installFn_1.installFn)(server, ctx, route, id).then((spec) => {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
49
|
+
(0, authorize_1.authorize)(route, server, ctx, payload, () => {
|
|
50
|
+
session.unauthorizedChannels.delete(channel);
|
|
51
|
+
if (spec) {
|
|
52
|
+
(0, channelSubscribe_1.enableChannelSubscribe)(route, spec, server, ctx, payload, id);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
52
55
|
});
|
|
53
56
|
});
|
|
54
|
-
session.unauthorizedChannels.clear();
|
|
55
57
|
}
|
|
56
58
|
};
|
|
57
59
|
exports.reEvaulateUnauthorized = reEvaulateUnauthorized;
|
|
@@ -60,6 +62,9 @@ const authMessage = (arr, start, len, isDeflate, ctx, server) => {
|
|
|
60
62
|
ctx.session.ws.close();
|
|
61
63
|
return false;
|
|
62
64
|
}
|
|
65
|
+
if (len > 20000) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
63
68
|
// | 4 header | * payload |
|
|
64
69
|
const payload = (0, protocol_1.decodePayload)(new Uint8Array(arr.slice(start + 4, start + len)), isDeflate);
|
|
65
70
|
const authState = parse(payload);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/incoming/ws/auth.ts"],"names":[],"mappings":";;;AAAA,6CAIuB;AAEvB,mCAAyC;AACzC,6CAAiD;AAQjD,yDAA2D;AAC3D,+CAA2C;AAE3C,MAAM,eAAe,GAAG,CAAC,GAA8B,EAAE,OAAY,EAAE,EAAE,CACvE,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,IAAA,6BAAkB,EAAC,IAAA,wBAAa,EAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;AAE/E,MAAM,KAAK,GAAG,CAAC,OAAe,EAAE,EAAE;IAChC,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;KAC3B;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,CAAA;KAClC;AACH,CAAC,CAAA;AAEM,MAAM,sBAAsB,GAAG,CACpC,MAAmB,EACnB,GAA8B,EAC9B,EAAE;IACF,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAA;IAC3B,IAAI,CAAC,OAAO,EAAE;QACZ,OAAM;KACP;IACD,IAAI,OAAO,CAAC,eAAe,EAAE,IAAI,EAAE;QACjC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACtC,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,GAAG,CAAA;YAC3C,MAAM,KAAK,GAAwB;gBACjC,IAAI;gBACJ,IAAI,EAAE,OAAO;aACd,CAAA;YACD,IAAA,qBAAS,EAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC9C,IAAI,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/incoming/ws/auth.ts"],"names":[],"mappings":"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"}
|