vona-module-a-user 5.1.26 → 5.1.28
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/bean/bean.passport.d.ts +3 -1
- package/dist/bean/bean.passport.d.ts.map +1 -1
- package/dist/config/config.d.ts +1 -1
- package/dist/config/config.d.ts.map +1 -1
- package/dist/index.js +91 -23
- package/dist/index.js.map +1 -1
- package/dist/lib/auth.d.ts +3 -1
- package/dist/lib/auth.d.ts.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/service/authTokenAdapter.d.ts.map +1 -1
- package/dist/service/redisToken.d.ts.map +1 -1
- package/dist/types/auth.d.ts +7 -0
- package/dist/types/auth.d.ts.map +1 -1
- package/dist/types/passport.d.ts +1 -0
- package/dist/types/passport.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/bean/bean.passport.ts +82 -20
- package/src/config/config.ts +4 -1
- package/src/lib/auth.ts +20 -1
- package/src/main.ts +3 -0
- package/src/service/authTokenAdapter.ts +4 -1
- package/src/service/redisToken.ts +6 -2
- package/src/types/auth.ts +8 -0
- package/src/types/passport.ts +1 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { IJwtClientRecord, IJwtSignOptions, IJwtToken, IJwtVerifyOptions, IPayloadData } from 'vona-module-a-jwt';
|
|
2
2
|
import { BeanBase } from 'vona';
|
|
3
|
-
import type { IAuth, IAuthIdRecord, ISigninOptions } from '../types/auth.ts';
|
|
3
|
+
import type { IAuth, IAuthIdRecord, ISigninOptions, TypeAuthTokenMode } from '../types/auth.ts';
|
|
4
4
|
import type { IPassport } from '../types/passport.ts';
|
|
5
5
|
import type { IRole, IRoleNameRecord } from '../types/role.ts';
|
|
6
6
|
import type { IUser, IUserNameRecord } from '../types/user.ts';
|
|
@@ -10,6 +10,7 @@ export declare class BeanPassport extends BeanBase {
|
|
|
10
10
|
private _mockCounter;
|
|
11
11
|
private get authTokenAdapter();
|
|
12
12
|
private get passportAdapter();
|
|
13
|
+
get authTokenMode(): TypeAuthTokenMode;
|
|
13
14
|
get isAuthenticated(): boolean;
|
|
14
15
|
get isActivated(): boolean;
|
|
15
16
|
get isAccountActive(): boolean;
|
|
@@ -38,6 +39,7 @@ export declare class BeanPassport extends BeanBase {
|
|
|
38
39
|
createAuthTokenFromOauthCode(code: string): Promise<IJwtToken>;
|
|
39
40
|
checkRoleName(name: keyof IRoleNameRecord | (keyof IRoleNameRecord)[]): boolean;
|
|
40
41
|
checkUserName(name: keyof IUserNameRecord | (keyof IUserNameRecord)[]): boolean;
|
|
42
|
+
private _getCurrentPayloadData;
|
|
41
43
|
private _passportSerialize;
|
|
42
44
|
private _handlePayloadData;
|
|
43
45
|
private _combineAuthTokenOptions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bean.passport.d.ts","sourceRoot":"","sources":["../../src/bean/bean.passport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,SAAS,EACT,iBAAiB,EACjB,YAAY,EACb,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,QAAQ,EAA6B,MAAM,MAAM,CAAC;AAG3D,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"bean.passport.d.ts","sourceRoot":"","sources":["../../src/bean/bean.passport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,SAAS,EACT,iBAAiB,EACjB,YAAY,EACb,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,QAAQ,EAA6B,MAAM,MAAM,CAAC;AAG3D,OAAO,KAAK,EACV,KAAK,EACL,aAAa,EAEb,cAAc,EACd,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,SAAS,EAAoB,MAAM,sBAAsB,CAAC;AACxE,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAI/D,qBACa,YAAa,SAAQ,QAAQ;IACxC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,YAAY,CAAa;IAEjC,OAAO,KAAK,gBAAgB,GAS3B;IAED,OAAO,KAAK,eAAe,GAM1B;IAED,IAAW,aAAa,IAAI,iBAAiB,CAE5C;IAED,IAAW,eAAe,IAAI,OAAO,CAGpC;IAED,IAAW,WAAW,IAAI,OAAO,CAGhC;IAED,IAAW,eAAe,IAAI,OAAO,CAGpC;IAEM,mBAAmB,CAAC,QAAQ,CAAC,EAAE,SAAS,GAAG,IAAI;IAOzC,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;IAKjC,UAAU,CAAC,QAAQ,EAAE,SAAS,GAAG,SAAS;IAKvD,IAAW,OAAO,IAAI,SAAS,GAAG,SAAS,CAE1C;IAED,IAAW,WAAW,IAAI,KAAK,GAAG,SAAS,CAE1C;IAED,IAAW,WAAW,IAAI,KAAK,GAAG,SAAS,CAE1C;IAED,IAAW,YAAY,IAAI,KAAK,EAAE,GAAG,SAAS,CAE7C;IAEY,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC;IA0BzE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBxB,YAAY,CAAC,CAAC,SAAS,MAAM,aAAa,EACrD,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,EAC1B,MAAM,EAAE,CAAC,EACT,IAAI,CAAC,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,SAAS,CAAC;IAUR,UAAU,CACrB,IAAI,CAAC,EAAE,MAAM,eAAe,EAC5B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,SAAS,CAAC;IAIR,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMpC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK;IAKpB,cAAc,CACzB,WAAW,CAAC,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,gBAAgB,EACnC,OAAO,CAAC,EAAE,iBAAiB;;;;IAkChB,gBAAgB,CAAC,YAAY,EAAE,MAAM;IAuBrC,mBAAmB,CAAC,OAAO,CAAC,EAAE,eAAe;IAU7C,oBAAoB,CAAC,OAAO,CAAC,EAAE,eAAe;IAU9C,eAAe,CAAC,OAAO,CAAC,EAAE,eAAe;IAUzC,iCAAiC,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe;IAWhF,4BAA4B,CAAC,IAAI,EAAE,MAAM;IAS/C,aAAa,CAAC,IAAI,EAAE,MAAM,eAAe,GAAG,CAAC,MAAM,eAAe,CAAC,EAAE;IAWrE,aAAa,CAAC,IAAI,EAAE,MAAM,eAAe,GAAG,CAAC,MAAM,eAAe,CAAC,EAAE;IAS5E,OAAO,CAAC,sBAAsB;YAMhB,kBAAkB;YAiBlB,kBAAkB;YAuClB,wBAAwB;CA2BvC"}
|
package/dist/config/config.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { VonaApplication } from 'vona';
|
|
2
2
|
import type { ConfigUser } from '../types/auth.ts';
|
|
3
|
-
export declare function config(
|
|
3
|
+
export declare function config(app: VonaApplication): ConfigUser;
|
|
4
4
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAE5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAE5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAInD,wBAAgB,MAAM,CAAC,GAAG,EAAE,eAAe,cA6B1C"}
|
package/dist/index.js
CHANGED
|
@@ -70,6 +70,23 @@ GuardRoleName = __decorate([Guard(), BeanInfo({
|
|
|
70
70
|
module: "a-user"
|
|
71
71
|
})], GuardRoleName);
|
|
72
72
|
|
|
73
|
+
function $parseAuthTokenMode(value) {
|
|
74
|
+
if (value === undefined) return 'auth';
|
|
75
|
+
if (value === 'auth' || value === 'session') return value;
|
|
76
|
+
throw new Error('AUTH_TOKEN_MODE / authToken.mode must be auth or session');
|
|
77
|
+
}
|
|
78
|
+
function $getAuthTokenMode(config) {
|
|
79
|
+
const mode = $parseAuthTokenMode(config.mode);
|
|
80
|
+
if (mode === 'session') {
|
|
81
|
+
if (config.stateless) {
|
|
82
|
+
throw new Error('Session auth-token mode requires stateful authentication');
|
|
83
|
+
}
|
|
84
|
+
if (config.strategy.refreshAuthToken === 'reissue') {
|
|
85
|
+
throw new Error('Session auth-token mode does not support the reissue refresh strategy');
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return mode;
|
|
89
|
+
}
|
|
73
90
|
function $getAuthIdSystem(_authName, authId) {
|
|
74
91
|
return authId;
|
|
75
92
|
}
|
|
@@ -95,6 +112,9 @@ let BeanPassport = class BeanPassport extends BeanBase {
|
|
|
95
112
|
}
|
|
96
113
|
return this._passportAdapter;
|
|
97
114
|
}
|
|
115
|
+
get authTokenMode() {
|
|
116
|
+
return $getAuthTokenMode(this.scope.config.authToken);
|
|
117
|
+
}
|
|
98
118
|
get isAuthenticated() {
|
|
99
119
|
const user = this.currentUser;
|
|
100
120
|
return !!user && !user.anonymous;
|
|
@@ -118,6 +138,7 @@ let BeanPassport = class BeanPassport extends BeanBase {
|
|
|
118
138
|
return await this.passportAdapter.isSystemAdmin(passport);
|
|
119
139
|
}
|
|
120
140
|
async setCurrent(passport) {
|
|
141
|
+
this.ctx.state.passportPayloadData = undefined;
|
|
121
142
|
this.ctx.state.passport = await this.passportAdapter.setCurrent(passport);
|
|
122
143
|
}
|
|
123
144
|
get current() {
|
|
@@ -145,18 +166,20 @@ let BeanPassport = class BeanPassport extends BeanBase {
|
|
|
145
166
|
strategy: this.scope.config.authToken.strategy.signin,
|
|
146
167
|
ttl: this.scope.config.authToken.ttl
|
|
147
168
|
});
|
|
148
|
-
const payloadData = await this._passportSerialize(passport, authTokenOptions);
|
|
169
|
+
const payloadData = await this._passportSerialize(passport, authTokenOptions, true);
|
|
149
170
|
// jwt token
|
|
150
|
-
|
|
171
|
+
const jwt = await this.bean.jwt.create(payloadData, {
|
|
151
172
|
dev: passport.auth?.id.toString() === '-1'
|
|
152
173
|
});
|
|
174
|
+
this.ctx.state.passportPayloadData = payloadData;
|
|
175
|
+
return jwt;
|
|
153
176
|
}
|
|
154
177
|
async signout() {
|
|
155
178
|
// current
|
|
156
179
|
const passport = this.current;
|
|
157
180
|
if (!passport) return;
|
|
158
181
|
// removeAuthToken
|
|
159
|
-
const payloadData = await this.passportAdapter.serialize(passport);
|
|
182
|
+
const payloadData = this.authTokenMode === 'session' ? this._getCurrentPayloadData() : await this.passportAdapter.serialize(passport);
|
|
160
183
|
await this.authTokenAdapter.remove(payloadData);
|
|
161
184
|
// event
|
|
162
185
|
await this.scope.event.signout.emit(passport);
|
|
@@ -218,6 +241,7 @@ let BeanPassport = class BeanPassport extends BeanBase {
|
|
|
218
241
|
}
|
|
219
242
|
// setCurrent
|
|
220
243
|
await this.setCurrent(passport);
|
|
244
|
+
this.ctx.state.passportPayloadData = payloadData;
|
|
221
245
|
return {
|
|
222
246
|
payloadData,
|
|
223
247
|
passport
|
|
@@ -239,7 +263,9 @@ let BeanPassport = class BeanPassport extends BeanBase {
|
|
|
239
263
|
});
|
|
240
264
|
payloadData = await this._handlePayloadData(payloadData, authTokenOptions);
|
|
241
265
|
// jwt token
|
|
242
|
-
|
|
266
|
+
const jwt = await this.bean.jwt.create(payloadData);
|
|
267
|
+
this.ctx.state.passportPayloadData = payloadData;
|
|
268
|
+
return jwt;
|
|
243
269
|
}
|
|
244
270
|
// only created by accessToken
|
|
245
271
|
async createTempAuthToken(options) {
|
|
@@ -277,7 +303,7 @@ let BeanPassport = class BeanPassport extends BeanBase {
|
|
|
277
303
|
}
|
|
278
304
|
async createOauthCodeFromOauthAuthToken(accessToken, options) {
|
|
279
305
|
// payloadData
|
|
280
|
-
const payloadData = await this.bean.jwt.get('access').verify(accessToken);
|
|
306
|
+
const payloadData = this.authTokenMode === 'session' ? (await this.checkAuthToken(accessToken))?.payloadData : await this.bean.jwt.get('access').verify(accessToken);
|
|
281
307
|
if (!payloadData) return this.app.throw(401);
|
|
282
308
|
// code
|
|
283
309
|
return await this.bean.jwt.createOauthCode(payloadData, options);
|
|
@@ -310,7 +336,19 @@ let BeanPassport = class BeanPassport extends BeanBase {
|
|
|
310
336
|
if (!optionsName.includes(userName)) return false;
|
|
311
337
|
return true;
|
|
312
338
|
}
|
|
313
|
-
|
|
339
|
+
_getCurrentPayloadData() {
|
|
340
|
+
const payloadData = this.ctx.state.passportPayloadData;
|
|
341
|
+
if (!payloadData?.[this.scope.config.payloadData.fields.token]) return this.app.throw(401);
|
|
342
|
+
return payloadData;
|
|
343
|
+
}
|
|
344
|
+
async _passportSerialize(passport, authTokenOptions, signin = false) {
|
|
345
|
+
if (this.authTokenMode === 'session') {
|
|
346
|
+
if (signin) {
|
|
347
|
+
const payloadData = await this.passportAdapter.serialize(passport);
|
|
348
|
+
return await this.authTokenAdapter.create(payloadData, authTokenOptions?.ttl);
|
|
349
|
+
}
|
|
350
|
+
return await this._handlePayloadData(this._getCurrentPayloadData(), authTokenOptions);
|
|
351
|
+
}
|
|
314
352
|
// serialize
|
|
315
353
|
const payloadData = await this.passportAdapter.serialize(passport);
|
|
316
354
|
return await this._handlePayloadData(payloadData, authTokenOptions);
|
|
@@ -320,6 +358,18 @@ let BeanPassport = class BeanPassport extends BeanBase {
|
|
|
320
358
|
const stateless = authTokenOptions?.stateless;
|
|
321
359
|
const strategy = authTokenOptions?.strategy ?? 'refresh';
|
|
322
360
|
const ttl = authTokenOptions?.ttl;
|
|
361
|
+
if (this.authTokenMode === 'session') {
|
|
362
|
+
if (stateless) throw new Error('Session auth-token mode requires stateful authentication');
|
|
363
|
+
if (strategy === 'reissue') {
|
|
364
|
+
throw new Error('Session auth-token mode does not support the reissue refresh strategy');
|
|
365
|
+
}
|
|
366
|
+
const verified = await this.authTokenAdapter.verify(payloadData);
|
|
367
|
+
if (!verified) return this.app.throw(401);
|
|
368
|
+
if (strategy === 'refresh') {
|
|
369
|
+
await this.authTokenAdapter.refresh(payloadData, ttl);
|
|
370
|
+
}
|
|
371
|
+
return payloadData;
|
|
372
|
+
}
|
|
323
373
|
if (stateless) {
|
|
324
374
|
// do nothing
|
|
325
375
|
return payloadData;
|
|
@@ -337,18 +387,30 @@ let BeanPassport = class BeanPassport extends BeanBase {
|
|
|
337
387
|
}
|
|
338
388
|
}
|
|
339
389
|
async _combineAuthTokenOptions(authProviderId, authTokenOptionsCustom, authTokenOptionsDefault) {
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
390
|
+
let authTokenOptions = authTokenOptionsDefault;
|
|
391
|
+
if (this.authTokenMode === 'session') {
|
|
392
|
+
authTokenOptions = {
|
|
393
|
+
...authTokenOptions,
|
|
394
|
+
...authTokenOptionsCustom
|
|
395
|
+
};
|
|
396
|
+
}
|
|
397
|
+
if (authProviderId) {
|
|
398
|
+
const {
|
|
399
|
+
clientOptions
|
|
400
|
+
} = await this.bean.authProvider.getClientOptions({
|
|
401
|
+
id: authProviderId
|
|
402
|
+
}, {
|
|
403
|
+
authTokenOptions: authTokenOptionsCustom ?? {}
|
|
404
|
+
}, {
|
|
405
|
+
authTokenOptions: authTokenOptionsDefault
|
|
406
|
+
});
|
|
407
|
+
if (!clientOptions) this.app.throw(403);
|
|
408
|
+
authTokenOptions = clientOptions.authTokenOptions;
|
|
409
|
+
}
|
|
410
|
+
if (this.authTokenMode === 'session' && authTokenOptions.stateless) {
|
|
411
|
+
throw new Error('Session auth-token mode requires stateful authentication');
|
|
412
|
+
}
|
|
413
|
+
return authTokenOptions;
|
|
352
414
|
}
|
|
353
415
|
};
|
|
354
416
|
BeanPassport = __decorate([Bean(), BeanInfo({
|
|
@@ -507,7 +569,7 @@ BeanUser = __decorate([Bean(), BeanInfo({
|
|
|
507
569
|
let ServiceAuthTokenAdapter = class ServiceAuthTokenAdapter extends BeanBase {
|
|
508
570
|
async create(payloadData, ttl) {
|
|
509
571
|
const authIdStr = this._getAuthId(payloadData)?.toString();
|
|
510
|
-
const token = authIdStr === '-1' ? createHash(authIdStr) : uuidv4();
|
|
572
|
+
const token = this.bean.passport.authTokenMode === 'auth' && authIdStr === '-1' ? createHash(authIdStr) : uuidv4();
|
|
511
573
|
const payloadDataNew = Object.assign({}, payloadData, {
|
|
512
574
|
[this.scope.config.payloadData.fields.token]: token
|
|
513
575
|
});
|
|
@@ -580,10 +642,14 @@ let ServiceRedisToken = class ServiceRedisToken extends BeanBase {
|
|
|
580
642
|
}
|
|
581
643
|
_getAuthRedisKey(payloadData) {
|
|
582
644
|
if (!this.ctx.instance) return;
|
|
583
|
-
|
|
645
|
+
const key = `${this._getUserId(payloadData)}:${this._getAuthId(payloadData)}`;
|
|
646
|
+
if (this.bean.passport.authTokenMode === 'auth') return key;
|
|
647
|
+
const token = this._getToken(payloadData);
|
|
648
|
+
if (!token) return;
|
|
649
|
+
return `${key}:${token}`;
|
|
584
650
|
}
|
|
585
651
|
_getAuthRedisKeyPrefix(user) {
|
|
586
|
-
return `${user.id}
|
|
652
|
+
return `${user.id}:`;
|
|
587
653
|
}
|
|
588
654
|
_getToken(payloadData) {
|
|
589
655
|
return payloadData[this.scope.config.payloadData.fields.token];
|
|
@@ -668,12 +734,13 @@ MetaRuntime = __decorate([Meta(), BeanInfo({
|
|
|
668
734
|
module: "a-user"
|
|
669
735
|
})], MetaRuntime);
|
|
670
736
|
|
|
671
|
-
function config(
|
|
737
|
+
function config(app) {
|
|
672
738
|
const configUser = {
|
|
673
739
|
user: {
|
|
674
740
|
autoActivate: false
|
|
675
741
|
},
|
|
676
742
|
authToken: {
|
|
743
|
+
mode: $parseAuthTokenMode(app.meta.env.AUTH_TOKEN_MODE),
|
|
677
744
|
stateless: false,
|
|
678
745
|
strategy: {
|
|
679
746
|
refreshAuthToken: 'refresh',
|
|
@@ -705,6 +772,7 @@ const errors = {
|
|
|
705
772
|
class Main extends BeanSimple {
|
|
706
773
|
async moduleLoading() {}
|
|
707
774
|
async moduleLoaded() {
|
|
775
|
+
$getAuthTokenMode(this.app.config.modules['a-user'].authToken);
|
|
708
776
|
// user
|
|
709
777
|
Object.defineProperty(this.app.context, 'user', {
|
|
710
778
|
enumerable: false,
|
|
@@ -786,5 +854,5 @@ function $getUserIdSystem(_userName, userId) {
|
|
|
786
854
|
return userId;
|
|
787
855
|
}
|
|
788
856
|
|
|
789
|
-
export { $getAuthIdSystem, $getUserIdSystem, $locale, BeanPassport, BeanRole, BeanUser, CacheRedisAuthToken, EventActivate, EventCreateAnonymous, EventRegister, EventRoleMembershipChanged, EventSignin, EventSignout, GuardPassport, GuardRoleName, Main, MetaPrintTip, MetaRuntime, Passport, ScopeModuleAUser, ServiceAuthTokenAdapter, ServiceRedisToken, config, errors, locales };
|
|
857
|
+
export { $getAuthIdSystem, $getAuthTokenMode, $getUserIdSystem, $locale, $parseAuthTokenMode, BeanPassport, BeanRole, BeanUser, CacheRedisAuthToken, EventActivate, EventCreateAnonymous, EventRegister, EventRoleMembershipChanged, EventSignin, EventSignout, GuardPassport, GuardRoleName, Main, MetaPrintTip, MetaRuntime, Passport, ScopeModuleAUser, ServiceAuthTokenAdapter, ServiceRedisToken, config, errors, locales };
|
|
790
858
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/bean/guard.passport.ts","../src/bean/guard.roleName.ts","../src/lib/auth.ts","../src/bean/bean.passport.ts","../src/bean/bean.role.ts","../src/bean/bean.user.ts","../src/service/authTokenAdapter.ts","../src/service/redisToken.ts","../src/bean/cacheRedis.authToken.ts","../src/bean/event.activate.ts","../src/bean/event.createAnonymous.ts","../src/bean/event.register.ts","../src/bean/event.roleMembershipChanged.ts","../src/bean/event.signin.ts","../src/bean/event.signout.ts","../src/bean/meta.printTip.ts","../src/bean/meta.runtime.ts","../src/config/config.ts","../src/config/errors.ts","../src/main.ts","../src/.metadata/index.ts","../src/config/locale/en-us.ts","../src/config/locale/zh-cn.ts","../src/.metadata/locales.ts","../src/lib/passport.ts","../src/lib/user.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["GuardPassport","BeanBase","execute","options","next","bean","passport","current","checkAuthToken","_","err","catchError","public","checkErrorJwtExpiredAndThrow","ctx","headers","isAuthenticated","app","throw","signinWithAnonymous","isAccountActive","activated","isActivated","innerAccess","__decorate","Guard","Global","__z_BeanInfo","module","GuardRoleName","GuardBase","check","name","checkRoleName","$getAuthIdSystem","_authName","authId","BeanPassport","constructor","args","_authTokenAdapter","_passportAdapter","_mockCounter","authTokenAdapter","beanFullName","beanFullNameFromOnionName","scope","config","adapter","authToken","_getBean","passportAdapter","user","currentUser","anonymous","accountStatus","ensureAccountActive","isSystemAdmin","setCurrent","state","currentAuth","auth","currentRoles","roles","signin","isNil","instanceName","Error","event","emit","authTokenOptions","_combineAuthTokenOptions","authProviderId","stateless","strategy","ttl","payloadData","_passportSerialize","jwt","create","dev","id","toString","signout","serialize","remove","undefined","signinSystem","authName","findOneByName","role","findAllByUserId","signinMock","userAnonymous","createAnonymous","kickOut","removeAll","accessToken","clientName","get","verify","includes","code","deserialize","verified","refreshAuthToken","refreshToken","checkRes","_handlePayloadData","createTempAuthToken","createOauthAuthToken","createOauthCode","createOauthCodeFromOauthAuthToken","createAuthTokenFromOauthCode","roleNames","map","item","optionsName","Array","isArray","some","roleName","checkUserName","userName","payloadData2","retrieve","refresh","authTokenOptionsCustom","authTokenOptionsDefault","clientOptions","authProvider","getClientOptions","Bean","BeanRole","_roleAdapter","roleAdapter","findOneById","findOne","userId","addUserId","changed","emitMembershipChanged","removeUserId","replaceUserRoleIds","roleIds","result","changedRoleIds","addedRoleIds","removedRoleIds","length","roleMembershipChanged","userIds","uniqueIds","ids","values","Map","set","String","entries","toSorted","left","right","localeCompare","Core","transaction","prototype","BeanUser","_userAdapter","userAdapter","activate","setActivated","register","confirmed","randomUsername","autoActivate","data","userCheck","error","UserExists","Date","now","substring","userData","userNew","registerByProfile","profile","userOfProfile","updateById","update","removeById","ServiceAuthTokenAdapter","authIdStr","_getAuthId","token","createHash","uuidv4","payloadDataNew","Object","assign","fields","service","redisToken","Service","ServiceRedisToken","_getToken","key","_getAuthRedisKey","cacheRedis","expire","del","keyPrefix","_getAuthRedisKeyPrefix","keys","lookupKeys","mdel","instance","_getUserId","CacheRedisAuthToken","ServiceCacheRedisBase","CacheRedis","disableTransactionCompensate","EventActivate","BeanEventBase","Event","EventCreateAnonymous","EventRegister","EventRoleMembershipChanged","EventSignin","EventSignout","MetaPrintTip","meta","isDev","title","message","Meta","MetaRuntime","isProd","_app","configUser","errors","Main","BeanSimple","moduleLoading","moduleLoaded","defineProperty","context","enumerable","configLoaded","_config","ScopeModuleAUser","BeanScopeBase","Scope","locales","locale_en_us","locale_zh_cn","$locale","$makeLocaleMagic","Public","_public","Aspect","guardGlobal","Activated","RoleName","guard","SystemAdmin","Rbac","decorator","target","propertyKey","descriptor","Passport","systemAdmin","rbac","$getUserIdSystem","_userName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/bean/guard.passport.ts","../src/bean/guard.roleName.ts","../src/lib/auth.ts","../src/bean/bean.passport.ts","../src/bean/bean.role.ts","../src/bean/bean.user.ts","../src/service/authTokenAdapter.ts","../src/service/redisToken.ts","../src/bean/cacheRedis.authToken.ts","../src/bean/event.activate.ts","../src/bean/event.createAnonymous.ts","../src/bean/event.register.ts","../src/bean/event.roleMembershipChanged.ts","../src/bean/event.signin.ts","../src/bean/event.signout.ts","../src/bean/meta.printTip.ts","../src/bean/meta.runtime.ts","../src/config/config.ts","../src/config/errors.ts","../src/main.ts","../src/.metadata/index.ts","../src/config/locale/en-us.ts","../src/config/locale/zh-cn.ts","../src/.metadata/locales.ts","../src/lib/passport.ts","../src/lib/user.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["GuardPassport","BeanBase","execute","options","next","bean","passport","current","checkAuthToken","_","err","catchError","public","checkErrorJwtExpiredAndThrow","ctx","headers","isAuthenticated","app","throw","signinWithAnonymous","isAccountActive","activated","isActivated","innerAccess","__decorate","Guard","Global","__z_BeanInfo","module","GuardRoleName","GuardBase","check","name","checkRoleName","$parseAuthTokenMode","value","undefined","Error","$getAuthTokenMode","config","mode","stateless","strategy","refreshAuthToken","$getAuthIdSystem","_authName","authId","BeanPassport","constructor","args","_authTokenAdapter","_passportAdapter","_mockCounter","authTokenAdapter","beanFullName","beanFullNameFromOnionName","scope","adapter","authToken","_getBean","passportAdapter","authTokenMode","user","currentUser","anonymous","accountStatus","ensureAccountActive","isSystemAdmin","setCurrent","state","passportPayloadData","currentAuth","auth","currentRoles","roles","signin","isNil","instanceName","event","emit","authTokenOptions","_combineAuthTokenOptions","authProviderId","ttl","payloadData","_passportSerialize","jwt","create","dev","id","toString","signout","_getCurrentPayloadData","serialize","remove","signinSystem","authName","findOneByName","role","findAllByUserId","signinMock","userAnonymous","createAnonymous","kickOut","removeAll","accessToken","clientName","get","verify","includes","code","deserialize","verified","refreshToken","checkRes","_handlePayloadData","createTempAuthToken","createOauthAuthToken","createOauthCode","createOauthCodeFromOauthAuthToken","createAuthTokenFromOauthCode","roleNames","map","item","optionsName","Array","isArray","some","roleName","checkUserName","userName","fields","token","refresh","payloadData2","retrieve","authTokenOptionsCustom","authTokenOptionsDefault","clientOptions","authProvider","getClientOptions","Bean","BeanRole","_roleAdapter","roleAdapter","findOneById","findOne","userId","addUserId","changed","emitMembershipChanged","removeUserId","replaceUserRoleIds","roleIds","result","changedRoleIds","addedRoleIds","removedRoleIds","length","roleMembershipChanged","userIds","uniqueIds","ids","values","Map","set","String","entries","toSorted","left","right","localeCompare","Core","transaction","prototype","BeanUser","_userAdapter","userAdapter","activate","setActivated","register","confirmed","randomUsername","autoActivate","data","userCheck","error","UserExists","Date","now","substring","userData","userNew","registerByProfile","profile","userOfProfile","updateById","update","removeById","ServiceAuthTokenAdapter","authIdStr","_getAuthId","createHash","uuidv4","payloadDataNew","Object","assign","service","redisToken","Service","ServiceRedisToken","_getToken","key","_getAuthRedisKey","cacheRedis","expire","del","keyPrefix","_getAuthRedisKeyPrefix","keys","lookupKeys","mdel","instance","_getUserId","CacheRedisAuthToken","ServiceCacheRedisBase","CacheRedis","disableTransactionCompensate","EventActivate","BeanEventBase","Event","EventCreateAnonymous","EventRegister","EventRoleMembershipChanged","EventSignin","EventSignout","MetaPrintTip","meta","isDev","title","message","Meta","MetaRuntime","isProd","configUser","env","AUTH_TOKEN_MODE","errors","Main","BeanSimple","moduleLoading","moduleLoaded","modules","defineProperty","context","enumerable","configLoaded","_config","ScopeModuleAUser","BeanScopeBase","Scope","locales","locale_en_us","locale_zh_cn","$locale","$makeLocaleMagic","Public","_public","Aspect","guardGlobal","Activated","RoleName","guard","SystemAdmin","Rbac","decorator","target","propertyKey","descriptor","Passport","systemAdmin","rbac","$getUserIdSystem","_userName"],"mappings":"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"}
|
package/dist/lib/auth.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { TableIdentity } from 'table-identity';
|
|
2
|
-
import type { IAuthIdRecord } from '../types/auth.ts';
|
|
2
|
+
import type { IAuthIdRecord, IAuthTokenConfig, TypeAuthTokenMode } from '../types/auth.ts';
|
|
3
|
+
export declare function $parseAuthTokenMode(value: unknown): TypeAuthTokenMode;
|
|
4
|
+
export declare function $getAuthTokenMode(config: IAuthTokenConfig): TypeAuthTokenMode;
|
|
3
5
|
export declare function $getAuthIdSystem<K extends keyof IAuthIdRecord>(_authName: IAuthIdRecord[K], authId: K): TableIdentity;
|
|
4
6
|
//# sourceMappingURL=auth.d.ts.map
|
package/dist/lib/auth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/lib/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/lib/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE3F,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,iBAAiB,CAIrE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,gBAAgB,GAAG,iBAAiB,CAW7E;AAED,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,aAAa,EAC5D,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC,EAC3B,MAAM,EAAE,CAAC,GACR,aAAa,CAEf"}
|
package/dist/main.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAe,MAAM,MAAM,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAe,MAAM,MAAM,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAIlC,qBAAa,IAAK,SAAQ,UAAW,YAAW,WAAW;IACnD,aAAa;IACb,YAAY;IAkBZ,YAAY,CAAC,OAAO,EAAE,GAAG;CAChC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authTokenAdapter.d.ts","sourceRoot":"","sources":["../../src/service/authTokenAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,EAAE,QAAQ,EAAsB,MAAM,MAAM,CAAC;AAGpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE9C,qBACa,uBAAwB,SAAQ,QAAS,YAAW,iBAAiB;IAC1E,MAAM,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"authTokenAdapter.d.ts","sourceRoot":"","sources":["../../src/service/authTokenAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,EAAE,QAAQ,EAAsB,MAAM,MAAM,CAAC;AAGpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE9C,qBACa,uBAAwB,SAAQ,QAAS,YAAW,iBAAiB;IAC1E,MAAM,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAatE,QAAQ,CAAC,WAAW,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAItE,MAAM,CAAC,WAAW,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IAInD,OAAO,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/D,MAAM,CAAC,WAAW,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,SAAS,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3C,OAAO,CAAC,UAAU;CAGnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redisToken.d.ts","sourceRoot":"","sources":["../../src/service/redisToken.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAGhC,qBACa,iBAAkB,SAAQ,QAAQ;IACvC,MAAM,CAAC,WAAW,EAAE,YAAY;IAOhC,QAAQ,CAAC,WAAW,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAQtE,MAAM,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,MAAM;IAM9C,OAAO,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,MAAM;IAM/C,MAAM,CAAC,WAAW,EAAE,YAAY;IAMhC,SAAS,CAAC,IAAI,EAAE,KAAK;IAM3B,OAAO,CAAC,gBAAgB;
|
|
1
|
+
{"version":3,"file":"redisToken.d.ts","sourceRoot":"","sources":["../../src/service/redisToken.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAGhC,qBACa,iBAAkB,SAAQ,QAAQ;IACvC,MAAM,CAAC,WAAW,EAAE,YAAY;IAOhC,QAAQ,CAAC,WAAW,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAQtE,MAAM,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,MAAM;IAM9C,OAAO,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,MAAM;IAM/C,MAAM,CAAC,WAAW,EAAE,YAAY;IAMhC,SAAS,CAAC,IAAI,EAAE,KAAK;IAM3B,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,UAAU;CAGnB"}
|
package/dist/types/auth.d.ts
CHANGED
|
@@ -17,7 +17,9 @@ export interface IAuth {
|
|
|
17
17
|
authProvider?: IAuthProvider;
|
|
18
18
|
}
|
|
19
19
|
export type TypeAuthTokenStrategy = 'reissue' | 'refresh' | 'reuse';
|
|
20
|
+
export type TypeAuthTokenMode = 'auth' | 'session';
|
|
20
21
|
export interface IAuthTokenConfig {
|
|
22
|
+
mode: TypeAuthTokenMode;
|
|
21
23
|
stateless: boolean;
|
|
22
24
|
strategy: {
|
|
23
25
|
refreshAuthToken: TypeAuthTokenStrategy;
|
|
@@ -52,4 +54,9 @@ export interface IAuthTokenOptions {
|
|
|
52
54
|
export interface ISigninOptions {
|
|
53
55
|
authToken?: IAuthTokenOptions;
|
|
54
56
|
}
|
|
57
|
+
declare module 'vona' {
|
|
58
|
+
interface VonaConfigEnv {
|
|
59
|
+
AUTH_TOKEN_MODE: string | undefined;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
55
62
|
//# sourceMappingURL=auth.d.ts.map
|
package/dist/types/auth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/types/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,KAAK,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,mBAAmB,CAAC;IACxC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,aAAa,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,aAAa,CAAC;CAC9B;AAED,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/types/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,KAAK,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,mBAAmB,CAAC;IACxC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,aAAa,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,aAAa,CAAC;CAC9B;AAED,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AACpE,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,SAAS,CAAC;AAEnD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,iBAAiB,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE;QACR,gBAAgB,EAAE,qBAAqB,CAAC;QACxC,MAAM,EAAE,qBAAqB,CAAC;KAC/B,CAAC;IACF,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE;QACJ,YAAY,EAAE,OAAO,CAAC;KACvB,CAAC;IACF,SAAS,EAAE,gBAAgB,CAAC;IAC5B,OAAO,EAAE;QACP,SAAS,EAAE,MAAM,cAAc,CAAC;QAChC,QAAQ,EAAE,MAAM,cAAc,CAAC;QAC/B,IAAI,EAAE,MAAM,cAAc,CAAC;QAC3B,IAAI,EAAE,MAAM,cAAc,CAAC;KAC5B,CAAC;IACF,WAAW,EAAE;QACX,MAAM,EAAE;YACN,MAAM,EAAE,MAAM,CAAC;YACf,MAAM,EAAE,MAAM,CAAC;YACf,KAAK,EAAE,MAAM,CAAC;SACf,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IACjC,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,iBAAiB,CAAC;CAC/B;AAED,OAAO,QAAQ,MAAM,CAAC;IACpB,UAAiB,aAAa;QAC5B,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;KACrC;CACF"}
|
package/dist/types/passport.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"passport.d.ts","sourceRoot":"","sources":["../../src/types/passport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAEvC,MAAM,WAAW,SAAS;IACxB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,aAAa,CAAC,QAAQ,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACjE,UAAU,CAAC,QAAQ,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IAC5E,SAAS,CAAC,QAAQ,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACtD,WAAW,CAAC,WAAW,EAAE,YAAY,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;CACxE;AAED,OAAO,QAAQ,MAAM,CAAC;IACpB,UAAiB,YAAY;QAC3B,QAAQ,CAAC,EAAE,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"passport.d.ts","sourceRoot":"","sources":["../../src/types/passport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAEvC,MAAM,WAAW,SAAS;IACxB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,aAAa,CAAC,QAAQ,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACjE,UAAU,CAAC,QAAQ,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IAC5E,SAAS,CAAC,QAAQ,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACtD,WAAW,CAAC,WAAW,EAAE,YAAY,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;CACxE;AAED,OAAO,QAAQ,MAAM,CAAC;IACpB,UAAiB,YAAY;QAC3B,QAAQ,CAAC,EAAE,SAAS,CAAC;QACrB,mBAAmB,CAAC,EAAE,YAAY,CAAC;KACpC;IAED,UAAiB,WAAW;QAC1B,IAAI,IAAI,IAAI,KAAK,CAAC;QAClB,IAAI,QAAQ,IAAI,SAAS,CAAC;KAC3B;CACF"}
|
package/package.json
CHANGED
|
@@ -10,13 +10,19 @@ import { catchError, isNil } from '@cabloy/utils';
|
|
|
10
10
|
import { BeanBase, beanFullNameFromOnionName } from 'vona';
|
|
11
11
|
import { Bean } from 'vona-module-a-bean';
|
|
12
12
|
|
|
13
|
-
import type {
|
|
13
|
+
import type {
|
|
14
|
+
IAuth,
|
|
15
|
+
IAuthIdRecord,
|
|
16
|
+
IAuthTokenOptions,
|
|
17
|
+
ISigninOptions,
|
|
18
|
+
TypeAuthTokenMode,
|
|
19
|
+
} from '../types/auth.ts';
|
|
14
20
|
import type { IAuthTokenAdapter } from '../types/authToken.ts';
|
|
15
21
|
import type { IPassport, IPassportAdapter } from '../types/passport.ts';
|
|
16
22
|
import type { IRole, IRoleNameRecord } from '../types/role.ts';
|
|
17
23
|
import type { IUser, IUserNameRecord } from '../types/user.ts';
|
|
18
24
|
|
|
19
|
-
import { $getAuthIdSystem } from '../lib/auth.ts';
|
|
25
|
+
import { $getAuthIdSystem, $getAuthTokenMode } from '../lib/auth.ts';
|
|
20
26
|
|
|
21
27
|
@Bean()
|
|
22
28
|
export class BeanPassport extends BeanBase {
|
|
@@ -43,6 +49,10 @@ export class BeanPassport extends BeanBase {
|
|
|
43
49
|
return this._passportAdapter;
|
|
44
50
|
}
|
|
45
51
|
|
|
52
|
+
public get authTokenMode(): TypeAuthTokenMode {
|
|
53
|
+
return $getAuthTokenMode(this.scope.config.authToken);
|
|
54
|
+
}
|
|
55
|
+
|
|
46
56
|
public get isAuthenticated(): boolean {
|
|
47
57
|
const user = this.currentUser;
|
|
48
58
|
return !!user && !user.anonymous;
|
|
@@ -71,6 +81,7 @@ export class BeanPassport extends BeanBase {
|
|
|
71
81
|
}
|
|
72
82
|
|
|
73
83
|
public async setCurrent(passport: IPassport | undefined) {
|
|
84
|
+
this.ctx.state.passportPayloadData = undefined;
|
|
74
85
|
this.ctx.state.passport = await this.passportAdapter.setCurrent(passport);
|
|
75
86
|
}
|
|
76
87
|
|
|
@@ -107,9 +118,13 @@ export class BeanPassport extends BeanBase {
|
|
|
107
118
|
ttl: this.scope.config.authToken.ttl,
|
|
108
119
|
},
|
|
109
120
|
);
|
|
110
|
-
const payloadData = await this._passportSerialize(passport, authTokenOptions);
|
|
121
|
+
const payloadData = await this._passportSerialize(passport, authTokenOptions, true);
|
|
111
122
|
// jwt token
|
|
112
|
-
|
|
123
|
+
const jwt = await this.bean.jwt.create(payloadData, {
|
|
124
|
+
dev: passport.auth?.id.toString() === '-1',
|
|
125
|
+
});
|
|
126
|
+
this.ctx.state.passportPayloadData = payloadData;
|
|
127
|
+
return jwt;
|
|
113
128
|
}
|
|
114
129
|
|
|
115
130
|
public async signout(): Promise<void> {
|
|
@@ -117,7 +132,10 @@ export class BeanPassport extends BeanBase {
|
|
|
117
132
|
const passport = this.current;
|
|
118
133
|
if (!passport) return;
|
|
119
134
|
// removeAuthToken
|
|
120
|
-
const payloadData =
|
|
135
|
+
const payloadData =
|
|
136
|
+
this.authTokenMode === 'session'
|
|
137
|
+
? this._getCurrentPayloadData()
|
|
138
|
+
: await this.passportAdapter.serialize(passport);
|
|
121
139
|
await this.authTokenAdapter.remove(payloadData);
|
|
122
140
|
// event
|
|
123
141
|
await this.scope.event.signout.emit(passport);
|
|
@@ -191,6 +209,7 @@ export class BeanPassport extends BeanBase {
|
|
|
191
209
|
}
|
|
192
210
|
// setCurrent
|
|
193
211
|
await this.setCurrent(passport);
|
|
212
|
+
this.ctx.state.passportPayloadData = payloadData;
|
|
194
213
|
return { payloadData, passport };
|
|
195
214
|
}
|
|
196
215
|
|
|
@@ -211,7 +230,9 @@ export class BeanPassport extends BeanBase {
|
|
|
211
230
|
);
|
|
212
231
|
payloadData = await this._handlePayloadData(payloadData, authTokenOptions);
|
|
213
232
|
// jwt token
|
|
214
|
-
|
|
233
|
+
const jwt = await this.bean.jwt.create(payloadData);
|
|
234
|
+
this.ctx.state.passportPayloadData = payloadData;
|
|
235
|
+
return jwt;
|
|
215
236
|
}
|
|
216
237
|
|
|
217
238
|
// only created by accessToken
|
|
@@ -247,7 +268,10 @@ export class BeanPassport extends BeanBase {
|
|
|
247
268
|
|
|
248
269
|
public async createOauthCodeFromOauthAuthToken(accessToken: string, options?: IJwtSignOptions) {
|
|
249
270
|
// payloadData
|
|
250
|
-
const payloadData =
|
|
271
|
+
const payloadData =
|
|
272
|
+
this.authTokenMode === 'session'
|
|
273
|
+
? (await this.checkAuthToken(accessToken))?.payloadData
|
|
274
|
+
: await this.bean.jwt.get('access').verify(accessToken);
|
|
251
275
|
if (!payloadData) return this.app.throw(401);
|
|
252
276
|
// code
|
|
253
277
|
return await this.bean.jwt.createOauthCode(payloadData, options);
|
|
@@ -282,7 +306,24 @@ export class BeanPassport extends BeanBase {
|
|
|
282
306
|
return true;
|
|
283
307
|
}
|
|
284
308
|
|
|
285
|
-
private
|
|
309
|
+
private _getCurrentPayloadData(): IPayloadData {
|
|
310
|
+
const payloadData = this.ctx.state.passportPayloadData;
|
|
311
|
+
if (!payloadData?.[this.scope.config.payloadData.fields.token]) return this.app.throw(401);
|
|
312
|
+
return payloadData;
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
private async _passportSerialize(
|
|
316
|
+
passport: IPassport,
|
|
317
|
+
authTokenOptions?: IAuthTokenOptions,
|
|
318
|
+
signin = false,
|
|
319
|
+
) {
|
|
320
|
+
if (this.authTokenMode === 'session') {
|
|
321
|
+
if (signin) {
|
|
322
|
+
const payloadData = await this.passportAdapter.serialize(passport);
|
|
323
|
+
return await this.authTokenAdapter.create(payloadData, authTokenOptions?.ttl);
|
|
324
|
+
}
|
|
325
|
+
return await this._handlePayloadData(this._getCurrentPayloadData(), authTokenOptions);
|
|
326
|
+
}
|
|
286
327
|
// serialize
|
|
287
328
|
const payloadData = await this.passportAdapter.serialize(passport);
|
|
288
329
|
return await this._handlePayloadData(payloadData, authTokenOptions);
|
|
@@ -296,6 +337,18 @@ export class BeanPassport extends BeanBase {
|
|
|
296
337
|
const stateless = authTokenOptions?.stateless;
|
|
297
338
|
const strategy = authTokenOptions?.strategy ?? 'refresh';
|
|
298
339
|
const ttl = authTokenOptions?.ttl;
|
|
340
|
+
if (this.authTokenMode === 'session') {
|
|
341
|
+
if (stateless) throw new Error('Session auth-token mode requires stateful authentication');
|
|
342
|
+
if (strategy === 'reissue') {
|
|
343
|
+
throw new Error('Session auth-token mode does not support the reissue refresh strategy');
|
|
344
|
+
}
|
|
345
|
+
const verified = await this.authTokenAdapter.verify(payloadData);
|
|
346
|
+
if (!verified) return this.app.throw(401);
|
|
347
|
+
if (strategy === 'refresh') {
|
|
348
|
+
await this.authTokenAdapter.refresh(payloadData, ttl);
|
|
349
|
+
}
|
|
350
|
+
return payloadData;
|
|
351
|
+
}
|
|
299
352
|
if (stateless) {
|
|
300
353
|
// do nothing
|
|
301
354
|
return payloadData;
|
|
@@ -320,17 +373,26 @@ export class BeanPassport extends BeanBase {
|
|
|
320
373
|
authTokenOptionsCustom: IAuthTokenOptions | undefined,
|
|
321
374
|
authTokenOptionsDefault: IAuthTokenOptions,
|
|
322
375
|
) {
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
{
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
{
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
376
|
+
let authTokenOptions = authTokenOptionsDefault;
|
|
377
|
+
if (this.authTokenMode === 'session') {
|
|
378
|
+
authTokenOptions = { ...authTokenOptions, ...authTokenOptionsCustom };
|
|
379
|
+
}
|
|
380
|
+
if (authProviderId) {
|
|
381
|
+
const { clientOptions } = await this.bean.authProvider.getClientOptions(
|
|
382
|
+
{
|
|
383
|
+
id: authProviderId,
|
|
384
|
+
},
|
|
385
|
+
{ authTokenOptions: authTokenOptionsCustom ?? {} },
|
|
386
|
+
{
|
|
387
|
+
authTokenOptions: authTokenOptionsDefault,
|
|
388
|
+
},
|
|
389
|
+
);
|
|
390
|
+
if (!clientOptions) this.app.throw(403);
|
|
391
|
+
authTokenOptions = clientOptions.authTokenOptions!;
|
|
392
|
+
}
|
|
393
|
+
if (this.authTokenMode === 'session' && authTokenOptions.stateless) {
|
|
394
|
+
throw new Error('Session auth-token mode requires stateful authentication');
|
|
395
|
+
}
|
|
396
|
+
return authTokenOptions;
|
|
335
397
|
}
|
|
336
398
|
}
|
package/src/config/config.ts
CHANGED
|
@@ -2,12 +2,15 @@ import type { VonaApplication } from 'vona';
|
|
|
2
2
|
|
|
3
3
|
import type { ConfigUser } from '../types/auth.ts';
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
import { $parseAuthTokenMode } from '../lib/auth.ts';
|
|
6
|
+
|
|
7
|
+
export function config(app: VonaApplication) {
|
|
6
8
|
const configUser: ConfigUser = {
|
|
7
9
|
user: {
|
|
8
10
|
autoActivate: false,
|
|
9
11
|
},
|
|
10
12
|
authToken: {
|
|
13
|
+
mode: $parseAuthTokenMode(app.meta.env.AUTH_TOKEN_MODE),
|
|
11
14
|
stateless: false,
|
|
12
15
|
strategy: {
|
|
13
16
|
refreshAuthToken: 'refresh',
|
package/src/lib/auth.ts
CHANGED
|
@@ -1,6 +1,25 @@
|
|
|
1
1
|
import type { TableIdentity } from 'table-identity';
|
|
2
2
|
|
|
3
|
-
import type { IAuthIdRecord } from '../types/auth.ts';
|
|
3
|
+
import type { IAuthIdRecord, IAuthTokenConfig, TypeAuthTokenMode } from '../types/auth.ts';
|
|
4
|
+
|
|
5
|
+
export function $parseAuthTokenMode(value: unknown): TypeAuthTokenMode {
|
|
6
|
+
if (value === undefined) return 'auth';
|
|
7
|
+
if (value === 'auth' || value === 'session') return value;
|
|
8
|
+
throw new Error('AUTH_TOKEN_MODE / authToken.mode must be auth or session');
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export function $getAuthTokenMode(config: IAuthTokenConfig): TypeAuthTokenMode {
|
|
12
|
+
const mode = $parseAuthTokenMode(config.mode);
|
|
13
|
+
if (mode === 'session') {
|
|
14
|
+
if (config.stateless) {
|
|
15
|
+
throw new Error('Session auth-token mode requires stateful authentication');
|
|
16
|
+
}
|
|
17
|
+
if (config.strategy.refreshAuthToken === 'reissue') {
|
|
18
|
+
throw new Error('Session auth-token mode does not support the reissue refresh strategy');
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
return mode;
|
|
22
|
+
}
|
|
4
23
|
|
|
5
24
|
export function $getAuthIdSystem<K extends keyof IAuthIdRecord>(
|
|
6
25
|
_authName: IAuthIdRecord[K],
|
package/src/main.ts
CHANGED
|
@@ -2,9 +2,12 @@ import type { IModuleMain, VonaContext } from 'vona';
|
|
|
2
2
|
|
|
3
3
|
import { BeanSimple } from 'vona';
|
|
4
4
|
|
|
5
|
+
import { $getAuthTokenMode } from './lib/auth.ts';
|
|
6
|
+
|
|
5
7
|
export class Main extends BeanSimple implements IModuleMain {
|
|
6
8
|
async moduleLoading() {}
|
|
7
9
|
async moduleLoaded() {
|
|
10
|
+
$getAuthTokenMode(this.app.config.modules['a-user'].authToken);
|
|
8
11
|
// user
|
|
9
12
|
Object.defineProperty(this.app.context, 'user', {
|
|
10
13
|
enumerable: false,
|
|
@@ -10,7 +10,10 @@ import type { IUser } from '../types/user.ts';
|
|
|
10
10
|
export class ServiceAuthTokenAdapter extends BeanBase implements IAuthTokenAdapter {
|
|
11
11
|
async create(payloadData: IPayloadData, ttl?: number): Promise<IPayloadData> {
|
|
12
12
|
const authIdStr = this._getAuthId(payloadData)?.toString();
|
|
13
|
-
const token =
|
|
13
|
+
const token =
|
|
14
|
+
this.bean.passport.authTokenMode === 'auth' && authIdStr === '-1'
|
|
15
|
+
? createHash(authIdStr)
|
|
16
|
+
: uuidv4();
|
|
14
17
|
const payloadDataNew = Object.assign({}, payloadData, {
|
|
15
18
|
[this.scope.config.payloadData.fields.token]: token,
|
|
16
19
|
});
|
|
@@ -47,11 +47,15 @@ export class ServiceRedisToken extends BeanBase {
|
|
|
47
47
|
|
|
48
48
|
private _getAuthRedisKey(payloadData: IPayloadData) {
|
|
49
49
|
if (!this.ctx.instance) return;
|
|
50
|
-
|
|
50
|
+
const key = `${this._getUserId(payloadData)}:${this._getAuthId(payloadData)}`;
|
|
51
|
+
if (this.bean.passport.authTokenMode === 'auth') return key;
|
|
52
|
+
const token = this._getToken(payloadData);
|
|
53
|
+
if (!token) return;
|
|
54
|
+
return `${key}:${token}`;
|
|
51
55
|
}
|
|
52
56
|
|
|
53
57
|
private _getAuthRedisKeyPrefix(user: IUser) {
|
|
54
|
-
return `${user.id}
|
|
58
|
+
return `${user.id}:`;
|
|
55
59
|
}
|
|
56
60
|
|
|
57
61
|
private _getToken(payloadData: IPayloadData) {
|
package/src/types/auth.ts
CHANGED
|
@@ -21,8 +21,10 @@ export interface IAuth {
|
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
export type TypeAuthTokenStrategy = 'reissue' | 'refresh' | 'reuse';
|
|
24
|
+
export type TypeAuthTokenMode = 'auth' | 'session';
|
|
24
25
|
|
|
25
26
|
export interface IAuthTokenConfig {
|
|
27
|
+
mode: TypeAuthTokenMode;
|
|
26
28
|
stateless: boolean;
|
|
27
29
|
strategy: {
|
|
28
30
|
refreshAuthToken: TypeAuthTokenStrategy;
|
|
@@ -60,3 +62,9 @@ export interface IAuthTokenOptions {
|
|
|
60
62
|
export interface ISigninOptions {
|
|
61
63
|
authToken?: IAuthTokenOptions;
|
|
62
64
|
}
|
|
65
|
+
|
|
66
|
+
declare module 'vona' {
|
|
67
|
+
export interface VonaConfigEnv {
|
|
68
|
+
AUTH_TOKEN_MODE: string | undefined;
|
|
69
|
+
}
|
|
70
|
+
}
|