@steedos/auth 3.0.0-beta.14 → 3.0.0-beta.141
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/lib/auth-middleware.js +24 -5
- package/lib/auth-middleware.js.map +1 -1
- package/lib/session.js +29 -2
- package/lib/session.js.map +1 -1
- package/lib/spaceUserSession.js +74 -73
- package/lib/spaceUserSession.js.map +1 -1
- package/lib/tokenMap.js +3 -1
- package/lib/tokenMap.js.map +1 -1
- package/lib/userSession.js +19 -2
- package/lib/userSession.js.map +1 -1
- package/lib/utils/index.js +17 -15
- package/lib/utils/index.js.map +1 -1
- package/package.json +5 -6
package/lib/auth-middleware.js
CHANGED
|
@@ -47,7 +47,12 @@ var requireAuthentication = function (req, res, next) { return __awaiter(void 0,
|
|
|
47
47
|
next();
|
|
48
48
|
}
|
|
49
49
|
else {
|
|
50
|
-
res
|
|
50
|
+
res
|
|
51
|
+
.status(401)
|
|
52
|
+
.send({
|
|
53
|
+
status: "error",
|
|
54
|
+
message: "You must be logged in to do this.",
|
|
55
|
+
});
|
|
51
56
|
}
|
|
52
57
|
})];
|
|
53
58
|
case 1:
|
|
@@ -75,17 +80,31 @@ var superAdminAuthentication = function (req, res, next) { return __awaiter(void
|
|
|
75
80
|
switch (_a.label) {
|
|
76
81
|
case 0: return [4, (0, session_1.setRequestUser)(req, res, function () {
|
|
77
82
|
if (req.user) {
|
|
78
|
-
var
|
|
79
|
-
|
|
83
|
+
var _a = req.user, userId = _a.userId, is_space_admin = _a.is_space_admin;
|
|
84
|
+
if (process.env.STEEDOS_TENANT_ENABLE_SAAS != "true" && is_space_admin) {
|
|
85
|
+
next();
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
var superAdmins = (0, lodash_1.compact)((0, lodash_1.split)(process.env.STEEDOS_SUPER_ADMIN, ","));
|
|
80
89
|
if ((0, lodash_1.includes)(superAdmins, userId)) {
|
|
81
90
|
next();
|
|
82
91
|
}
|
|
83
92
|
else {
|
|
84
|
-
res
|
|
93
|
+
res
|
|
94
|
+
.status(403)
|
|
95
|
+
.send({
|
|
96
|
+
status: "error",
|
|
97
|
+
message: "You do not have permission to do this.",
|
|
98
|
+
});
|
|
85
99
|
}
|
|
86
100
|
}
|
|
87
101
|
else {
|
|
88
|
-
res
|
|
102
|
+
res
|
|
103
|
+
.status(401)
|
|
104
|
+
.send({
|
|
105
|
+
status: "error",
|
|
106
|
+
message: "You must be logged in to do this.",
|
|
107
|
+
});
|
|
89
108
|
}
|
|
90
109
|
})];
|
|
91
110
|
case 1:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-middleware.js","sourceRoot":"","sources":["../src/auth-middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,qCAA2C;AAE3C,iCAAkD;AAK3C,IAAM,qBAAqB,GAAG,
|
|
1
|
+
{"version":3,"file":"auth-middleware.js","sourceRoot":"","sources":["../src/auth-middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,qCAA2C;AAE3C,iCAAkD;AAK3C,IAAM,qBAAqB,GAAG,UACnC,GAAY,EACZ,GAAQ,EACR,IAAgB;;;oBAEhB,WAAM,IAAA,wBAAc,EAAC,GAAG,EAAE,GAAG,EAAE;oBAC7B,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;wBACb,IAAI,EAAE,CAAC;oBACT,CAAC;yBAAM,CAAC;wBACN,GAAG;6BACA,MAAM,CAAC,GAAG,CAAC;6BACX,IAAI,CAAC;4BACJ,MAAM,EAAE,OAAO;4BACf,OAAO,EAAE,mCAAmC;yBAC7C,CAAC,CAAC;oBACP,CAAC;gBACH,CAAC,CAAC,EAAA;;gBAXF,SAWE,CAAC;;;;KACJ,CAAC;AAjBW,QAAA,qBAAqB,yBAiBhC;AAEK,IAAM,cAAc,GAAG,UAC5B,GAAY,EACZ,GAAQ,EACR,IAAgB;;;oBAEhB,WAAM,IAAA,wBAAc,EAAC,GAAG,EAAE,GAAG,EAAE;oBAC7B,IAAI,EAAE,CAAC;gBACT,CAAC,CAAC,EAAA;;gBAFF,SAEE,CAAC;;;;KACJ,CAAC;AARW,QAAA,cAAc,kBAQzB;AAEK,IAAM,wBAAwB,GAAG,UACtC,GAAY,EACZ,GAAQ,EACR,IAAgB;;;oBAEhB,WAAM,IAAA,wBAAc,EAAC,GAAG,EAAE,GAAG,EAAE;oBAC7B,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;wBACP,IAAA,KAA6B,GAAG,CAAC,IAAI,EAAnC,MAAM,YAAA,EAAE,cAAc,oBAAa,CAAC;wBAE5C,IAAI,OAAO,CAAC,GAAG,CAAC,0BAA0B,IAAI,MAAM,IAAI,cAAc,EAAE,CAAC;4BACvE,IAAI,EAAE,CAAC;4BACP,OAAO;wBACT,CAAC;wBAED,IAAM,WAAW,GAAG,IAAA,gBAAO,EAAC,IAAA,cAAK,EAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC,CAAC;wBACzE,IAAI,IAAA,iBAAQ,EAAC,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC;4BAClC,IAAI,EAAE,CAAC;wBACT,CAAC;6BAAM,CAAC;4BACN,GAAG;iCACA,MAAM,CAAC,GAAG,CAAC;iCACX,IAAI,CAAC;gCACJ,MAAM,EAAE,OAAO;gCACf,OAAO,EAAE,wCAAwC;6BAClD,CAAC,CAAC;wBACP,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,GAAG;6BACA,MAAM,CAAC,GAAG,CAAC;6BACX,IAAI,CAAC;4BACJ,MAAM,EAAE,OAAO;4BACf,OAAO,EAAE,mCAAmC;yBAC7C,CAAC,CAAC;oBACP,CAAC;gBACH,CAAC,CAAC,EAAA;;gBA5BF,SA4BE,CAAC;;;;KACJ,CAAC;AAlCW,QAAA,wBAAwB,4BAkCnC"}
|
package/lib/session.js
CHANGED
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
2
13
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
14
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
15
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -45,6 +56,7 @@ exports.auth = auth;
|
|
|
45
56
|
exports.setRequestUser = setRequestUser;
|
|
46
57
|
exports.removeUserSessionsCacheByUserId = removeUserSessionsCacheByUserId;
|
|
47
58
|
exports.isPropValueChanged = isPropValueChanged;
|
|
59
|
+
exports.isOnlyMetadataChanged = isOnlyMetadataChanged;
|
|
48
60
|
var objectql_1 = require("@steedos/objectql");
|
|
49
61
|
var tokenMap_1 = require("./tokenMap");
|
|
50
62
|
var userSession_1 = require("./userSession");
|
|
@@ -201,10 +213,10 @@ function auth(request, response) {
|
|
|
201
213
|
authToken = spaceToken.split(",")[1];
|
|
202
214
|
}
|
|
203
215
|
}
|
|
204
|
-
if (request.query["X-Auth-Token"]) {
|
|
216
|
+
if (request.query && request.query["X-Auth-Token"]) {
|
|
205
217
|
authToken = request.query["X-Auth-Token"];
|
|
206
218
|
}
|
|
207
|
-
if (request.query["X-Space-Id"]) {
|
|
219
|
+
if (request.query && request.query["X-Space-Id"]) {
|
|
208
220
|
spaceId = request.query["X-Space-Id"];
|
|
209
221
|
}
|
|
210
222
|
userAgent = getUserAgent(request) || "";
|
|
@@ -254,4 +266,19 @@ function isPropValueChanged(newDoc, oldDoc, props) {
|
|
|
254
266
|
}
|
|
255
267
|
return false;
|
|
256
268
|
}
|
|
269
|
+
function isOnlyMetadataChanged(newDoc, oldDoc) {
|
|
270
|
+
var metadataFields = ["created", "created_by", "modified", "modified_by"];
|
|
271
|
+
var allKeys = Object.keys(__assign(__assign({}, newDoc), oldDoc));
|
|
272
|
+
for (var _i = 0, allKeys_1 = allKeys; _i < allKeys_1.length; _i++) {
|
|
273
|
+
var key = allKeys_1[_i];
|
|
274
|
+
var newValue = newDoc[key] !== undefined ? String(newDoc[key]) : undefined;
|
|
275
|
+
var oldValue = oldDoc[key] !== undefined ? String(oldDoc[key]) : undefined;
|
|
276
|
+
if (newValue !== oldValue) {
|
|
277
|
+
if (!metadataFields.includes(key)) {
|
|
278
|
+
return true;
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
return false;
|
|
283
|
+
}
|
|
257
284
|
//# sourceMappingURL=session.js.map
|
package/lib/session.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
|
package/lib/spaceUserSession.js
CHANGED
|
@@ -46,15 +46,6 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
46
46
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
47
|
}
|
|
48
48
|
};
|
|
49
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
50
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
51
|
-
if (ar || !(i in from)) {
|
|
52
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
53
|
-
ar[i] = from[i];
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
57
|
-
};
|
|
58
49
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
59
50
|
exports.getSpaceSessionFromCache = getSpaceSessionFromCache;
|
|
60
51
|
exports.addSpaceSessionToCache = addSpaceSessionToCache;
|
|
@@ -71,9 +62,9 @@ var userSession_1 = require("./userSession");
|
|
|
71
62
|
var _ = require("underscore");
|
|
72
63
|
var metadata_registrar_1 = require("@steedos/metadata-registrar");
|
|
73
64
|
var sessionCacheInMinutes = 10;
|
|
74
|
-
var SPACEUSERCACHENAME =
|
|
75
|
-
var internalProfiles = [
|
|
76
|
-
var SPACES_CACHER_NAME =
|
|
65
|
+
var SPACEUSERCACHENAME = "space_users_cache";
|
|
66
|
+
var internalProfiles = ["admin", "user", "supplier", "customer"];
|
|
67
|
+
var SPACES_CACHER_NAME = "lru.spaces";
|
|
77
68
|
function getSpaceUserProfile(userId, spaceId) {
|
|
78
69
|
return __awaiter(this, void 0, void 0, function () {
|
|
79
70
|
var filters, spaceUser;
|
|
@@ -81,7 +72,9 @@ function getSpaceUserProfile(userId, spaceId) {
|
|
|
81
72
|
switch (_a.label) {
|
|
82
73
|
case 0:
|
|
83
74
|
filters = "(space eq '".concat(spaceId, "') and (user eq '").concat(userId, "')");
|
|
84
|
-
return [4, (0, objectql_1.getSteedosSchema)()
|
|
75
|
+
return [4, (0, objectql_1.getSteedosSchema)()
|
|
76
|
+
.getObject("space_users")
|
|
77
|
+
.find({ filters: filters, fields: ["profile"] })];
|
|
85
78
|
case 1:
|
|
86
79
|
spaceUser = _a.sent();
|
|
87
80
|
if (spaceUser && spaceUser.length > 0) {
|
|
@@ -98,12 +91,14 @@ function getUserRoles(userId, spaceId) {
|
|
|
98
91
|
return __generator(this, function (_a) {
|
|
99
92
|
switch (_a.label) {
|
|
100
93
|
case 0:
|
|
101
|
-
roles = [
|
|
102
|
-
return [4, (0, objectql_1.getSteedosSchema)()
|
|
94
|
+
roles = ["user"];
|
|
95
|
+
return [4, (0, objectql_1.getSteedosSchema)()
|
|
96
|
+
.getObject("spaces")
|
|
97
|
+
.findOne(spaceId, { fields: ["admins"] })];
|
|
103
98
|
case 1:
|
|
104
99
|
space = _a.sent();
|
|
105
100
|
if (space && space.admins.includes(userId)) {
|
|
106
|
-
roles = [
|
|
101
|
+
roles = ["admin"];
|
|
107
102
|
}
|
|
108
103
|
return [4, getSpaceUserProfile(userId, spaceId)];
|
|
109
104
|
case 2:
|
|
@@ -112,7 +107,9 @@ function getUserRoles(userId, spaceId) {
|
|
|
112
107
|
roles = [profile];
|
|
113
108
|
}
|
|
114
109
|
filters = "(space eq '".concat(spaceId, "') and (users eq '").concat(userId, "')");
|
|
115
|
-
return [4, (0, objectql_1.getSteedosSchema)()
|
|
110
|
+
return [4, (0, objectql_1.getSteedosSchema)()
|
|
111
|
+
.getObject("permission_set")
|
|
112
|
+
.directFind({ filters: filters, fields: ["name"] })];
|
|
116
113
|
case 3:
|
|
117
114
|
permission_sets = _a.sent();
|
|
118
115
|
permission_sets.forEach(function (p) {
|
|
@@ -134,18 +131,10 @@ function getObjectDataByIds(objectName, ids, fields) {
|
|
|
134
131
|
if (!ids || ids.length === 0) {
|
|
135
132
|
return [2, []];
|
|
136
133
|
}
|
|
137
|
-
filters =
|
|
138
|
-
if (!id) {
|
|
139
|
-
return '';
|
|
140
|
-
}
|
|
141
|
-
return "(_id eq '".concat(id, "')");
|
|
142
|
-
}).join(' or ');
|
|
143
|
-
if (!filters) {
|
|
144
|
-
return [2, []];
|
|
145
|
-
}
|
|
134
|
+
filters = ["_id", "in", ids];
|
|
146
135
|
query = { filters: filters };
|
|
147
136
|
if (fields && fields.length > 0) {
|
|
148
|
-
query[
|
|
137
|
+
query["fields"] = fields;
|
|
149
138
|
}
|
|
150
139
|
return [4, (0, objectql_1.getSteedosSchema)().getObject(objectName).directFind(query)];
|
|
151
140
|
case 1: return [2, _a.sent()];
|
|
@@ -155,18 +144,8 @@ function getObjectDataByIds(objectName, ids, fields) {
|
|
|
155
144
|
}
|
|
156
145
|
function getUserPermissionShares(spaceUser) {
|
|
157
146
|
return __awaiter(this, void 0, void 0, function () {
|
|
158
|
-
var userFilters, filters;
|
|
159
147
|
return __generator(this, function (_a) {
|
|
160
|
-
|
|
161
|
-
case 0:
|
|
162
|
-
userFilters = ["(users eq '".concat(spaceUser.user, "')")];
|
|
163
|
-
_.each(spaceUser.organizations_parents, function (orgId) {
|
|
164
|
-
userFilters.push("(organizations eq '".concat(orgId, "')"));
|
|
165
|
-
});
|
|
166
|
-
filters = "((".concat(userFilters.join(' or '), ") and space eq '").concat(spaceUser.space, "')");
|
|
167
|
-
return [4, (0, objectql_1.getSteedosSchema)().getObject('permission_shares').find({ filters: filters, fields: ['_id', 'object_name'] })];
|
|
168
|
-
case 1: return [2, _a.sent()];
|
|
169
|
-
}
|
|
148
|
+
return [2, []];
|
|
170
149
|
});
|
|
171
150
|
});
|
|
172
151
|
}
|
|
@@ -190,18 +169,24 @@ function removeSpaceUserSessionFromCache(spaceId, userId) {
|
|
|
190
169
|
}
|
|
191
170
|
function getSpaceUserSession(spaceId, userId) {
|
|
192
171
|
return __awaiter(this, void 0, void 0, function () {
|
|
193
|
-
var spaceSession, expiredAt, su_1, spaceUsers, findSpaceUser, userSpaceId_1, userSpaceIds, _a, roles, profile, spaces, companies, organizations, permission_shares;
|
|
172
|
+
var spaceSession, expiredAt, su_1, spaceUsers, findSpaceUser, userSpaceId_1, userSpaceIds, _a, roles, profile, spaces, companies, organizations, permission_shares, userSpaceIds, spaces;
|
|
194
173
|
return __generator(this, function (_b) {
|
|
195
174
|
switch (_b.label) {
|
|
196
175
|
case 0:
|
|
197
176
|
spaceSession = getSpaceSessionFromCache(spaceId, userId);
|
|
198
|
-
if (!!spaceSession) return [3,
|
|
177
|
+
if (!!spaceSession) return [3, 5];
|
|
199
178
|
expiredAt = new Date().getTime() + sessionCacheInMinutes * 60 * 1000;
|
|
200
179
|
su_1 = null;
|
|
201
|
-
return [4, (0, objectql_1.getSteedosSchema)()
|
|
180
|
+
return [4, (0, objectql_1.getSteedosSchema)()
|
|
181
|
+
.getObject("space_users")
|
|
182
|
+
.directFind({
|
|
183
|
+
filters: "(user eq '".concat(userId, "') and (user_accepted eq true)"),
|
|
184
|
+
})];
|
|
202
185
|
case 1:
|
|
203
186
|
spaceUsers = _b.sent();
|
|
204
|
-
findSpaceUser = _.find(spaceUsers, function (spaceUser) {
|
|
187
|
+
findSpaceUser = _.find(spaceUsers, function (spaceUser) {
|
|
188
|
+
return spaceUser.space === spaceId;
|
|
189
|
+
});
|
|
205
190
|
if (findSpaceUser) {
|
|
206
191
|
su_1 = findSpaceUser;
|
|
207
192
|
}
|
|
@@ -210,41 +195,65 @@ function getSpaceUserSession(spaceId, userId) {
|
|
|
210
195
|
}
|
|
211
196
|
if (!su_1) return [3, 3];
|
|
212
197
|
userSpaceId_1 = su_1.space;
|
|
213
|
-
userSpaceIds = _.pluck(spaceUsers,
|
|
198
|
+
userSpaceIds = _.pluck(spaceUsers, "space");
|
|
214
199
|
return [4, Promise.all([
|
|
215
200
|
getUserRoles(userId, userSpaceId_1),
|
|
216
201
|
getSpaceUserProfile(userId, userSpaceId_1),
|
|
217
202
|
getSpaces(userSpaceIds),
|
|
218
|
-
getObjectDataByIds(
|
|
219
|
-
getObjectDataByIds(
|
|
220
|
-
|
|
203
|
+
getObjectDataByIds("company", su_1.company_ids, ["name", "organization"]),
|
|
204
|
+
getObjectDataByIds("organizations", su_1.organizations, [
|
|
205
|
+
"name",
|
|
206
|
+
"fullname",
|
|
207
|
+
"company_id",
|
|
208
|
+
]),
|
|
209
|
+
getUserPermissionShares(su_1),
|
|
221
210
|
])];
|
|
222
211
|
case 2:
|
|
223
212
|
_a = _b.sent(), roles = _a[0], profile = _a[1], spaces = _a[2], companies = _a[3], organizations = _a[4], permission_shares = _a[5];
|
|
224
213
|
spaceSession = __assign({ roles: roles, profile: profile, expiredAt: expiredAt }, su_1);
|
|
225
214
|
spaceSession.spaceId = userSpaceId_1;
|
|
226
215
|
spaceSession.spaces = spaces;
|
|
227
|
-
spaceSession.space = _.find(spaceSession.spaces, function (record) {
|
|
216
|
+
spaceSession.space = _.find(spaceSession.spaces, function (record) {
|
|
217
|
+
return record._id === userSpaceId_1;
|
|
218
|
+
});
|
|
228
219
|
spaceSession.companies = companies;
|
|
229
|
-
spaceSession.company = _.find(spaceSession.companies, function (record) {
|
|
220
|
+
spaceSession.company = _.find(spaceSession.companies, function (record) {
|
|
221
|
+
return record._id === su_1.company_id;
|
|
222
|
+
});
|
|
230
223
|
spaceSession.organizations = organizations;
|
|
231
|
-
spaceSession.organization = _.find(spaceSession.organizations, function (record) {
|
|
224
|
+
spaceSession.organization = _.find(spaceSession.organizations, function (record) {
|
|
225
|
+
return record._id === su_1.organization;
|
|
226
|
+
});
|
|
232
227
|
if (spaceSession.company) {
|
|
233
228
|
spaceSession.company_id = spaceSession.company._id;
|
|
234
229
|
}
|
|
235
230
|
if (spaceSession.companies) {
|
|
236
|
-
spaceSession.company_ids = spaceSession.companies.map(function (company) {
|
|
231
|
+
spaceSession.company_ids = spaceSession.companies.map(function (company) {
|
|
232
|
+
return company._id;
|
|
233
|
+
});
|
|
237
234
|
}
|
|
238
235
|
spaceSession.permission_shares = permission_shares;
|
|
239
236
|
spaceSession.spaceUserId = spaceSession._id;
|
|
240
237
|
addSpaceSessionToCache(spaceId, userId, spaceSession);
|
|
241
238
|
return [3, 4];
|
|
242
239
|
case 3:
|
|
243
|
-
spaceSession = { roles: [
|
|
240
|
+
spaceSession = { roles: ["guest"], expiredAt: expiredAt };
|
|
244
241
|
_b.label = 4;
|
|
245
|
-
case 4:
|
|
242
|
+
case 4: return [3, 7];
|
|
243
|
+
case 5:
|
|
244
|
+
userSpaceIds = _.pluck(spaceSession.spaces, "_id");
|
|
245
|
+
return [4, getSpaces(userSpaceIds)];
|
|
246
|
+
case 6:
|
|
247
|
+
spaces = _b.sent();
|
|
248
|
+
spaceSession.spaces = spaces;
|
|
249
|
+
spaceSession.space = _.find(spaceSession.spaces, function (record) {
|
|
250
|
+
return record._id === spaceSession.spaceId;
|
|
251
|
+
});
|
|
252
|
+
_b.label = 7;
|
|
253
|
+
case 7:
|
|
246
254
|
if (spaceSession.space && spaceSession.space.admins) {
|
|
247
|
-
spaceSession.is_space_admin =
|
|
255
|
+
spaceSession.is_space_admin =
|
|
256
|
+
spaceSession.space.admins.indexOf(userId) > -1;
|
|
248
257
|
}
|
|
249
258
|
spaceSession.masterSpaceId = process.env.STEEDOS_TENANT_MASTER_ID;
|
|
250
259
|
return [2, spaceSession];
|
|
@@ -285,7 +294,10 @@ function getSpaces(userSpaceIds) {
|
|
|
285
294
|
sId = userSpaceIds_1[_i];
|
|
286
295
|
cacheDoc = cacher.get(sId);
|
|
287
296
|
if (!!cacheDoc) return [3, 3];
|
|
288
|
-
return [4, (0, objectql_1.getObject)(
|
|
297
|
+
return [4, (0, objectql_1.getObject)("spaces").directFind({
|
|
298
|
+
filters: [["_id", "=", sId]],
|
|
299
|
+
fields: ["_id", "name", "admins", "avatar", "favicon"],
|
|
300
|
+
})];
|
|
289
301
|
case 2:
|
|
290
302
|
cacheDoc = (_a.sent())[0];
|
|
291
303
|
cacher.set(sId, cacheDoc);
|
|
@@ -308,20 +320,13 @@ function getSpaces(userSpaceIds) {
|
|
|
308
320
|
function deleteSpaceUserSessionCacheByChangedProp(newDoc, oldDoc) {
|
|
309
321
|
var spaceId = oldDoc.space, userId = oldDoc.user;
|
|
310
322
|
var uProps = [
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
323
|
+
"locale",
|
|
324
|
+
"mobile",
|
|
325
|
+
"name",
|
|
326
|
+
"username",
|
|
327
|
+
"email",
|
|
316
328
|
];
|
|
317
|
-
var
|
|
318
|
-
'company_id',
|
|
319
|
-
'company_ids',
|
|
320
|
-
'organization',
|
|
321
|
-
'organizations',
|
|
322
|
-
'profile'
|
|
323
|
-
], uProps, true);
|
|
324
|
-
var suChanged = (0, session_1.isPropValueChanged)(newDoc, oldDoc, suProps);
|
|
329
|
+
var suChanged = (0, session_1.isOnlyMetadataChanged)(newDoc, oldDoc);
|
|
325
330
|
if (suChanged) {
|
|
326
331
|
removeSpaceUserSessionFromCache(spaceId, userId);
|
|
327
332
|
}
|
|
@@ -332,15 +337,11 @@ function deleteSpaceUserSessionCacheByChangedProp(newDoc, oldDoc) {
|
|
|
332
337
|
}
|
|
333
338
|
function deleteSpaceCacheByChangedProp(newDoc, oldDoc) {
|
|
334
339
|
var spaceId = oldDoc._id;
|
|
335
|
-
var
|
|
336
|
-
'name',
|
|
337
|
-
'admins',
|
|
338
|
-
];
|
|
339
|
-
var changed = (0, session_1.isPropValueChanged)(newDoc, oldDoc, props);
|
|
340
|
+
var changed = (0, session_1.isOnlyMetadataChanged)(newDoc, oldDoc);
|
|
340
341
|
if (changed) {
|
|
341
342
|
var cacher = (0, cachers_1.getCacher)(SPACES_CACHER_NAME);
|
|
342
343
|
cacher.delete(spaceId);
|
|
343
|
-
var changeAdmins = _.difference(newDoc.admins, oldDoc.admins).concat(_.difference(oldDoc.admins, newDoc.admins));
|
|
344
|
+
var changeAdmins = (_.difference(newDoc.admins, oldDoc.admins).concat(_.difference(oldDoc.admins, newDoc.admins)));
|
|
344
345
|
for (var _i = 0, changeAdmins_1 = changeAdmins; _i < changeAdmins_1.length; _i++) {
|
|
345
346
|
var userId = changeAdmins_1[_i];
|
|
346
347
|
removeSpaceUserSessionFromCache(spaceId, userId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spaceUserSession.js","sourceRoot":"","sources":["../src/spaceUserSession.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"spaceUserSession.js","sourceRoot":"","sources":["../src/spaceUserSession.ts"],"names":[],"mappings":"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"}
|
package/lib/tokenMap.js
CHANGED
|
@@ -103,6 +103,8 @@ function removeUserTokens(userId, is_phone) {
|
|
|
103
103
|
(0, metadata_registrar_1.removeManyConfigs)(TOKENMAPCACHENAME, { userId: userId, is_phone: is_phone });
|
|
104
104
|
}
|
|
105
105
|
function removeUserTokenByToken(token) {
|
|
106
|
-
(
|
|
106
|
+
if (token) {
|
|
107
|
+
(0, metadata_registrar_1.removeConfig)(TOKENMAPCACHENAME, { _id: token });
|
|
108
|
+
}
|
|
107
109
|
}
|
|
108
110
|
//# sourceMappingURL=tokenMap.js.map
|
package/lib/tokenMap.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokenMap.js","sourceRoot":"","sources":["../src/tokenMap.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"tokenMap.js","sourceRoot":"","sources":["../src/tokenMap.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyCA,4CAgBC;AAED,4CAEC;AAED,wDAIC;AA5DD,+BAAkC;AAClC,8CAAqD;AACrD,kEAKqC;AACrC,IAAM,iBAAiB,GAAG,iBAAiB,CAAC;AAE5C,SAAS,gBAAgB,CAAC,KAAK;IAC7B,OAAO,IAAA,8BAAS,EAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAK,EAAE,QAAQ;IACvC,QAAQ,CAAC,GAAG,GAAG,KAAK,CAAC;IACrB,IAAA,8BAAS,EAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,IAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC/B,CAAC;AAED,SAAe,OAAO,CAAC,KAAa;;;;;;oBAC9B,WAAW,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;oBAC3D,OAAO,GAAG,uDAAgD,WAAW,OAAI,CAAC;oBAClE,WAAM,IAAA,2BAAgB,GAAE;6BACjC,SAAS,CAAC,OAAO,CAAC;6BAClB,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAA;;oBAF1C,KAAK,GAAG,SAEkC;oBAC9C,WAAO,KAAK,CAAC,CAAC,CAAC,EAAC;;;;CACjB;AAED,SAAsB,gBAAgB;wDAAC,KAAK,EAAE,WAAgB;;QAAhB,4BAAA,EAAA,gBAAgB;;;;oBACxD,QAAQ,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;yBACnC,CAAC,QAAQ,EAAT,cAAS;oBACA,WAAM,OAAO,CAAC,KAAK,CAAC,EAAA;;oBAA3B,IAAI,GAAG,SAAoB;oBAC/B,IAAI,IAAI,EAAE,CAAC;wBACL,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC;wBACtB,gBAAgB,CACd,KAAK,EACL,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CACnD,CAAC;wBACF,WAAO,MAAM,EAAC;oBAChB,CAAC;yBAAM,CAAC;wBACN,WAAO;oBACT,CAAC;;wBAEH,WAAO,QAAQ,CAAC,MAAM,EAAC;;;;CACxB;AAED,SAAgB,gBAAgB,CAAC,MAAM,EAAE,QAAQ;IAC/C,IAAA,sCAAiB,EAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,UAAA,EAAE,CAAC,CAAC;AACrE,CAAC;AAED,SAAgB,sBAAsB,CAAC,KAAK;IAC1C,IAAI,KAAK,EAAE,CAAC;QACV,IAAA,iCAAY,EAAC,iBAAiB,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IAClD,CAAC;AACH,CAAC"}
|
package/lib/userSession.js
CHANGED
|
@@ -44,7 +44,7 @@ var objectql_1 = require("@steedos/objectql");
|
|
|
44
44
|
var metadata_registrar_1 = require("@steedos/metadata-registrar");
|
|
45
45
|
var utils_1 = require("./utils");
|
|
46
46
|
var sessionCacheInMinutes = 10;
|
|
47
|
-
var USERCACHENAME =
|
|
47
|
+
var USERCACHENAME = "users_cache";
|
|
48
48
|
function getSessionFromCache(userId) {
|
|
49
49
|
var userSession = (0, metadata_registrar_1.getConfig)(USERCACHENAME, userId);
|
|
50
50
|
if (!userSession) {
|
|
@@ -68,7 +68,19 @@ function getUser(userId) {
|
|
|
68
68
|
var user;
|
|
69
69
|
return __generator(this, function (_a) {
|
|
70
70
|
switch (_a.label) {
|
|
71
|
-
case 0: return [4, (0, objectql_1.getSteedosSchema)()
|
|
71
|
+
case 0: return [4, (0, objectql_1.getSteedosSchema)()
|
|
72
|
+
.getObject("users")
|
|
73
|
+
.findOne(userId, {
|
|
74
|
+
fields: [
|
|
75
|
+
"name",
|
|
76
|
+
"username",
|
|
77
|
+
"mobile",
|
|
78
|
+
"email",
|
|
79
|
+
"utcOffset",
|
|
80
|
+
"steedos_id",
|
|
81
|
+
"locale",
|
|
82
|
+
],
|
|
83
|
+
})];
|
|
72
84
|
case 1:
|
|
73
85
|
user = _a.sent();
|
|
74
86
|
return [2, user];
|
|
@@ -107,6 +119,11 @@ function getUserSession(userId) {
|
|
|
107
119
|
else {
|
|
108
120
|
session.language = user.locale;
|
|
109
121
|
}
|
|
122
|
+
if (!session.language) {
|
|
123
|
+
session.language = process.env.STEEDOS_DEFAULT_LANGUAGE
|
|
124
|
+
? process.env.STEEDOS_DEFAULT_LANGUAGE
|
|
125
|
+
: "zh-CN";
|
|
126
|
+
}
|
|
110
127
|
session.expiredAt = expiredAt;
|
|
111
128
|
addSessionToCache(userId, session);
|
|
112
129
|
return [2, session];
|
package/lib/userSession.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userSession.js","sourceRoot":"","sources":["../src/userSession.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"userSession.js","sourceRoot":"","sources":["../src/userSession.ts"],"names":[],"mappings":"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"}
|
package/lib/utils/index.js
CHANGED
|
@@ -54,23 +54,22 @@ var random_1 = require("./random");
|
|
|
54
54
|
var objectql_1 = require("@steedos/objectql");
|
|
55
55
|
var utils_1 = require("@steedos/utils");
|
|
56
56
|
var hashLoginToken = function (loginToken) {
|
|
57
|
-
var hash = crypto.createHash(
|
|
57
|
+
var hash = crypto.createHash("sha256");
|
|
58
58
|
hash.update(loginToken);
|
|
59
|
-
return hash.digest(
|
|
59
|
+
return hash.digest("base64");
|
|
60
60
|
};
|
|
61
61
|
exports.hashLoginToken = hashLoginToken;
|
|
62
62
|
var generateStampedLoginToken = function () {
|
|
63
63
|
return {
|
|
64
64
|
token: random_1.default.secret(),
|
|
65
|
-
when: new Date
|
|
65
|
+
when: new Date(),
|
|
66
66
|
};
|
|
67
67
|
};
|
|
68
68
|
exports.generateStampedLoginToken = generateStampedLoginToken;
|
|
69
69
|
var hashStampedToken = function (stampedToken) {
|
|
70
70
|
var hashedStampedToken = Object.keys(stampedToken).reduce(function (prev, key) {
|
|
71
71
|
var _a;
|
|
72
|
-
return key ===
|
|
73
|
-
prev : __assign(__assign({}, prev), (_a = {}, _a[key] = stampedToken[key], _a));
|
|
72
|
+
return key === "token" ? prev : __assign(__assign({}, prev), (_a = {}, _a[key] = stampedToken[key], _a));
|
|
74
73
|
}, {});
|
|
75
74
|
return __assign(__assign({}, hashedStampedToken), { hashedToken: (0, exports.hashLoginToken)(stampedToken.token) });
|
|
76
75
|
};
|
|
@@ -81,18 +80,21 @@ var insertHashedLoginToken = function (userId, hashedToken) {
|
|
|
81
80
|
return __generator(this, function (_a) {
|
|
82
81
|
switch (_a.label) {
|
|
83
82
|
case 0:
|
|
84
|
-
userObject = (0, objectql_1.getSteedosSchema)().getObject(
|
|
85
|
-
return [4, userObject.findOne(userId, { fields: [
|
|
83
|
+
userObject = (0, objectql_1.getSteedosSchema)().getObject("users");
|
|
84
|
+
return [4, userObject.findOne(userId, { fields: ["services"] })];
|
|
86
85
|
case 1:
|
|
87
86
|
user = _a.sent();
|
|
88
|
-
if (!user[
|
|
89
|
-
user[
|
|
87
|
+
if (!user["services"]) {
|
|
88
|
+
user["services"] = {};
|
|
90
89
|
}
|
|
91
|
-
if (!user[
|
|
92
|
-
user[
|
|
90
|
+
if (!user["services"]["resume"]) {
|
|
91
|
+
user["services"]["resume"] = { loginTokens: [] };
|
|
93
92
|
}
|
|
94
|
-
user[
|
|
95
|
-
|
|
93
|
+
if (!user["services"]["resume"]["loginTokens"]) {
|
|
94
|
+
user["services"]["resume"]["loginTokens"] = [];
|
|
95
|
+
}
|
|
96
|
+
user["services"]["resume"]["loginTokens"].push(hashedToken);
|
|
97
|
+
data = { services: user["services"] };
|
|
96
98
|
return [4, userObject.update(userId, data)];
|
|
97
99
|
case 2: return [2, _a.sent()];
|
|
98
100
|
}
|
|
@@ -104,7 +106,7 @@ var setAuthCookies = function (req, res, userId, authToken, spaceId) {
|
|
|
104
106
|
var options = {
|
|
105
107
|
maxAge: 90 * 60 * 60 * 24 * 1000,
|
|
106
108
|
httpOnly: true,
|
|
107
|
-
overwrite: true
|
|
109
|
+
overwrite: true,
|
|
108
110
|
};
|
|
109
111
|
(0, utils_1.setCookie)(req, res, "X-User-Id", userId, options);
|
|
110
112
|
(0, utils_1.setCookie)(req, res, "X-Auth-Token", authToken, options);
|
|
@@ -118,7 +120,7 @@ var clearAuthCookies = function (req, res) {
|
|
|
118
120
|
var options = {
|
|
119
121
|
maxAge: 0,
|
|
120
122
|
httpOnly: true,
|
|
121
|
-
overwrite: true
|
|
123
|
+
overwrite: true,
|
|
122
124
|
};
|
|
123
125
|
(0, utils_1.clearCookie)(req, res, "X-User-Id", options);
|
|
124
126
|
(0, utils_1.clearCookie)(req, res, "X-Auth-Token", options);
|
package/lib/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@steedos/auth",
|
|
3
|
-
"
|
|
4
|
-
"version": "3.0.0-beta.14",
|
|
3
|
+
"version": "3.0.0-beta.141",
|
|
5
4
|
"main": "lib/index.js",
|
|
6
5
|
"scripts": {
|
|
7
6
|
"watch": "tsc --watch",
|
|
@@ -13,9 +12,9 @@
|
|
|
13
12
|
"access": "public"
|
|
14
13
|
},
|
|
15
14
|
"dependencies": {
|
|
16
|
-
"@steedos/cachers": "3.0.0-beta.
|
|
17
|
-
"@steedos/objectql": "3.0.0-beta.
|
|
18
|
-
"@steedos/utils": "3.0.0-beta.
|
|
15
|
+
"@steedos/cachers": "3.0.0-beta.141",
|
|
16
|
+
"@steedos/objectql": "3.0.0-beta.141",
|
|
17
|
+
"@steedos/utils": "3.0.0-beta.141",
|
|
19
18
|
"bcryptjs": "^2.4.3",
|
|
20
19
|
"cookies": "^0.8.0",
|
|
21
20
|
"express": "^4.16.4",
|
|
@@ -27,5 +26,5 @@
|
|
|
27
26
|
"devDependencies": {
|
|
28
27
|
"typescript": "5.7.3"
|
|
29
28
|
},
|
|
30
|
-
"gitHead": "
|
|
29
|
+
"gitHead": "f448582d11cedf0fd7bd9767c6e57da5414f7530"
|
|
31
30
|
}
|