@nauth-toolkit/nestjs 0.1.18 → 0.1.21
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.module.d.ts.map +1 -1
- package/dist/auth.module.js +19 -11
- package/dist/auth.module.js.map +1 -1
- package/dist/factories/storage-adapter.factory.d.ts.map +1 -1
- package/dist/factories/storage-adapter.factory.js +204 -63
- package/dist/factories/storage-adapter.factory.js.map +1 -1
- package/dist/interceptors/cookie-token.interceptor.d.ts +3 -7
- package/dist/interceptors/cookie-token.interceptor.d.ts.map +1 -1
- package/dist/interceptors/cookie-token.interceptor.js +15 -139
- package/dist/interceptors/cookie-token.interceptor.js.map +1 -1
- package/dist/services/token-delivery-http.service.d.ts +68 -0
- package/dist/services/token-delivery-http.service.d.ts.map +1 -0
- package/dist/services/token-delivery-http.service.js +194 -0
- package/dist/services/token-delivery-http.service.js.map +1 -0
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.module.d.ts","sourceRoot":"","sources":["../src/auth.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,aAAa,EAAU,MAAM,gBAAgB,CAAC;AAK/D,OAAO,EAYL,WAAW,
|
|
1
|
+
{"version":3,"file":"auth.module.d.ts","sourceRoot":"","sources":["../src/auth.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,aAAa,EAAU,MAAM,gBAAgB,CAAC;AAK/D,OAAO,EAYL,WAAW,EAqBZ,MAAM,qBAAqB,CAAC;AAkD7B;;;;;GAKG;AACH,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;CACvB;AAED;;;;;GAKG;AACH,qBAEa,UAAU;IACrB;;;;OAIG;IACH,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,iBAAiB,GAAG,aAAa;IAkqCxD;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;CAuB9B"}
|
package/dist/auth.module.js
CHANGED
|
@@ -54,6 +54,7 @@ const cookie_token_interceptor_1 = require("./interceptors/cookie-token.intercep
|
|
|
54
54
|
const auth_guard_1 = require("./guards/auth.guard");
|
|
55
55
|
const csrf_guard_1 = require("./guards/csrf.guard");
|
|
56
56
|
const csrf_service_1 = require("./services/csrf.service");
|
|
57
|
+
const token_delivery_http_service_1 = require("./services/token-delivery-http.service");
|
|
57
58
|
const migrations_bootstrap_service_1 = require("./services/migrations-bootstrap.service");
|
|
58
59
|
/**
|
|
59
60
|
* Main Authentication Module (v2.0 - Modular)
|
|
@@ -96,18 +97,20 @@ let AuthModule = AuthModule_1 = class AuthModule {
|
|
|
96
97
|
provide: core_1.APP_INTERCEPTOR,
|
|
97
98
|
useClass: client_info_interceptor_1.ClientInfoInterceptor,
|
|
98
99
|
},
|
|
100
|
+
// Shared token delivery helper (used by interceptor + controllers)
|
|
101
|
+
token_delivery_http_service_1.TokenDeliveryHttpService,
|
|
102
|
+
// Social redirect handler (framework-neutral). Consumer apps define controllers and delegate here.
|
|
103
|
+
{
|
|
104
|
+
provide: core_2.SocialRedirectHandler,
|
|
105
|
+
useFactory: (config, socialAuthService, stateStore, storage, logger) => {
|
|
106
|
+
return new core_2.SocialRedirectHandler(config, socialAuthService, stateStore, storage, logger);
|
|
107
|
+
},
|
|
108
|
+
inject: ['NAUTH_CONFIG', core_2.SocialAuthService, 'SOCIAL_AUTH_STATE_STORE', 'STORAGE_ADAPTER', 'NAUTH_LOGGER'],
|
|
109
|
+
},
|
|
99
110
|
// Global interceptor for cookie token delivery (no-op in JSON mode)
|
|
100
111
|
{
|
|
101
112
|
provide: core_1.APP_INTERCEPTOR,
|
|
102
|
-
|
|
103
|
-
return new cookie_token_interceptor_1.CookieTokenInterceptor(config, jwtService, reflector, csrfService);
|
|
104
|
-
},
|
|
105
|
-
inject: [
|
|
106
|
-
'NAUTH_CONFIG',
|
|
107
|
-
internal_1.JwtService,
|
|
108
|
-
core_1.Reflector,
|
|
109
|
-
{ token: csrf_service_1.CsrfService, optional: true }, // Optional - only available when CSRF is enabled
|
|
110
|
-
],
|
|
113
|
+
useClass: cookie_token_interceptor_1.CookieTokenInterceptor,
|
|
111
114
|
},
|
|
112
115
|
// CSRF Service (always provided, but only used when tokenDelivery.method === 'cookies' or 'hybrid')
|
|
113
116
|
{
|
|
@@ -507,10 +510,13 @@ let AuthModule = AuthModule_1 = class AuthModule {
|
|
|
507
510
|
},
|
|
508
511
|
inject: ['NAUTH_CONFIG', 'NAUTH_LOGGER', { token: 'TrustedDeviceRepository', optional: true }],
|
|
509
512
|
},
|
|
510
|
-
// Social Auth State Store -
|
|
513
|
+
// Social Auth State Store - StorageAdapter-backed, cluster-safe CSRF state + redirect context store
|
|
511
514
|
{
|
|
512
515
|
provide: 'SOCIAL_AUTH_STATE_STORE',
|
|
513
|
-
|
|
516
|
+
useFactory: (storageAdapter, logger) => {
|
|
517
|
+
return new internal_1.SocialAuthStateStore(storageAdapter, logger);
|
|
518
|
+
},
|
|
519
|
+
inject: ['STORAGE_ADAPTER', 'NAUTH_LOGGER'],
|
|
514
520
|
},
|
|
515
521
|
// Social Provider Registry - internal registry for social providers
|
|
516
522
|
// Provider modules (GoogleSocialAuthModule, AppleSocialAuthModule, etc.)
|
|
@@ -883,6 +889,8 @@ let AuthModule = AuthModule_1 = class AuthModule {
|
|
|
883
889
|
...(config.smsProvider ? ['SMS_PROVIDER', core_2.PhoneVerificationService] : []),
|
|
884
890
|
core_2.SocialAuthService, // Always export - providers register themselves when modules are imported
|
|
885
891
|
core_2.MFAService, // Always export - MFA providers register themselves when modules are imported
|
|
892
|
+
// Social redirect helper (framework-neutral handler consumers delegate to)
|
|
893
|
+
core_2.SocialRedirectHandler,
|
|
886
894
|
// TrustedDeviceService is provided but not exported (used internally by AuthService)
|
|
887
895
|
'NAUTH_LOGGER',
|
|
888
896
|
'NAUTH_CONFIG', // Export config so other modules can access it
|
package/dist/auth.module.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.module.js","sourceRoot":"","sources":["../src/auth.module.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auth.module.js","sourceRoot":"","sources":["../src/auth.module.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage-adapter.factory.d.ts","sourceRoot":"","sources":["../../src/factories/storage-adapter.factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"storage-adapter.factory.d.ts","sourceRoot":"","sources":["../../src/factories/storage-adapter.factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAuLrD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,4BAA4B,IAAI,cAAc,CAmB7D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,GAAE,MAAiC,GAAG,cAAc,CAmChG;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,KAAK,CAAC;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,cAAc,CAmCvF"}
|
|
@@ -18,10 +18,193 @@
|
|
|
18
18
|
* };
|
|
19
19
|
* ```
|
|
20
20
|
*/
|
|
21
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
22
|
+
if (k2 === undefined) k2 = k;
|
|
23
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
24
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
25
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
26
|
+
}
|
|
27
|
+
Object.defineProperty(o, k2, desc);
|
|
28
|
+
}) : (function(o, m, k, k2) {
|
|
29
|
+
if (k2 === undefined) k2 = k;
|
|
30
|
+
o[k2] = m[k];
|
|
31
|
+
}));
|
|
32
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
33
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
34
|
+
}) : function(o, v) {
|
|
35
|
+
o["default"] = v;
|
|
36
|
+
});
|
|
37
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
38
|
+
var ownKeys = function(o) {
|
|
39
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
40
|
+
var ar = [];
|
|
41
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
42
|
+
return ar;
|
|
43
|
+
};
|
|
44
|
+
return ownKeys(o);
|
|
45
|
+
};
|
|
46
|
+
return function (mod) {
|
|
47
|
+
if (mod && mod.__esModule) return mod;
|
|
48
|
+
var result = {};
|
|
49
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
50
|
+
__setModuleDefault(result, mod);
|
|
51
|
+
return result;
|
|
52
|
+
};
|
|
53
|
+
})();
|
|
21
54
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
55
|
exports.createDatabaseStorageAdapter = createDatabaseStorageAdapter;
|
|
23
56
|
exports.createRedisStorageAdapter = createRedisStorageAdapter;
|
|
24
57
|
exports.createRedisClusterAdapter = createRedisClusterAdapter;
|
|
58
|
+
/**
|
|
59
|
+
* Import an optional dependency at runtime without creating a compile-time dependency.
|
|
60
|
+
*
|
|
61
|
+
* IMPORTANT: moduleName is intentionally typed as `string` to avoid TypeScript errors
|
|
62
|
+
* when the optional package isn't installed.
|
|
63
|
+
*/
|
|
64
|
+
async function importOptional(moduleName) {
|
|
65
|
+
try {
|
|
66
|
+
return (await Promise.resolve(`${moduleName}`).then(s => __importStar(require(s))));
|
|
67
|
+
}
|
|
68
|
+
catch {
|
|
69
|
+
return null;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Lazy storage adapter wrapper.
|
|
74
|
+
*
|
|
75
|
+
* Avoids `require()` while keeping the factory API synchronous for config objects.
|
|
76
|
+
* The real adapter is imported and constructed on the first `initialize()` call.
|
|
77
|
+
*/
|
|
78
|
+
class LazyStorageAdapter {
|
|
79
|
+
factory;
|
|
80
|
+
inner = null;
|
|
81
|
+
initPromise = null;
|
|
82
|
+
logger = null;
|
|
83
|
+
repos = null;
|
|
84
|
+
constructor(factory) {
|
|
85
|
+
this.factory = factory;
|
|
86
|
+
}
|
|
87
|
+
// Optional hook used by AuthModule
|
|
88
|
+
setLogger(logger) {
|
|
89
|
+
this.logger = logger;
|
|
90
|
+
const maybe = this.inner;
|
|
91
|
+
if (this.inner && typeof maybe.setLogger === 'function') {
|
|
92
|
+
maybe.setLogger(logger);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
// Optional hook used by AuthModule
|
|
96
|
+
setRepositories(rateLimitRepo, storageLockRepo) {
|
|
97
|
+
this.repos = { rateLimitRepo, storageLockRepo };
|
|
98
|
+
const maybe = this.inner;
|
|
99
|
+
if (this.inner && typeof maybe.setRepositories === 'function') {
|
|
100
|
+
maybe.setRepositories(rateLimitRepo, storageLockRepo);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
async initialize() {
|
|
104
|
+
await this.ensureInitialized();
|
|
105
|
+
}
|
|
106
|
+
async isHealthy() {
|
|
107
|
+
await this.ensureInitialized();
|
|
108
|
+
return await this.inner.isHealthy();
|
|
109
|
+
}
|
|
110
|
+
async get(key) {
|
|
111
|
+
await this.ensureInitialized();
|
|
112
|
+
return await this.inner.get(key);
|
|
113
|
+
}
|
|
114
|
+
async set(key, value, ttlSeconds, options) {
|
|
115
|
+
await this.ensureInitialized();
|
|
116
|
+
return await this.inner.set(key, value, ttlSeconds, options);
|
|
117
|
+
}
|
|
118
|
+
async del(key) {
|
|
119
|
+
await this.ensureInitialized();
|
|
120
|
+
return await this.inner.del(key);
|
|
121
|
+
}
|
|
122
|
+
async exists(key) {
|
|
123
|
+
await this.ensureInitialized();
|
|
124
|
+
return await this.inner.exists(key);
|
|
125
|
+
}
|
|
126
|
+
async incr(key, ttlSeconds) {
|
|
127
|
+
await this.ensureInitialized();
|
|
128
|
+
return await this.inner.incr(key, ttlSeconds);
|
|
129
|
+
}
|
|
130
|
+
async decr(key) {
|
|
131
|
+
await this.ensureInitialized();
|
|
132
|
+
return await this.inner.decr(key);
|
|
133
|
+
}
|
|
134
|
+
async expire(key, ttl) {
|
|
135
|
+
await this.ensureInitialized();
|
|
136
|
+
return await this.inner.expire(key, ttl);
|
|
137
|
+
}
|
|
138
|
+
async ttl(key) {
|
|
139
|
+
await this.ensureInitialized();
|
|
140
|
+
return await this.inner.ttl(key);
|
|
141
|
+
}
|
|
142
|
+
async hget(key, field) {
|
|
143
|
+
await this.ensureInitialized();
|
|
144
|
+
return await this.inner.hget(key, field);
|
|
145
|
+
}
|
|
146
|
+
async hset(key, field, value) {
|
|
147
|
+
await this.ensureInitialized();
|
|
148
|
+
return await this.inner.hset(key, field, value);
|
|
149
|
+
}
|
|
150
|
+
async hgetall(key) {
|
|
151
|
+
await this.ensureInitialized();
|
|
152
|
+
return await this.inner.hgetall(key);
|
|
153
|
+
}
|
|
154
|
+
async hdel(key, ...fields) {
|
|
155
|
+
await this.ensureInitialized();
|
|
156
|
+
return await this.inner.hdel(key, ...fields);
|
|
157
|
+
}
|
|
158
|
+
async lpush(key, value) {
|
|
159
|
+
await this.ensureInitialized();
|
|
160
|
+
return await this.inner.lpush(key, value);
|
|
161
|
+
}
|
|
162
|
+
async lrange(key, start, stop) {
|
|
163
|
+
await this.ensureInitialized();
|
|
164
|
+
return await this.inner.lrange(key, start, stop);
|
|
165
|
+
}
|
|
166
|
+
async llen(key) {
|
|
167
|
+
await this.ensureInitialized();
|
|
168
|
+
return await this.inner.llen(key);
|
|
169
|
+
}
|
|
170
|
+
async keys(pattern) {
|
|
171
|
+
await this.ensureInitialized();
|
|
172
|
+
return await this.inner.keys(pattern);
|
|
173
|
+
}
|
|
174
|
+
async scan(cursor, pattern, count) {
|
|
175
|
+
await this.ensureInitialized();
|
|
176
|
+
return await this.inner.scan(cursor, pattern, count);
|
|
177
|
+
}
|
|
178
|
+
async cleanup() {
|
|
179
|
+
if (!this.inner)
|
|
180
|
+
return;
|
|
181
|
+
return await this.inner.cleanup();
|
|
182
|
+
}
|
|
183
|
+
async disconnect() {
|
|
184
|
+
if (!this.inner)
|
|
185
|
+
return;
|
|
186
|
+
return await this.inner.disconnect();
|
|
187
|
+
}
|
|
188
|
+
async ensureInitialized() {
|
|
189
|
+
if (this.inner)
|
|
190
|
+
return;
|
|
191
|
+
if (!this.initPromise) {
|
|
192
|
+
this.initPromise = (async () => {
|
|
193
|
+
this.inner = await this.factory();
|
|
194
|
+
const maybeLoggerAware = this.inner;
|
|
195
|
+
if (this.logger && typeof maybeLoggerAware.setLogger === 'function') {
|
|
196
|
+
maybeLoggerAware.setLogger(this.logger);
|
|
197
|
+
}
|
|
198
|
+
const maybeRepoAware = this.inner;
|
|
199
|
+
if (this.repos && typeof maybeRepoAware.setRepositories === 'function') {
|
|
200
|
+
maybeRepoAware.setRepositories(this.repos.rateLimitRepo, this.repos.storageLockRepo);
|
|
201
|
+
}
|
|
202
|
+
await this.inner.initialize();
|
|
203
|
+
})();
|
|
204
|
+
}
|
|
205
|
+
await this.initPromise;
|
|
206
|
+
}
|
|
207
|
+
}
|
|
25
208
|
/**
|
|
26
209
|
* Check whether an unknown error is a Node "MODULE_NOT_FOUND" for a specific module.
|
|
27
210
|
*
|
|
@@ -32,7 +215,7 @@ exports.createRedisClusterAdapter = createRedisClusterAdapter;
|
|
|
32
215
|
* @param moduleName - The module name we expect to be missing (e.g. '@nauth-toolkit/storage-database')
|
|
33
216
|
* @returns True if this error represents "moduleName is not installed"
|
|
34
217
|
*/
|
|
35
|
-
function
|
|
218
|
+
function _isModuleNotFoundFor(error, moduleName) {
|
|
36
219
|
if (!(error instanceof Error)) {
|
|
37
220
|
return false;
|
|
38
221
|
}
|
|
@@ -69,15 +252,9 @@ function isModuleNotFoundFor(error, moduleName) {
|
|
|
69
252
|
* ```
|
|
70
253
|
*/
|
|
71
254
|
function createDatabaseStorageAdapter() {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
try {
|
|
76
|
-
const mod = require('@nauth-toolkit/storage-database');
|
|
77
|
-
DatabaseStorageAdapterCtor = mod.DatabaseStorageAdapter;
|
|
78
|
-
}
|
|
79
|
-
catch (error) {
|
|
80
|
-
if (isModuleNotFoundFor(error, '@nauth-toolkit/storage-database')) {
|
|
255
|
+
return new LazyStorageAdapter(async () => {
|
|
256
|
+
const mod = await importOptional('@nauth-toolkit/storage-database');
|
|
257
|
+
if (!mod) {
|
|
81
258
|
throw new Error([
|
|
82
259
|
'Missing dependency: @nauth-toolkit/storage-database',
|
|
83
260
|
'',
|
|
@@ -87,10 +264,8 @@ function createDatabaseStorageAdapter() {
|
|
|
87
264
|
' yarn add @nauth-toolkit/storage-database',
|
|
88
265
|
].join('\n'));
|
|
89
266
|
}
|
|
90
|
-
|
|
91
|
-
}
|
|
92
|
-
// Repositories are injected by AuthModule via setRepositories (when available).
|
|
93
|
-
return new DatabaseStorageAdapterCtor(null, null, null);
|
|
267
|
+
return new mod.DatabaseStorageAdapter(null, null, null);
|
|
268
|
+
});
|
|
94
269
|
}
|
|
95
270
|
/**
|
|
96
271
|
* Create a Redis storage adapter
|
|
@@ -126,15 +301,9 @@ function createDatabaseStorageAdapter() {
|
|
|
126
301
|
* ```
|
|
127
302
|
*/
|
|
128
303
|
function createRedisStorageAdapter(url = 'redis://localhost:6379') {
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
try {
|
|
133
|
-
const mod = require('@nauth-toolkit/storage-redis');
|
|
134
|
-
RedisStorageAdapterCtor = mod.RedisStorageAdapter;
|
|
135
|
-
}
|
|
136
|
-
catch (error) {
|
|
137
|
-
if (isModuleNotFoundFor(error, '@nauth-toolkit/storage-redis')) {
|
|
304
|
+
return new LazyStorageAdapter(async () => {
|
|
305
|
+
const adapterMod = await importOptional('@nauth-toolkit/storage-redis');
|
|
306
|
+
if (!adapterMod) {
|
|
138
307
|
throw new Error([
|
|
139
308
|
'Missing dependency: @nauth-toolkit/storage-redis',
|
|
140
309
|
'',
|
|
@@ -144,15 +313,8 @@ function createRedisStorageAdapter(url = 'redis://localhost:6379') {
|
|
|
144
313
|
' yarn add @nauth-toolkit/storage-redis redis',
|
|
145
314
|
].join('\n'));
|
|
146
315
|
}
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
let createClientFn;
|
|
150
|
-
try {
|
|
151
|
-
const redisMod = require('redis');
|
|
152
|
-
createClientFn = redisMod.createClient;
|
|
153
|
-
}
|
|
154
|
-
catch (error) {
|
|
155
|
-
if (isModuleNotFoundFor(error, 'redis')) {
|
|
316
|
+
const redisMod = await importOptional('redis');
|
|
317
|
+
if (!redisMod) {
|
|
156
318
|
throw new Error([
|
|
157
319
|
'Missing dependency: redis',
|
|
158
320
|
'',
|
|
@@ -162,12 +324,9 @@ function createRedisStorageAdapter(url = 'redis://localhost:6379') {
|
|
|
162
324
|
' yarn add redis',
|
|
163
325
|
].join('\n'));
|
|
164
326
|
}
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
// Don't connect here - let adapter.initialize() handle connection
|
|
169
|
-
// This ensures proper error handling and allows initialize() to wait for connection
|
|
170
|
-
return new RedisStorageAdapterCtor(redisClient);
|
|
327
|
+
const client = redisMod.createClient({ url });
|
|
328
|
+
return new adapterMod.RedisStorageAdapter(client);
|
|
329
|
+
});
|
|
171
330
|
}
|
|
172
331
|
/**
|
|
173
332
|
* Create a Redis Cluster storage adapter
|
|
@@ -200,15 +359,9 @@ function createRedisStorageAdapter(url = 'redis://localhost:6379') {
|
|
|
200
359
|
* ```
|
|
201
360
|
*/
|
|
202
361
|
function createRedisClusterAdapter(nodes) {
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
try {
|
|
207
|
-
const mod = require('@nauth-toolkit/storage-redis');
|
|
208
|
-
RedisStorageAdapterCtor = mod.RedisStorageAdapter;
|
|
209
|
-
}
|
|
210
|
-
catch (error) {
|
|
211
|
-
if (isModuleNotFoundFor(error, '@nauth-toolkit/storage-redis')) {
|
|
362
|
+
return new LazyStorageAdapter(async () => {
|
|
363
|
+
const adapterMod = await importOptional('@nauth-toolkit/storage-redis');
|
|
364
|
+
if (!adapterMod) {
|
|
212
365
|
throw new Error([
|
|
213
366
|
'Missing dependency: @nauth-toolkit/storage-redis',
|
|
214
367
|
'',
|
|
@@ -218,15 +371,8 @@ function createRedisClusterAdapter(nodes) {
|
|
|
218
371
|
' yarn add @nauth-toolkit/storage-redis redis',
|
|
219
372
|
].join('\n'));
|
|
220
373
|
}
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
let createClusterFn;
|
|
224
|
-
try {
|
|
225
|
-
const redisMod = require('redis');
|
|
226
|
-
createClusterFn = redisMod.createCluster;
|
|
227
|
-
}
|
|
228
|
-
catch (error) {
|
|
229
|
-
if (isModuleNotFoundFor(error, 'redis')) {
|
|
374
|
+
const redisMod = await importOptional('redis');
|
|
375
|
+
if (!redisMod) {
|
|
230
376
|
throw new Error([
|
|
231
377
|
'Missing dependency: redis',
|
|
232
378
|
'',
|
|
@@ -236,13 +382,8 @@ function createRedisClusterAdapter(nodes) {
|
|
|
236
382
|
' yarn add redis',
|
|
237
383
|
].join('\n'));
|
|
238
384
|
}
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
const clusterClient = createClusterFn({
|
|
242
|
-
rootNodes: nodes,
|
|
385
|
+
const client = redisMod.createCluster({ rootNodes: nodes });
|
|
386
|
+
return new adapterMod.RedisStorageAdapter(client);
|
|
243
387
|
});
|
|
244
|
-
// Don't connect here - let adapter.initialize() handle connection
|
|
245
|
-
// This ensures proper error handling and allows initialize() to wait for connection
|
|
246
|
-
return new RedisStorageAdapterCtor(clusterClient);
|
|
247
388
|
}
|
|
248
389
|
//# sourceMappingURL=storage-adapter.factory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage-adapter.factory.js","sourceRoot":"","sources":["../../src/factories/storage-adapter.factory.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG
|
|
1
|
+
{"version":3,"file":"storage-adapter.factory.js","sourceRoot":"","sources":["../../src/factories/storage-adapter.factory.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkNH,oEAmBC;AAmCD,8DAmCC;AAgCD,8DAmCC;AA1WD;;;;;GAKG;AACH,KAAK,UAAU,cAAc,CAAU,UAAkB;IACvD,IAAI,CAAC;QACH,OAAO,CAAC,yBAAa,UAAU,uCAAC,CAAuB,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,kBAAkB;IAMO;IALrB,KAAK,GAA0B,IAAI,CAAC;IACpC,WAAW,GAAyB,IAAI,CAAC;IACzC,MAAM,GAAY,IAAI,CAAC;IACvB,KAAK,GAAgE,IAAI,CAAC;IAElF,YAA6B,OAAsC;QAAtC,YAAO,GAAP,OAAO,CAA+B;IAAG,CAAC;IAEvE,mCAAmC;IACnC,SAAS,CAAC,MAAe;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAwD,CAAC;QAC5E,IAAI,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;YACxD,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,mCAAmC;IACnC,eAAe,CAAC,aAAsB,EAAE,eAAwB;QAC9D,IAAI,CAAC,KAAK,GAAG,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,IAAI,CAAC,KAA0E,CAAC;QAC9F,IAAI,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,eAAe,KAAK,UAAU,EAAE,CAAC;YAC9D,KAAK,CAAC,eAAe,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,SAAS;QACb,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,SAAS,EAAE,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,GAAW;QACnB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACvD,CAAC;IACD,KAAK,CAAC,GAAG,CACP,GAAW,EACX,KAAa,EACb,UAAmB,EACnB,OAA0B;QAE1B,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACnF,CAAC;IACD,KAAK,CAAC,GAAG,CAAC,GAAW;QACnB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACvD,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,GAAW;QACtB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1D,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAW,EAAE,UAAmB;QACzC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IACpE,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAW;QACpB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxD,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,GAAW,EAAE,GAAW;QACnC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC/D,CAAC;IACD,KAAK,CAAC,GAAG,CAAC,GAAW;QACnB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACvD,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAW,EAAE,KAAa;QACnC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAW,EAAE,KAAa,EAAE,KAAa;QAClD,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACtE,CAAC;IACD,KAAK,CAAC,OAAO,CAAC,GAAW;QACvB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC3D,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAW,EAAE,GAAG,MAAgB;QACzC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,CAAC;IACnE,CAAC;IACD,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,KAAa;QACpC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAChE,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,GAAW,EAAE,KAAa,EAAE,IAAY;QACnD,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACvE,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAW;QACpB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxD,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,OAAe;QACxB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5D,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,OAAe,EAAE,KAAa;QACvD,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,MAAO,IAAI,CAAC,KAAwB,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC3E,CAAC;IACD,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IACpC,CAAC;IACD,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;IACvC,CAAC;IAEO,KAAK,CAAC,iBAAiB;QAC7B,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO;QACvB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,IAAI,CAAC,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE;gBAC7B,IAAI,CAAC,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClC,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAwD,CAAC;gBACvF,IAAI,IAAI,CAAC,MAAM,IAAI,OAAO,gBAAgB,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;oBACpE,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC1C,CAAC;gBACD,MAAM,cAAc,GAAG,IAAI,CAAC,KAA0E,CAAC;gBACvG,IAAI,IAAI,CAAC,KAAK,IAAI,OAAO,cAAc,CAAC,eAAe,KAAK,UAAU,EAAE,CAAC;oBACvE,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;gBACvF,CAAC;gBACD,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;YAChC,CAAC,CAAC,EAAE,CAAC;QACP,CAAC;QACD,MAAM,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;CACF;AAED;;;;;;;;;GASG;AACH,SAAS,oBAAoB,CAAC,KAAc,EAAE,UAAkB;IAC9D,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,KAAK,GAAG,KAA8B,CAAC;IAC7C,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,qEAAqE;IACrE,OAAO,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,UAAU,GAAG,CAAC,CAAC;AACxF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,SAAgB,4BAA4B;IAC1C,OAAO,IAAI,kBAAkB,CAAC,KAAK,IAAI,EAAE;QAGvC,MAAM,GAAG,GAAG,MAAM,cAAc,CAAM,iCAA2C,CAAC,CAAC;QACnF,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CACb;gBACE,qDAAqD;gBACrD,EAAE;gBACF,uGAAuG;gBACvG,EAAE;gBACF,aAAa;gBACb,4CAA4C;aAC7C,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,GAAG,CAAC,sBAAsB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,SAAgB,yBAAyB,CAAC,MAAc,wBAAwB;IAC9E,OAAO,IAAI,kBAAkB,CAAC,KAAK,IAAI,EAAE;QAEvC,MAAM,UAAU,GAAG,MAAM,cAAc,CAAkB,8BAAwC,CAAC,CAAC;QACnG,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb;gBACE,kDAAkD;gBAClD,EAAE;gBACF,iGAAiG;gBACjG,EAAE;gBACF,aAAa;gBACb,+CAA+C;aAChD,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;QACJ,CAAC;QAGD,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAiB,OAAiB,CAAC,CAAC;QACzE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CACb;gBACE,2BAA2B;gBAC3B,EAAE;gBACF,0FAA0F;gBAC1F,EAAE;gBACF,aAAa;gBACb,kBAAkB;aACnB,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QAC9C,OAAO,IAAI,UAAU,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,SAAgB,yBAAyB,CAAC,KAA6B;IACrE,OAAO,IAAI,kBAAkB,CAAC,KAAK,IAAI,EAAE;QAEvC,MAAM,UAAU,GAAG,MAAM,cAAc,CAAkB,8BAAwC,CAAC,CAAC;QACnG,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb;gBACE,kDAAkD;gBAClD,EAAE;gBACF,iGAAiG;gBACjG,EAAE;gBACF,aAAa;gBACb,+CAA+C;aAChD,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;QACJ,CAAC;QAGD,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAiB,OAAiB,CAAC,CAAC;QACzE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CACb;gBACE,2BAA2B;gBAC3B,EAAE;gBACF,0FAA0F;gBAC1F,EAAE;gBACF,aAAa;gBACb,kBAAkB;aACnB,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5D,OAAO,IAAI,UAAU,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import { NestInterceptor, ExecutionContext, CallHandler } from '@nestjs/common';
|
|
2
2
|
import { Reflector } from '@nestjs/core';
|
|
3
3
|
import { Observable } from 'rxjs';
|
|
4
|
-
import {
|
|
5
|
-
import { JwtService } from '@nauth-toolkit/core/internal';
|
|
6
|
-
import { CsrfService } from '../services/csrf.service';
|
|
4
|
+
import { TokenDeliveryHttpService } from '../services/token-delivery-http.service';
|
|
7
5
|
/**
|
|
8
6
|
* Cookie Token Interceptor
|
|
9
7
|
*
|
|
@@ -21,11 +19,9 @@ import { CsrfService } from '../services/csrf.service';
|
|
|
21
19
|
* It does nothing in other contexts (e.g., WebSocket, GraphQL).
|
|
22
20
|
*/
|
|
23
21
|
export declare class CookieTokenInterceptor implements NestInterceptor {
|
|
24
|
-
private readonly
|
|
25
|
-
private readonly jwtService;
|
|
22
|
+
private readonly tokenDeliveryHttp;
|
|
26
23
|
private readonly reflector;
|
|
27
|
-
|
|
28
|
-
constructor(config: NAuthConfig, jwtService: JwtService, reflector: Reflector, csrfService?: CsrfService | undefined);
|
|
24
|
+
constructor(tokenDeliveryHttp: TokenDeliveryHttpService, reflector: Reflector);
|
|
29
25
|
intercept(context: ExecutionContext, next: CallHandler): Observable<unknown>;
|
|
30
26
|
}
|
|
31
27
|
//# sourceMappingURL=cookie-token.interceptor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cookie-token.interceptor.d.ts","sourceRoot":"","sources":["../../src/interceptors/cookie-token.interceptor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,eAAe,EAAE,gBAAgB,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"cookie-token.interceptor.d.ts","sourceRoot":"","sources":["../../src/interceptors/cookie-token.interceptor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,eAAe,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC5F,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAQlC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AAEnF;;;;;;;;;;;;;;;GAeG;AACH,qBACa,sBAAuB,YAAW,eAAe;IAE1D,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,SAAS;gBADT,iBAAiB,EAAE,wBAAwB,EAC3C,SAAS,EAAE,SAAS;IAGvC,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC;CAuE7E"}
|
|
@@ -8,18 +8,13 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
|
-
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
-
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
-
};
|
|
14
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
12
|
exports.CookieTokenInterceptor = void 0;
|
|
16
13
|
const common_1 = require("@nestjs/common");
|
|
17
14
|
const core_1 = require("@nestjs/core");
|
|
18
15
|
const operators_1 = require("rxjs/operators");
|
|
19
|
-
const core_2 = require("@nauth-toolkit/core");
|
|
20
|
-
const internal_1 = require("@nauth-toolkit/core/internal");
|
|
21
16
|
const token_delivery_decorator_1 = require("../decorators/token-delivery.decorator");
|
|
22
|
-
const
|
|
17
|
+
const token_delivery_http_service_1 = require("../services/token-delivery-http.service");
|
|
23
18
|
/**
|
|
24
19
|
* Cookie Token Interceptor
|
|
25
20
|
*
|
|
@@ -37,56 +32,23 @@ const csrf_service_1 = require("../services/csrf.service");
|
|
|
37
32
|
* It does nothing in other contexts (e.g., WebSocket, GraphQL).
|
|
38
33
|
*/
|
|
39
34
|
let CookieTokenInterceptor = class CookieTokenInterceptor {
|
|
40
|
-
|
|
41
|
-
jwtService;
|
|
35
|
+
tokenDeliveryHttp;
|
|
42
36
|
reflector;
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
this.config = config;
|
|
46
|
-
this.jwtService = jwtService;
|
|
37
|
+
constructor(tokenDeliveryHttp, reflector) {
|
|
38
|
+
this.tokenDeliveryHttp = tokenDeliveryHttp;
|
|
47
39
|
this.reflector = reflector;
|
|
48
|
-
this.csrfService = csrfService;
|
|
49
40
|
}
|
|
50
41
|
intercept(context, next) {
|
|
51
42
|
// Only operate in HTTP context
|
|
52
43
|
if (context.getType() !== 'http') {
|
|
53
44
|
return next.handle();
|
|
54
45
|
}
|
|
55
|
-
const deliveryConfig = this.config.tokenDelivery;
|
|
56
46
|
const http = context.switchToHttp();
|
|
57
47
|
const req = http.getRequest();
|
|
58
48
|
const res = http.getResponse();
|
|
59
49
|
// Determine effective delivery for this request
|
|
60
50
|
const routeMode = this.reflector.get(token_delivery_decorator_1.TOKEN_DELIVERY_KEY, context.getHandler());
|
|
61
|
-
const
|
|
62
|
-
// Validate route-level delivery mode against global configuration
|
|
63
|
-
if (routeMode === 'cookies') {
|
|
64
|
-
// Route requests cookies - config must allow cookies (cookies or hybrid)
|
|
65
|
-
if (method === 'json') {
|
|
66
|
-
throw new core_2.NAuthException(core_2.AuthErrorCode.COOKIES_NOT_ALLOWED, "Route-level cookie delivery requested, but tokenDelivery.method is 'json' (cookies disabled)");
|
|
67
|
-
}
|
|
68
|
-
// method === 'cookies' or 'hybrid' - both allow cookies, so OK
|
|
69
|
-
}
|
|
70
|
-
else if (routeMode === 'json') {
|
|
71
|
-
// Route requests JSON - config must allow JSON (json or hybrid)
|
|
72
|
-
if (method === 'cookies') {
|
|
73
|
-
throw new core_2.NAuthException(core_2.AuthErrorCode.BEARER_NOT_ALLOWED, "Route-level JSON delivery requested, but tokenDelivery.method is 'cookies' (JSON/Bearer tokens disabled)");
|
|
74
|
-
}
|
|
75
|
-
// method === 'json' or 'hybrid' - both allow JSON, so OK
|
|
76
|
-
}
|
|
77
|
-
let effective = 'json';
|
|
78
|
-
if (routeMode) {
|
|
79
|
-
effective = routeMode;
|
|
80
|
-
}
|
|
81
|
-
else if (method === 'hybrid') {
|
|
82
|
-
effective = (0, core_2.resolveDeliveryForRequest)(req, deliveryConfig?.hybridPolicy);
|
|
83
|
-
}
|
|
84
|
-
else if (method === 'cookies') {
|
|
85
|
-
effective = 'cookies';
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
effective = 'json';
|
|
89
|
-
}
|
|
51
|
+
const effective = this.tokenDeliveryHttp.resolveEffectiveDelivery(req, routeMode);
|
|
90
52
|
return next.handle().pipe((0, operators_1.map)((data) => {
|
|
91
53
|
// ============================================================================
|
|
92
54
|
// Safety: Only process object responses
|
|
@@ -105,102 +67,18 @@ let CookieTokenInterceptor = class CookieTokenInterceptor {
|
|
|
105
67
|
if (!hasAccessToken && !hasDeviceTokenOnly) {
|
|
106
68
|
return responseData;
|
|
107
69
|
}
|
|
108
|
-
// Smart default cookie options
|
|
109
|
-
const opt = deliveryConfig?.cookieOptions;
|
|
110
|
-
// Cookie domain handling:
|
|
111
|
-
// - undefined: Cookie set for exact host:port (e.g., localhost:3000)
|
|
112
|
-
// For cross-port requests (localhost:4200 → localhost:3000), cookies work IF:
|
|
113
|
-
// - Frontend sends withCredentials: true
|
|
114
|
-
// - Backend CORS allows credentials
|
|
115
|
-
// - SameSite allows cross-site requests (e.g., 'lax' or 'none')
|
|
116
|
-
//
|
|
117
|
-
// - 'localhost' or '.localhost': Some browsers accept this, others reject it
|
|
118
|
-
// Modern browsers generally allow 'localhost' without domain attribute
|
|
119
|
-
//
|
|
120
|
-
// - '.example.com': For production cross-subdomain sharing
|
|
121
|
-
// Allows cookies set by api.example.com to be sent from app.example.com
|
|
122
|
-
const cookieOptions = {
|
|
123
|
-
httpOnly: true,
|
|
124
|
-
secure: opt?.secure !== false, // default true
|
|
125
|
-
sameSite: (opt?.sameSite || 'strict'),
|
|
126
|
-
path: opt?.path || '/',
|
|
127
|
-
};
|
|
128
|
-
// Include domain if provided (browsers handle localhost differently - some accept, some reject)
|
|
129
|
-
// For cross-port testing (like Cognito), omitting domain works with sameSite: 'lax' or 'none'
|
|
130
|
-
if (opt?.domain) {
|
|
131
|
-
cookieOptions.domain = opt.domain;
|
|
132
|
-
}
|
|
133
|
-
// Derive expiry strictly from JWT claims (no fallback)
|
|
134
|
-
// We decode here (signature already trusted as tokens are freshly issued);
|
|
135
|
-
// full validation and blacklist checks happen in the AuthGuard on subsequent requests.
|
|
136
|
-
let accessTokenMaxAgeMs = 0;
|
|
137
|
-
if (hasAccessToken && responseData.accessToken) {
|
|
138
|
-
const accessPayload = this.jwtService.decodeToken(responseData.accessToken);
|
|
139
|
-
if (!accessPayload?.exp) {
|
|
140
|
-
throw new core_2.NAuthException(core_2.AuthErrorCode.TOKEN_INVALID, 'Access token missing or invalid exp claim; refusing to set cookies');
|
|
141
|
-
}
|
|
142
|
-
const accessExpSeconds = accessPayload.exp;
|
|
143
|
-
accessTokenMaxAgeMs = Math.max(0, accessExpSeconds * 1000 - Date.now());
|
|
144
|
-
if (accessTokenMaxAgeMs <= 0) {
|
|
145
|
-
throw new core_2.NAuthException(core_2.AuthErrorCode.TOKEN_INVALID, 'Access token already expired; refusing to set cookies');
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
const setCookie = (name, value, options) => {
|
|
149
|
-
if (res && typeof res.cookie === 'function') {
|
|
150
|
-
res.cookie(name, value, options);
|
|
151
|
-
}
|
|
152
|
-
else if (res && typeof res.setCookie === 'function') {
|
|
153
|
-
res.setCookie(name, value, options);
|
|
154
|
-
}
|
|
155
|
-
};
|
|
156
70
|
// Set cookies only when effective is 'cookies'
|
|
157
71
|
if (effective === 'cookies' && hasAccessToken && responseData.accessToken) {
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
72
|
+
this.tokenDeliveryHttp.setAuthCookies(res, {
|
|
73
|
+
accessToken: responseData.accessToken,
|
|
74
|
+
refreshToken: typeof responseData.refreshToken === 'string' ? responseData.refreshToken : undefined,
|
|
75
|
+
deviceToken: typeof responseData.deviceToken === 'string' ? responseData.deviceToken : undefined,
|
|
162
76
|
});
|
|
77
|
+
this.tokenDeliveryHttp.setCsrfCookie(res, responseData.accessToken);
|
|
163
78
|
}
|
|
164
|
-
if (
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
throw new core_2.NAuthException(core_2.AuthErrorCode.TOKEN_INVALID, 'Refresh token missing or invalid exp claim; refusing to set cookies');
|
|
168
|
-
}
|
|
169
|
-
const refreshExpSeconds = refreshPayload.exp;
|
|
170
|
-
const refreshTokenMaxAgeMs = Math.max(0, refreshExpSeconds * 1000 - Date.now());
|
|
171
|
-
if (refreshTokenMaxAgeMs <= 0) {
|
|
172
|
-
throw new core_2.NAuthException(core_2.AuthErrorCode.TOKEN_INVALID, 'Refresh token already expired; refusing to set cookies');
|
|
173
|
-
}
|
|
174
|
-
const refreshTokenCookieName = (0, core_2.getRefreshTokenCookieName)(this.config);
|
|
175
|
-
setCookie(refreshTokenCookieName, responseData.refreshToken, {
|
|
176
|
-
...cookieOptions,
|
|
177
|
-
maxAge: refreshTokenMaxAgeMs,
|
|
178
|
-
});
|
|
179
|
-
}
|
|
180
|
-
// Set device token cookie for trusted device feature (web)
|
|
181
|
-
// Only set cookie when deviceToken is present and effective is cookies
|
|
182
|
-
// (hybrid mode may resolve to cookies for web origins)
|
|
183
|
-
if (typeof responseData.deviceToken === 'string' && responseData.deviceToken && effective === 'cookies') {
|
|
184
|
-
const rememberDeviceDays = this.config.mfa?.rememberDeviceDays || 30;
|
|
185
|
-
const deviceTokenMaxAgeMs = rememberDeviceDays * 24 * 60 * 60 * 1000; // Convert days to milliseconds
|
|
186
|
-
const deviceTokenCookieName = (0, core_2.getDeviceTokenCookieName)(this.config);
|
|
187
|
-
setCookie(deviceTokenCookieName, responseData.deviceToken, {
|
|
188
|
-
...cookieOptions,
|
|
189
|
-
maxAge: deviceTokenMaxAgeMs,
|
|
190
|
-
});
|
|
191
|
-
}
|
|
192
|
-
// Set CSRF token cookie when using cookie-based token delivery
|
|
193
|
-
// CSRF token is required for state-changing requests to prevent CSRF attacks
|
|
194
|
-
if (effective === 'cookies' && this.csrfService && this.config.security?.csrf) {
|
|
195
|
-
const csrfToken = this.csrfService.generateToken();
|
|
196
|
-
const csrfCookieName = this.csrfService.getCookieName();
|
|
197
|
-
const csrfCookieOptions = this.csrfService.getCookieOptions();
|
|
198
|
-
// Use same max age as access token for CSRF cookie
|
|
199
|
-
// This ensures CSRF token expires when access token expires
|
|
200
|
-
setCookie(csrfCookieName, csrfToken, {
|
|
201
|
-
...csrfCookieOptions,
|
|
202
|
-
maxAge: accessTokenMaxAgeMs > 0 ? accessTokenMaxAgeMs : undefined,
|
|
203
|
-
});
|
|
79
|
+
else if (effective === 'cookies' && hasDeviceTokenOnly && responseData.deviceToken) {
|
|
80
|
+
// trust-device endpoint: cookie only
|
|
81
|
+
this.tokenDeliveryHttp.setDeviceTokenCookie(res, responseData.deviceToken);
|
|
204
82
|
}
|
|
205
83
|
// Strip tokens, deviceToken, and expiration fields only when effective is cookies (strict web path)
|
|
206
84
|
// Expiration is managed by cookie maxAge, so these fields are not needed
|
|
@@ -220,9 +98,7 @@ let CookieTokenInterceptor = class CookieTokenInterceptor {
|
|
|
220
98
|
exports.CookieTokenInterceptor = CookieTokenInterceptor;
|
|
221
99
|
exports.CookieTokenInterceptor = CookieTokenInterceptor = __decorate([
|
|
222
100
|
(0, common_1.Injectable)(),
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
core_1.Reflector,
|
|
226
|
-
csrf_service_1.CsrfService])
|
|
101
|
+
__metadata("design:paramtypes", [token_delivery_http_service_1.TokenDeliveryHttpService,
|
|
102
|
+
core_1.Reflector])
|
|
227
103
|
], CookieTokenInterceptor);
|
|
228
104
|
//# sourceMappingURL=cookie-token.interceptor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cookie-token.interceptor.js","sourceRoot":"","sources":["../../src/interceptors/cookie-token.interceptor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cookie-token.interceptor.js","sourceRoot":"","sources":["../../src/interceptors/cookie-token.interceptor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { NAuthConfig } from '@nauth-toolkit/core';
|
|
2
|
+
import { JwtService } from '@nauth-toolkit/core/internal';
|
|
3
|
+
import { CsrfService } from './csrf.service';
|
|
4
|
+
import type { RouteDelivery } from '../decorators/token-delivery.decorator';
|
|
5
|
+
/**
|
|
6
|
+
* Token delivery helper for HTTP controllers/interceptors (NestJS)
|
|
7
|
+
*
|
|
8
|
+
* Centralizes logic for:
|
|
9
|
+
* - determining effective token delivery ('cookies' | 'json') in hybrid mode
|
|
10
|
+
* - setting httpOnly auth cookies (and device token cookie) consistently
|
|
11
|
+
* - setting CSRF cookie when using cookie-based delivery
|
|
12
|
+
*
|
|
13
|
+
* This keeps consumer applications lightweight by letting toolkit controllers
|
|
14
|
+
* (like social redirect/callback) reuse the same cookie semantics as interceptors.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```typescript
|
|
18
|
+
* const effective = service.resolveEffectiveDelivery(req, undefined);
|
|
19
|
+
* if (effective === 'cookies') {
|
|
20
|
+
* service.setAuthCookies(res, { accessToken, refreshToken });
|
|
21
|
+
* service.setCsrfCookie(res, accessToken);
|
|
22
|
+
* }
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export declare class TokenDeliveryHttpService {
|
|
26
|
+
private readonly config;
|
|
27
|
+
private readonly jwtService;
|
|
28
|
+
private readonly csrfService?;
|
|
29
|
+
constructor(config: NAuthConfig, jwtService: JwtService, csrfService?: CsrfService | undefined);
|
|
30
|
+
/**
|
|
31
|
+
* Resolve the effective delivery mode for the current request.
|
|
32
|
+
*
|
|
33
|
+
* @param req - Framework request object (only `headers.origin` is used in hybrid mode)
|
|
34
|
+
* @param routeMode - Optional route-level override ('cookies' | 'json')
|
|
35
|
+
* @returns Effective delivery mode
|
|
36
|
+
* @throws {NAuthException} If route requests a mode not allowed by global config
|
|
37
|
+
*/
|
|
38
|
+
resolveEffectiveDelivery(req: unknown, routeMode?: RouteDelivery): 'cookies' | 'json';
|
|
39
|
+
/**
|
|
40
|
+
* Set auth cookies on the response.
|
|
41
|
+
*
|
|
42
|
+
* @param res - HTTP response object (FastifyReply or Express response)
|
|
43
|
+
* @param tokens - Tokens to set
|
|
44
|
+
* @throws {NAuthException} If token exp claims are missing/invalid
|
|
45
|
+
*/
|
|
46
|
+
setAuthCookies(res: unknown, tokens: {
|
|
47
|
+
accessToken: string;
|
|
48
|
+
refreshToken?: string;
|
|
49
|
+
deviceToken?: string;
|
|
50
|
+
}): void;
|
|
51
|
+
/**
|
|
52
|
+
* Set only the device token cookie (used by trust-device endpoint).
|
|
53
|
+
*
|
|
54
|
+
* @param res - HTTP response
|
|
55
|
+
* @param deviceToken - Device token to persist as cookie
|
|
56
|
+
*/
|
|
57
|
+
setDeviceTokenCookie(res: unknown, deviceToken: string): void;
|
|
58
|
+
/**
|
|
59
|
+
* Set CSRF cookie for cookie-based delivery.
|
|
60
|
+
*
|
|
61
|
+
* @param res - HTTP response
|
|
62
|
+
* @param accessToken - Access token used to align CSRF cookie lifetime
|
|
63
|
+
*/
|
|
64
|
+
setCsrfCookie(res: unknown, accessToken: string): void;
|
|
65
|
+
private buildCookieOptions;
|
|
66
|
+
private getSetCookieFn;
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=token-delivery-http.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-delivery-http.service.d.ts","sourceRoot":"","sources":["../../src/services/token-delivery-http.service.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,WAAW,EAMZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBACa,wBAAwB;IAGjC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAFZ,MAAM,EAAE,WAAW,EACnB,UAAU,EAAE,UAAU,EACtB,WAAW,CAAC,EAAE,WAAW,YAAA;IAG5C;;;;;;;OAOG;IACH,wBAAwB,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,aAAa,GAAG,SAAS,GAAG,MAAM;IA0BrF;;;;;;OAMG;IACH,cAAc,CACZ,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GAC3E,IAAI;IAuCP;;;;;OAKG;IACH,oBAAoB,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAe7D;;;;;OAKG;IACH,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IA0BtD,OAAO,CAAC,kBAAkB;IA0B1B,OAAO,CAAC,cAAc;CAmBvB"}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.TokenDeliveryHttpService = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const core_1 = require("@nauth-toolkit/core");
|
|
18
|
+
const internal_1 = require("@nauth-toolkit/core/internal");
|
|
19
|
+
const csrf_service_1 = require("./csrf.service");
|
|
20
|
+
/**
|
|
21
|
+
* Token delivery helper for HTTP controllers/interceptors (NestJS)
|
|
22
|
+
*
|
|
23
|
+
* Centralizes logic for:
|
|
24
|
+
* - determining effective token delivery ('cookies' | 'json') in hybrid mode
|
|
25
|
+
* - setting httpOnly auth cookies (and device token cookie) consistently
|
|
26
|
+
* - setting CSRF cookie when using cookie-based delivery
|
|
27
|
+
*
|
|
28
|
+
* This keeps consumer applications lightweight by letting toolkit controllers
|
|
29
|
+
* (like social redirect/callback) reuse the same cookie semantics as interceptors.
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* ```typescript
|
|
33
|
+
* const effective = service.resolveEffectiveDelivery(req, undefined);
|
|
34
|
+
* if (effective === 'cookies') {
|
|
35
|
+
* service.setAuthCookies(res, { accessToken, refreshToken });
|
|
36
|
+
* service.setCsrfCookie(res, accessToken);
|
|
37
|
+
* }
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
let TokenDeliveryHttpService = class TokenDeliveryHttpService {
|
|
41
|
+
config;
|
|
42
|
+
jwtService;
|
|
43
|
+
csrfService;
|
|
44
|
+
constructor(config, jwtService, csrfService) {
|
|
45
|
+
this.config = config;
|
|
46
|
+
this.jwtService = jwtService;
|
|
47
|
+
this.csrfService = csrfService;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Resolve the effective delivery mode for the current request.
|
|
51
|
+
*
|
|
52
|
+
* @param req - Framework request object (only `headers.origin` is used in hybrid mode)
|
|
53
|
+
* @param routeMode - Optional route-level override ('cookies' | 'json')
|
|
54
|
+
* @returns Effective delivery mode
|
|
55
|
+
* @throws {NAuthException} If route requests a mode not allowed by global config
|
|
56
|
+
*/
|
|
57
|
+
resolveEffectiveDelivery(req, routeMode) {
|
|
58
|
+
const method = this.config.tokenDelivery?.method || 'json';
|
|
59
|
+
// Validate route override against global configuration
|
|
60
|
+
if (routeMode === 'cookies' && method === 'json') {
|
|
61
|
+
throw new core_1.NAuthException(core_1.AuthErrorCode.COOKIES_NOT_ALLOWED, "Route-level cookie delivery requested, but tokenDelivery.method is 'json' (cookies disabled)");
|
|
62
|
+
}
|
|
63
|
+
if (routeMode === 'json' && method === 'cookies') {
|
|
64
|
+
throw new core_1.NAuthException(core_1.AuthErrorCode.BEARER_NOT_ALLOWED, "Route-level JSON delivery requested, but tokenDelivery.method is 'cookies' (JSON/Bearer tokens disabled)");
|
|
65
|
+
}
|
|
66
|
+
if (routeMode) {
|
|
67
|
+
return routeMode;
|
|
68
|
+
}
|
|
69
|
+
if (method === 'hybrid') {
|
|
70
|
+
return (0, core_1.resolveDeliveryForRequest)(req, this.config.tokenDelivery?.hybridPolicy);
|
|
71
|
+
}
|
|
72
|
+
return method === 'cookies' ? 'cookies' : 'json';
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Set auth cookies on the response.
|
|
76
|
+
*
|
|
77
|
+
* @param res - HTTP response object (FastifyReply or Express response)
|
|
78
|
+
* @param tokens - Tokens to set
|
|
79
|
+
* @throws {NAuthException} If token exp claims are missing/invalid
|
|
80
|
+
*/
|
|
81
|
+
setAuthCookies(res, tokens) {
|
|
82
|
+
const deliveryConfig = this.config.tokenDelivery;
|
|
83
|
+
const opt = deliveryConfig?.cookieOptions;
|
|
84
|
+
const cookieOptions = this.buildCookieOptions();
|
|
85
|
+
const setCookie = this.getSetCookieFn(res);
|
|
86
|
+
// Derive expiry from JWT exp claims (strict)
|
|
87
|
+
const accessPayload = this.jwtService.decodeToken(tokens.accessToken);
|
|
88
|
+
if (!accessPayload?.exp) {
|
|
89
|
+
throw new core_1.NAuthException(core_1.AuthErrorCode.TOKEN_INVALID, 'Access token missing exp claim; refusing to set cookies');
|
|
90
|
+
}
|
|
91
|
+
const accessMaxAgeMs = Math.max(0, accessPayload.exp * 1000 - Date.now());
|
|
92
|
+
if (accessMaxAgeMs <= 0) {
|
|
93
|
+
throw new core_1.NAuthException(core_1.AuthErrorCode.TOKEN_INVALID, 'Access token already expired; refusing to set cookies');
|
|
94
|
+
}
|
|
95
|
+
const accessTokenCookieName = (0, core_1.getAccessTokenCookieName)(this.config);
|
|
96
|
+
setCookie(accessTokenCookieName, tokens.accessToken, { ...cookieOptions, maxAge: accessMaxAgeMs });
|
|
97
|
+
if (typeof tokens.refreshToken === 'string' && tokens.refreshToken) {
|
|
98
|
+
const refreshPayload = this.jwtService.decodeToken(tokens.refreshToken);
|
|
99
|
+
if (!refreshPayload?.exp) {
|
|
100
|
+
throw new core_1.NAuthException(core_1.AuthErrorCode.TOKEN_INVALID, 'Refresh token missing exp claim; refusing to set cookies');
|
|
101
|
+
}
|
|
102
|
+
const refreshMaxAgeMs = Math.max(0, refreshPayload.exp * 1000 - Date.now());
|
|
103
|
+
if (refreshMaxAgeMs <= 0) {
|
|
104
|
+
throw new core_1.NAuthException(core_1.AuthErrorCode.TOKEN_INVALID, 'Refresh token already expired; refusing to set cookies');
|
|
105
|
+
}
|
|
106
|
+
const refreshTokenCookieName = (0, core_1.getRefreshTokenCookieName)(this.config);
|
|
107
|
+
setCookie(refreshTokenCookieName, tokens.refreshToken, { ...cookieOptions, maxAge: refreshMaxAgeMs });
|
|
108
|
+
}
|
|
109
|
+
// Trusted device cookie (optional)
|
|
110
|
+
if (typeof tokens.deviceToken === 'string' && tokens.deviceToken) {
|
|
111
|
+
this.setDeviceTokenCookie(res, tokens.deviceToken);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Set only the device token cookie (used by trust-device endpoint).
|
|
116
|
+
*
|
|
117
|
+
* @param res - HTTP response
|
|
118
|
+
* @param deviceToken - Device token to persist as cookie
|
|
119
|
+
*/
|
|
120
|
+
setDeviceTokenCookie(res, deviceToken) {
|
|
121
|
+
const token = typeof deviceToken === 'string' ? deviceToken : '';
|
|
122
|
+
if (!token) {
|
|
123
|
+
throw new core_1.NAuthException(core_1.AuthErrorCode.VALIDATION_FAILED, 'deviceToken is required', { field: 'deviceToken' });
|
|
124
|
+
}
|
|
125
|
+
const cookieOptions = this.buildCookieOptions();
|
|
126
|
+
const setCookie = this.getSetCookieFn(res);
|
|
127
|
+
const rememberDeviceDays = this.config.mfa?.rememberDeviceDays || 30;
|
|
128
|
+
const deviceTokenMaxAgeMs = rememberDeviceDays * 24 * 60 * 60 * 1000;
|
|
129
|
+
const deviceTokenCookieName = (0, core_1.getDeviceTokenCookieName)(this.config);
|
|
130
|
+
setCookie(deviceTokenCookieName, token, { ...cookieOptions, maxAge: deviceTokenMaxAgeMs });
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Set CSRF cookie for cookie-based delivery.
|
|
134
|
+
*
|
|
135
|
+
* @param res - HTTP response
|
|
136
|
+
* @param accessToken - Access token used to align CSRF cookie lifetime
|
|
137
|
+
*/
|
|
138
|
+
setCsrfCookie(res, accessToken) {
|
|
139
|
+
if (!this.csrfService || !this.config.security?.csrf) {
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
const accessPayload = this.jwtService.decodeToken(accessToken);
|
|
143
|
+
if (!accessPayload?.exp) {
|
|
144
|
+
throw new core_1.NAuthException(core_1.AuthErrorCode.TOKEN_INVALID, 'Access token missing exp claim; refusing to set CSRF cookie');
|
|
145
|
+
}
|
|
146
|
+
const accessMaxAgeMs = Math.max(0, accessPayload.exp * 1000 - Date.now());
|
|
147
|
+
const csrfToken = this.csrfService.generateToken();
|
|
148
|
+
const csrfCookieName = this.csrfService.getCookieName();
|
|
149
|
+
const csrfCookieOptions = this.csrfService.getCookieOptions();
|
|
150
|
+
const setCookie = this.getSetCookieFn(res);
|
|
151
|
+
setCookie(csrfCookieName, csrfToken, {
|
|
152
|
+
...csrfCookieOptions,
|
|
153
|
+
maxAge: accessMaxAgeMs > 0 ? accessMaxAgeMs : undefined,
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
// ============================================================================
|
|
157
|
+
// Private helpers
|
|
158
|
+
// ============================================================================
|
|
159
|
+
buildCookieOptions() {
|
|
160
|
+
const opt = this.config.tokenDelivery?.cookieOptions;
|
|
161
|
+
const cookieOptions = {
|
|
162
|
+
httpOnly: true,
|
|
163
|
+
secure: opt?.secure !== false,
|
|
164
|
+
sameSite: (opt?.sameSite || 'strict'),
|
|
165
|
+
path: opt?.path || '/',
|
|
166
|
+
};
|
|
167
|
+
if (opt?.domain) {
|
|
168
|
+
cookieOptions.domain = opt.domain;
|
|
169
|
+
}
|
|
170
|
+
return cookieOptions;
|
|
171
|
+
}
|
|
172
|
+
getSetCookieFn(res) {
|
|
173
|
+
return (name, value, options) => {
|
|
174
|
+
const r = res;
|
|
175
|
+
if (typeof r.cookie === 'function') {
|
|
176
|
+
r.cookie(name, value, options);
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
if (typeof r.setCookie === 'function') {
|
|
180
|
+
r.setCookie(name, value, options);
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
183
|
+
throw new core_1.NAuthException(core_1.AuthErrorCode.INTERNAL_ERROR, 'Response does not support setting cookies');
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
};
|
|
187
|
+
exports.TokenDeliveryHttpService = TokenDeliveryHttpService;
|
|
188
|
+
exports.TokenDeliveryHttpService = TokenDeliveryHttpService = __decorate([
|
|
189
|
+
(0, common_1.Injectable)(),
|
|
190
|
+
__param(0, (0, common_1.Inject)('NAUTH_CONFIG')),
|
|
191
|
+
__metadata("design:paramtypes", [Object, internal_1.JwtService,
|
|
192
|
+
csrf_service_1.CsrfService])
|
|
193
|
+
], TokenDeliveryHttpService);
|
|
194
|
+
//# sourceMappingURL=token-delivery-http.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-delivery-http.service.js","sourceRoot":"","sources":["../../src/services/token-delivery-http.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nauth-toolkit/nestjs",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.21",
|
|
4
4
|
"description": "NestJS adapter for nauth-toolkit - Platform-specific integrations",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"typeorm": "^0.3.0"
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@nauth-toolkit/core": "0.1.
|
|
42
|
+
"@nauth-toolkit/core": "0.1.21"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"@nestjs/common": "^11.1.8",
|