@volontariapp/auth 2.0.1 → 2.1.0-next.20260408123532
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/guards/access-token.guard.d.ts +1 -0
- package/dist/guards/access-token.guard.d.ts.map +1 -1
- package/dist/guards/access-token.guard.js +5 -0
- package/dist/guards/access-token.guard.js.map +1 -1
- package/dist/guards/grpc-internal.guard.d.ts +1 -0
- package/dist/guards/grpc-internal.guard.d.ts.map +1 -1
- package/dist/guards/grpc-internal.guard.js +5 -0
- package/dist/guards/grpc-internal.guard.js.map +1 -1
- package/dist/guards/refresh-token.guard.d.ts +1 -0
- package/dist/guards/refresh-token.guard.d.ts.map +1 -1
- package/dist/guards/refresh-token.guard.js +5 -0
- package/dist/guards/refresh-token.guard.js.map +1 -1
- package/dist/guards/roles.guard.d.ts +1 -0
- package/dist/guards/roles.guard.d.ts.map +1 -1
- package/dist/guards/roles.guard.js +5 -0
- package/dist/guards/roles.guard.js.map +1 -1
- package/dist/interceptors/grpc-internal.interceptor.d.ts +1 -0
- package/dist/interceptors/grpc-internal.interceptor.d.ts.map +1 -1
- package/dist/interceptors/grpc-internal.interceptor.js +3 -0
- package/dist/interceptors/grpc-internal.interceptor.js.map +1 -1
- package/dist/middlewares/access-token.middleware.d.ts +2 -1
- package/dist/middlewares/access-token.middleware.d.ts.map +1 -1
- package/dist/middlewares/access-token.middleware.js +5 -2
- package/dist/middlewares/access-token.middleware.js.map +1 -1
- package/dist/middlewares/refresh-token.middleware.d.ts +2 -1
- package/dist/middlewares/refresh-token.middleware.d.ts.map +1 -1
- package/dist/middlewares/refresh-token.middleware.js +5 -2
- package/dist/middlewares/refresh-token.middleware.js.map +1 -1
- package/dist/services/grpc-metadata.helper.d.ts +1 -0
- package/dist/services/grpc-metadata.helper.d.ts.map +1 -1
- package/dist/services/grpc-metadata.helper.js +3 -0
- package/dist/services/grpc-metadata.helper.js.map +1 -1
- package/dist/services/jwt.service.d.ts +1 -0
- package/dist/services/jwt.service.d.ts.map +1 -1
- package/dist/services/jwt.service.js +3 -0
- package/dist/services/jwt.service.js.map +1 -1
- package/dist/test/integration/full-auth-flow.int.spec.js +7 -1
- package/dist/test/integration/full-auth-flow.int.spec.js.map +1 -1
- package/dist/test/integration/grpc-internal.guard.int.spec.js +6 -1
- package/dist/test/integration/grpc-internal.guard.int.spec.js.map +1 -1
- package/package.json +4 -3
|
@@ -2,6 +2,7 @@ import type { CanActivate, ExecutionContext } from '@nestjs/common';
|
|
|
2
2
|
import { JwtService } from '../services/jwt.service.js';
|
|
3
3
|
export declare class AccessTokenGuard implements CanActivate {
|
|
4
4
|
private readonly jwtService;
|
|
5
|
+
private readonly logger;
|
|
5
6
|
constructor(jwtService: JwtService);
|
|
6
7
|
canActivate(context: ExecutionContext): Promise<boolean>;
|
|
7
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"access-token.guard.d.ts","sourceRoot":"","sources":["../../src/guards/access-token.guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"access-token.guard.d.ts","sourceRoot":"","sources":["../../src/guards/access-token.guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAIxD,qBACa,gBAAiB,YAAW,WAAW;IAEtC,OAAO,CAAC,QAAQ,CAAC,UAAU;IADvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+D;gBACzD,UAAU,EAAE,UAAU;IAE7C,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;CAmB/D"}
|
|
@@ -10,8 +10,10 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
import { Injectable } from '@nestjs/common';
|
|
11
11
|
import { JwtService } from '../services/jwt.service.js';
|
|
12
12
|
import { MISSING_ACCESS_TOKEN, INVALID_ACCESS_TOKEN } from '@volontariapp/errors-nest';
|
|
13
|
+
import { Logger } from '@volontariapp/logger';
|
|
13
14
|
let AccessTokenGuard = class AccessTokenGuard {
|
|
14
15
|
jwtService;
|
|
16
|
+
logger = new Logger({ context: 'AccessTokenGuard', format: 'json' });
|
|
15
17
|
constructor(jwtService) {
|
|
16
18
|
this.jwtService = jwtService;
|
|
17
19
|
}
|
|
@@ -19,14 +21,17 @@ let AccessTokenGuard = class AccessTokenGuard {
|
|
|
19
21
|
const request = context.switchToHttp().getRequest();
|
|
20
22
|
const token = request['accessToken'];
|
|
21
23
|
if (typeof token !== 'string') {
|
|
24
|
+
this.logger.warn('Access token is missing from request');
|
|
22
25
|
throw MISSING_ACCESS_TOKEN();
|
|
23
26
|
}
|
|
24
27
|
try {
|
|
25
28
|
const user = await this.jwtService.verifyAccessToken(token);
|
|
26
29
|
request['user'] = user;
|
|
30
|
+
this.logger.debug(`User ${user.id} authenticated with access token`);
|
|
27
31
|
return true;
|
|
28
32
|
}
|
|
29
33
|
catch (error) {
|
|
34
|
+
this.logger.error('Access token verification failed', error);
|
|
30
35
|
throw INVALID_ACCESS_TOKEN(error instanceof Error ? error.message : undefined);
|
|
31
36
|
}
|
|
32
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"access-token.guard.js","sourceRoot":"","sources":["../../src/guards/access-token.guard.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"access-token.guard.js","sourceRoot":"","sources":["../../src/guards/access-token.guard.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGvC,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAEE;IADZ,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACtF,YAA6B,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IAEvD,KAAK,CAAC,WAAW,CAAC,OAAyB;QACzC,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAA2B,CAAC;QAC7E,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;QAErC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;YACzD,MAAM,oBAAoB,EAAE,CAAC;QAC/B,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC5D,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,EAAE,kCAAkC,CAAC,CAAC;YACrE,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;YAC7D,MAAM,oBAAoB,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;CACF,CAAA;AAvBY,gBAAgB;IAD5B,UAAU,EAAE;qCAG8B,UAAU;GAFxC,gBAAgB,CAuB5B"}
|
|
@@ -2,6 +2,7 @@ import type { CanActivate, ExecutionContext } from '@nestjs/common';
|
|
|
2
2
|
import { JwtService } from '../services/jwt.service.js';
|
|
3
3
|
export declare class GrpcInternalGuard implements CanActivate {
|
|
4
4
|
private readonly jwtService;
|
|
5
|
+
private readonly logger;
|
|
5
6
|
constructor(jwtService: JwtService);
|
|
6
7
|
canActivate(context: ExecutionContext): Promise<boolean>;
|
|
7
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grpc-internal.guard.d.ts","sourceRoot":"","sources":["../../src/guards/grpc-internal.guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"grpc-internal.guard.d.ts","sourceRoot":"","sources":["../../src/guards/grpc-internal.guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAMxD,qBACa,iBAAkB,YAAW,WAAW;IAEvC,OAAO,CAAC,QAAQ,CAAC,UAAU;IADvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgE;gBAC1D,UAAU,EAAE,UAAU;IAE7C,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;CAoB/D"}
|
|
@@ -11,8 +11,10 @@ import { Injectable } from '@nestjs/common';
|
|
|
11
11
|
import { JwtService } from '../services/jwt.service.js';
|
|
12
12
|
import { INTERNAL_TOKEN_METADATA_KEY } from '../constants/index.js';
|
|
13
13
|
import { MISSING_INTERNAL_TOKEN, INVALID_INTERNAL_TOKEN } from '@volontariapp/errors-nest';
|
|
14
|
+
import { Logger } from '@volontariapp/logger';
|
|
14
15
|
let GrpcInternalGuard = class GrpcInternalGuard {
|
|
15
16
|
jwtService;
|
|
17
|
+
logger = new Logger({ context: 'GrpcInternalGuard', format: 'json' });
|
|
16
18
|
constructor(jwtService) {
|
|
17
19
|
this.jwtService = jwtService;
|
|
18
20
|
}
|
|
@@ -21,14 +23,17 @@ let GrpcInternalGuard = class GrpcInternalGuard {
|
|
|
21
23
|
const tokens = rpcContext.get(INTERNAL_TOKEN_METADATA_KEY);
|
|
22
24
|
const token = tokens[0];
|
|
23
25
|
if (typeof token !== 'string') {
|
|
26
|
+
this.logger.warn('Internal gRPC token is missing from metadata');
|
|
24
27
|
throw MISSING_INTERNAL_TOKEN();
|
|
25
28
|
}
|
|
26
29
|
try {
|
|
27
30
|
const user = await this.jwtService.verifyInternal(token);
|
|
28
31
|
rpcContext['user'] = user;
|
|
32
|
+
this.logger.debug(`Internal gRPC request authorized for user ${user.id}`);
|
|
29
33
|
return true;
|
|
30
34
|
}
|
|
31
35
|
catch (error) {
|
|
36
|
+
this.logger.error('Internal gRPC token verification failed', error);
|
|
32
37
|
throw INVALID_INTERNAL_TOKEN(error instanceof Error ? error.message : undefined);
|
|
33
38
|
}
|
|
34
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grpc-internal.guard.js","sourceRoot":"","sources":["../../src/guards/grpc-internal.guard.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"grpc-internal.guard.js","sourceRoot":"","sources":["../../src/guards/grpc-internal.guard.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAE3F,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGvC,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAEC;IADZ,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACvF,YAA6B,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IAEvD,KAAK,CAAC,WAAW,CAAC,OAAyB;QACzC,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,UAAU,EAAY,CAAC;QAChE,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;QAC3D,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAExB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;YACjE,MAAM,sBAAsB,EAAE,CAAC;QACjC,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YACxD,UAAiD,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YAClE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6CAA6C,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1E,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAC;YACpE,MAAM,sBAAsB,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACnF,CAAC;IACH,CAAC;CACF,CAAA;AAxBY,iBAAiB;IAD7B,UAAU,EAAE;qCAG8B,UAAU;GAFxC,iBAAiB,CAwB7B"}
|
|
@@ -2,6 +2,7 @@ import type { CanActivate, ExecutionContext } from '@nestjs/common';
|
|
|
2
2
|
import { JwtService } from '../services/jwt.service.js';
|
|
3
3
|
export declare class RefreshTokenGuard implements CanActivate {
|
|
4
4
|
private readonly jwtService;
|
|
5
|
+
private readonly logger;
|
|
5
6
|
constructor(jwtService: JwtService);
|
|
6
7
|
canActivate(context: ExecutionContext): Promise<boolean>;
|
|
7
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refresh-token.guard.d.ts","sourceRoot":"","sources":["../../src/guards/refresh-token.guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"refresh-token.guard.d.ts","sourceRoot":"","sources":["../../src/guards/refresh-token.guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAIxD,qBACa,iBAAkB,YAAW,WAAW;IAEvC,OAAO,CAAC,QAAQ,CAAC,UAAU;IADvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgE;gBAC1D,UAAU,EAAE,UAAU;IAE7C,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;CAmB/D"}
|
|
@@ -10,8 +10,10 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
import { Injectable } from '@nestjs/common';
|
|
11
11
|
import { JwtService } from '../services/jwt.service.js';
|
|
12
12
|
import { MISSING_REFRESH_TOKEN, INVALID_REFRESH_TOKEN } from '@volontariapp/errors-nest';
|
|
13
|
+
import { Logger } from '@volontariapp/logger';
|
|
13
14
|
let RefreshTokenGuard = class RefreshTokenGuard {
|
|
14
15
|
jwtService;
|
|
16
|
+
logger = new Logger({ context: 'RefreshTokenGuard', format: 'json' });
|
|
15
17
|
constructor(jwtService) {
|
|
16
18
|
this.jwtService = jwtService;
|
|
17
19
|
}
|
|
@@ -19,14 +21,17 @@ let RefreshTokenGuard = class RefreshTokenGuard {
|
|
|
19
21
|
const request = context.switchToHttp().getRequest();
|
|
20
22
|
const token = request['refreshToken'];
|
|
21
23
|
if (typeof token !== 'string') {
|
|
24
|
+
this.logger.warn('Refresh token is missing from request');
|
|
22
25
|
throw MISSING_REFRESH_TOKEN();
|
|
23
26
|
}
|
|
24
27
|
try {
|
|
25
28
|
const user = await this.jwtService.verifyRefreshToken(token);
|
|
26
29
|
request['user'] = user;
|
|
30
|
+
this.logger.debug(`User ${user.id} authenticated with refresh token`);
|
|
27
31
|
return true;
|
|
28
32
|
}
|
|
29
33
|
catch (error) {
|
|
34
|
+
this.logger.error('Refresh token verification failed', error);
|
|
30
35
|
throw INVALID_REFRESH_TOKEN(error instanceof Error ? error.message : undefined);
|
|
31
36
|
}
|
|
32
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refresh-token.guard.js","sourceRoot":"","sources":["../../src/guards/refresh-token.guard.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"refresh-token.guard.js","sourceRoot":"","sources":["../../src/guards/refresh-token.guard.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACzF,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGvC,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAEC;IADZ,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACvF,YAA6B,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IAEvD,KAAK,CAAC,WAAW,CAAC,OAAyB;QACzC,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAA2B,CAAC;QAC7E,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;QAEtC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;YAC1D,MAAM,qBAAqB,EAAE,CAAC;QAChC,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAC7D,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,EAAE,mCAAmC,CAAC,CAAC;YACtE,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;YAC9D,MAAM,qBAAqB,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;CACF,CAAA;AAvBY,iBAAiB;IAD7B,UAAU,EAAE;qCAG8B,UAAU;GAFxC,iBAAiB,CAuB7B"}
|
|
@@ -2,6 +2,7 @@ import type { CanActivate, ExecutionContext } from '@nestjs/common';
|
|
|
2
2
|
import { Reflector } from '@nestjs/core';
|
|
3
3
|
export declare class RolesGuard implements CanActivate {
|
|
4
4
|
private readonly reflector;
|
|
5
|
+
private readonly logger;
|
|
5
6
|
constructor(reflector: Reflector);
|
|
6
7
|
canActivate(context: ExecutionContext): boolean;
|
|
7
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roles.guard.d.ts","sourceRoot":"","sources":["../../src/guards/roles.guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"roles.guard.d.ts","sourceRoot":"","sources":["../../src/guards/roles.guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAMzC,qBACa,UAAW,YAAW,WAAW;IAEhC,OAAO,CAAC,QAAQ,CAAC,SAAS;IADtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyD;gBACnD,SAAS,EAAE,SAAS;IAEjD,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO;CA8BhD"}
|
|
@@ -11,8 +11,10 @@ import { Injectable } from '@nestjs/common';
|
|
|
11
11
|
import { Reflector } from '@nestjs/core';
|
|
12
12
|
import { ROLES_KEY } from '../decorators/roles.decorator.js';
|
|
13
13
|
import { INSUFFICIENT_PERMISSIONS, MISSING_AUTHENTICATED_USER } from '@volontariapp/errors-nest';
|
|
14
|
+
import { Logger } from '@volontariapp/logger';
|
|
14
15
|
let RolesGuard = class RolesGuard {
|
|
15
16
|
reflector;
|
|
17
|
+
logger = new Logger({ context: 'RolesGuard', format: 'json' });
|
|
16
18
|
constructor(reflector) {
|
|
17
19
|
this.reflector = reflector;
|
|
18
20
|
}
|
|
@@ -26,11 +28,14 @@ let RolesGuard = class RolesGuard {
|
|
|
26
28
|
}
|
|
27
29
|
const { user } = context.switchToHttp().getRequest();
|
|
28
30
|
if (!user) {
|
|
31
|
+
this.logger.warn('User object missing from request in RolesGuard');
|
|
29
32
|
throw MISSING_AUTHENTICATED_USER();
|
|
30
33
|
}
|
|
31
34
|
if (!requiredRoles.includes(user.role)) {
|
|
35
|
+
this.logger.warn(`User ${user.id} with role ${user.role} does not have required roles: ${requiredRoles.join(', ')}`);
|
|
32
36
|
throw INSUFFICIENT_PERMISSIONS();
|
|
33
37
|
}
|
|
38
|
+
this.logger.debug(`User ${user.id} role ${user.role} authorized for roles: ${requiredRoles.join(', ')}`);
|
|
34
39
|
return true;
|
|
35
40
|
}
|
|
36
41
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roles.guard.js","sourceRoot":"","sources":["../../src/guards/roles.guard.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"roles.guard.js","sourceRoot":"","sources":["../../src/guards/roles.guard.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAEjG,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGvC,IAAM,UAAU,GAAhB,MAAM,UAAU;IAEQ;IADZ,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAChF,YAA6B,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;IAAG,CAAC;IAErD,WAAW,CAAC,OAAyB;QACnC,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAW,SAAS,EAAE;YAC1E,OAAO,CAAC,UAAU,EAAE;YACpB,OAAO,CAAC,QAAQ,EAAE;SACnB,CAAC,CAAC;QAEH,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAuB,CAAC;QAE1E,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;YACnE,MAAM,0BAA0B,EAAE,CAAC;QACrC,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,QAAQ,IAAI,CAAC,EAAE,cAAc,IAAI,CAAC,IAAI,kCAAkC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACnG,CAAC;YACF,MAAM,wBAAwB,EAAE,CAAC;QACnC,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,QAAQ,IAAI,CAAC,EAAE,SAAS,IAAI,CAAC,IAAI,0BAA0B,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACtF,CAAC;QAEF,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAlCY,UAAU;IADtB,UAAU,EAAE;qCAG6B,SAAS;GAFtC,UAAU,CAkCtB"}
|
|
@@ -3,6 +3,7 @@ import type { Observable } from 'rxjs';
|
|
|
3
3
|
import { JwtService } from '../services/jwt.service.js';
|
|
4
4
|
export declare class GrpcInternalInterceptor implements NestInterceptor {
|
|
5
5
|
private readonly jwtService;
|
|
6
|
+
private readonly logger;
|
|
6
7
|
constructor(jwtService: JwtService);
|
|
7
8
|
intercept(context: ExecutionContext, next: CallHandler): Observable<unknown>;
|
|
8
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grpc-internal.interceptor.d.ts","sourceRoot":"","sources":["../../src/interceptors/grpc-internal.interceptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAErF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAGvC,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"grpc-internal.interceptor.d.ts","sourceRoot":"","sources":["../../src/interceptors/grpc-internal.interceptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAErF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAGvC,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAIxD,qBACa,uBAAwB,YAAW,eAAe;IAEjD,OAAO,CAAC,QAAQ,CAAC,UAAU;IADvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsE;gBAChE,UAAU,EAAE,UAAU;IAEnD,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC;CAiB7E"}
|
|
@@ -11,8 +11,10 @@ import { Injectable } from '@nestjs/common';
|
|
|
11
11
|
import { from } from 'rxjs';
|
|
12
12
|
import { switchMap } from 'rxjs/operators';
|
|
13
13
|
import { JwtService } from '../services/jwt.service.js';
|
|
14
|
+
import { Logger } from '@volontariapp/logger';
|
|
14
15
|
let GrpcInternalInterceptor = class GrpcInternalInterceptor {
|
|
15
16
|
jwtService;
|
|
17
|
+
logger = new Logger({ context: 'GrpcInternalInterceptor', format: 'json' });
|
|
16
18
|
constructor(jwtService) {
|
|
17
19
|
this.jwtService = jwtService;
|
|
18
20
|
}
|
|
@@ -23,6 +25,7 @@ let GrpcInternalInterceptor = class GrpcInternalInterceptor {
|
|
|
23
25
|
return next.handle();
|
|
24
26
|
}
|
|
25
27
|
return from(this.jwtService.signInternal(user)).pipe(switchMap((token) => {
|
|
28
|
+
this.logger.debug(`Signed internal token for user ${user.id}`);
|
|
26
29
|
const req = httpRequest;
|
|
27
30
|
req['internalToken'] = token;
|
|
28
31
|
return next.handle();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grpc-internal.interceptor.js","sourceRoot":"","sources":["../../src/interceptors/grpc-internal.interceptor.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"grpc-internal.interceptor.js","sourceRoot":"","sources":["../../src/interceptors/grpc-internal.interceptor.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGvC,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAEL;IADZ,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,OAAO,EAAE,yBAAyB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7F,YAA6B,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IAEvD,SAAS,CAAC,OAAyB,EAAE,IAAiB;QACpD,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAuB,CAAC;QAC7E,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;QAE9B,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAClD,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/D,MAAM,GAAG,GAAG,WAAiD,CAAC;YAC9D,GAAG,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC;YAC7B,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAA;AArBY,uBAAuB;IADnC,UAAU,EAAE;qCAG8B,UAAU;GAFxC,uBAAuB,CAqBnC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { NestMiddleware } from '@nestjs/common';
|
|
2
2
|
export declare class AccessTokenMiddleware implements NestMiddleware {
|
|
3
|
-
|
|
3
|
+
private readonly logger;
|
|
4
|
+
use: (req: unknown, _res: unknown, next: unknown) => void;
|
|
4
5
|
}
|
|
5
6
|
//# sourceMappingURL=access-token.middleware.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"access-token.middleware.d.ts","sourceRoot":"","sources":["../../src/middlewares/access-token.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"access-token.middleware.d.ts","sourceRoot":"","sources":["../../src/middlewares/access-token.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAIrD,qBACa,qBAAsB,YAAW,cAAc;IAC1D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoE;IAC3F,GAAG,QAAS,OAAO,QAAQ,OAAO,QAAQ,OAAO,KAAG,IAAI,CAuBtD;CACH"}
|
|
@@ -5,8 +5,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { Injectable } from '@nestjs/common';
|
|
8
|
+
import { Logger } from '@volontariapp/logger';
|
|
8
9
|
let AccessTokenMiddleware = class AccessTokenMiddleware {
|
|
9
|
-
|
|
10
|
+
logger = new Logger({ context: 'AccessTokenMiddleware', format: 'json' });
|
|
11
|
+
use = (req, _res, next) => {
|
|
10
12
|
const request = req;
|
|
11
13
|
const nextFn = next;
|
|
12
14
|
const headers = (request['headers'] ?? {});
|
|
@@ -23,9 +25,10 @@ let AccessTokenMiddleware = class AccessTokenMiddleware {
|
|
|
23
25
|
}
|
|
24
26
|
if (typeof token === 'string' && token !== '') {
|
|
25
27
|
request['accessToken'] = token;
|
|
28
|
+
this.logger.debug('Extracted access token from request');
|
|
26
29
|
}
|
|
27
30
|
nextFn();
|
|
28
|
-
}
|
|
31
|
+
};
|
|
29
32
|
};
|
|
30
33
|
AccessTokenMiddleware = __decorate([
|
|
31
34
|
Injectable()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"access-token.middleware.js","sourceRoot":"","sources":["../../src/middlewares/access-token.middleware.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"access-token.middleware.js","sourceRoot":"","sources":["../../src/middlewares/access-token.middleware.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGvC,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IACf,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,OAAO,EAAE,uBAAuB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3F,GAAG,GAAG,CAAC,GAAY,EAAE,IAAa,EAAE,IAAa,EAAQ,EAAE;QACzD,MAAM,OAAO,GAAG,GAA8B,CAAC;QAC/C,MAAM,MAAM,GAAG,IAAkB,CAAC;QAClC,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAA4B,CAAC;QACtE,MAAM,UAAU,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;QAC5C,IAAI,KAAyB,CAAC;QAE9B,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACvE,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,CAAC;aAAM,IACL,OAAO,CAAC,SAAS,CAAC,KAAK,SAAS;YAChC,OAAO,OAAO,CAAC,SAAS,CAAC,KAAK,QAAQ;YACtC,OAAO,CAAC,SAAS,CAAC,KAAK,IAAI,EAC3B,CAAC;YACD,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAuC,CAAC;YACzE,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;YAC9C,OAAO,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC3D,CAAC;QACD,MAAM,EAAE,CAAC;IACX,CAAC,CAAC;CACH,CAAA;AA1BY,qBAAqB;IADjC,UAAU,EAAE;GACA,qBAAqB,CA0BjC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { NestMiddleware } from '@nestjs/common';
|
|
2
2
|
export declare class RefreshTokenMiddleware implements NestMiddleware {
|
|
3
|
-
|
|
3
|
+
private readonly logger;
|
|
4
|
+
use: (req: unknown, _res: unknown, next: unknown) => void;
|
|
4
5
|
}
|
|
5
6
|
//# sourceMappingURL=refresh-token.middleware.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refresh-token.middleware.d.ts","sourceRoot":"","sources":["../../src/middlewares/refresh-token.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"refresh-token.middleware.d.ts","sourceRoot":"","sources":["../../src/middlewares/refresh-token.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAIrD,qBACa,sBAAuB,YAAW,cAAc;IAC3D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqE;IAC5F,GAAG,QAAS,OAAO,QAAQ,OAAO,QAAQ,OAAO,KAAG,IAAI,CAmBtD;CACH"}
|
|
@@ -5,8 +5,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { Injectable } from '@nestjs/common';
|
|
8
|
+
import { Logger } from '@volontariapp/logger';
|
|
8
9
|
let RefreshTokenMiddleware = class RefreshTokenMiddleware {
|
|
9
|
-
|
|
10
|
+
logger = new Logger({ context: 'RefreshTokenMiddleware', format: 'json' });
|
|
11
|
+
use = (req, _res, next) => {
|
|
10
12
|
const request = req;
|
|
11
13
|
const nextFn = next;
|
|
12
14
|
let token;
|
|
@@ -18,9 +20,10 @@ let RefreshTokenMiddleware = class RefreshTokenMiddleware {
|
|
|
18
20
|
}
|
|
19
21
|
if (typeof token === 'string' && token !== '') {
|
|
20
22
|
request['refreshToken'] = token;
|
|
23
|
+
this.logger.debug('Extracted refresh token from request');
|
|
21
24
|
}
|
|
22
25
|
nextFn();
|
|
23
|
-
}
|
|
26
|
+
};
|
|
24
27
|
};
|
|
25
28
|
RefreshTokenMiddleware = __decorate([
|
|
26
29
|
Injectable()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refresh-token.middleware.js","sourceRoot":"","sources":["../../src/middlewares/refresh-token.middleware.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"refresh-token.middleware.js","sourceRoot":"","sources":["../../src/middlewares/refresh-token.middleware.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGvC,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAChB,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5F,GAAG,GAAG,CAAC,GAAY,EAAE,IAAa,EAAE,IAAa,EAAQ,EAAE;QACzD,MAAM,OAAO,GAAG,GAA8B,CAAC;QAC/C,MAAM,MAAM,GAAG,IAAkB,CAAC;QAClC,IAAI,KAAyB,CAAC;QAE9B,IACE,OAAO,CAAC,SAAS,CAAC,KAAK,SAAS;YAChC,OAAO,OAAO,CAAC,SAAS,CAAC,KAAK,QAAQ;YACtC,OAAO,CAAC,SAAS,CAAC,KAAK,IAAI,EAC3B,CAAC;YACD,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAuC,CAAC;YACzE,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,eAAe,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;YAC9C,OAAO,CAAC,cAAc,CAAC,GAAG,KAAK,CAAC;YAChC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC5D,CAAC;QACD,MAAM,EAAE,CAAC;IACX,CAAC,CAAC;CACH,CAAA;AAtBY,sBAAsB;IADlC,UAAU,EAAE;GACA,sBAAsB,CAsBlC"}
|
|
@@ -3,6 +3,7 @@ import type { JwtService } from './jwt.service.js';
|
|
|
3
3
|
import type { AuthUser } from '../interfaces/index.js';
|
|
4
4
|
export declare class GrpcMetadataHelper {
|
|
5
5
|
private readonly jwtService;
|
|
6
|
+
private readonly logger;
|
|
6
7
|
constructor(jwtService: JwtService);
|
|
7
8
|
createInternalMetadata(user: AuthUser): Promise<Metadata>;
|
|
8
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grpc-metadata.helper.d.ts","sourceRoot":"","sources":["../../src/services/grpc-metadata.helper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"grpc-metadata.helper.d.ts","sourceRoot":"","sources":["../../src/services/grpc-metadata.helper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAGvD,qBACa,kBAAkB;IAEjB,OAAO,CAAC,QAAQ,CAAC,UAAU;IADvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiE;gBAC3D,UAAU,EAAE,UAAU;IAE7C,sBAAsB,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;CAOhE"}
|
|
@@ -10,8 +10,10 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
import { Injectable } from '@nestjs/common';
|
|
11
11
|
import { Metadata } from '@grpc/grpc-js';
|
|
12
12
|
import { INTERNAL_TOKEN_METADATA_KEY } from '../constants/index.js';
|
|
13
|
+
import { Logger } from '@volontariapp/logger';
|
|
13
14
|
let GrpcMetadataHelper = class GrpcMetadataHelper {
|
|
14
15
|
jwtService;
|
|
16
|
+
logger = new Logger({ context: 'GrpcMetadataHelper', format: 'json' });
|
|
15
17
|
constructor(jwtService) {
|
|
16
18
|
this.jwtService = jwtService;
|
|
17
19
|
}
|
|
@@ -19,6 +21,7 @@ let GrpcMetadataHelper = class GrpcMetadataHelper {
|
|
|
19
21
|
const metadata = new Metadata();
|
|
20
22
|
const token = await this.jwtService.signInternal(user);
|
|
21
23
|
metadata.set(INTERNAL_TOKEN_METADATA_KEY, token);
|
|
24
|
+
this.logger.debug(`Created internal metadata for user ${user.id}`);
|
|
22
25
|
return metadata;
|
|
23
26
|
}
|
|
24
27
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grpc-metadata.helper.js","sourceRoot":"","sources":["../../src/services/grpc-metadata.helper.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"grpc-metadata.helper.js","sourceRoot":"","sources":["../../src/services/grpc-metadata.helper.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AAEpE,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGvC,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAEA;IADZ,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACxF,YAA6B,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IAEvD,KAAK,CAAC,sBAAsB,CAAC,IAAc;QACzC,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACvD,QAAQ,CAAC,GAAG,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACnE,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF,CAAA;AAXY,kBAAkB;IAD9B,UAAU,EAAE;;GACA,kBAAkB,CAW9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jwt.service.d.ts","sourceRoot":"","sources":["../../src/services/jwt.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"jwt.service.d.ts","sourceRoot":"","sources":["../../src/services/jwt.service.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEnE,qBAAa,UAAU;IAST,OAAO,CAAC,QAAQ,CAAC,OAAO;IARpC,OAAO,CAAC,kBAAkB,CAAC,CAAY;IACvC,OAAO,CAAC,iBAAiB,CAAC,CAAY;IACtC,OAAO,CAAC,qBAAqB,CAAC,CAAY;IAC1C,OAAO,CAAC,oBAAoB,CAAC,CAAY;IACzC,OAAO,CAAC,sBAAsB,CAAC,CAAY;IAC3C,OAAO,CAAC,qBAAqB,CAAC,CAAY;IAC1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyD;gBAEnD,OAAO,EAAE,UAAU;IAEhD,OAAO,CAAC,kBAAkB;YAMZ,qBAAqB;YAcrB,oBAAoB;YAcpB,wBAAwB;YAcxB,uBAAuB;YAcvB,yBAAyB;YAczB,wBAAwB;IAchC,YAAY,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAM7C,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAKhD,eAAe,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAMhD,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAKnD,gBAAgB,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAMjD,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;YAK5C,IAAI;YASJ,MAAM;IAcpB,OAAO,CAAC,UAAU;CAInB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as jose from 'jose';
|
|
2
2
|
import fs from 'node:fs';
|
|
3
3
|
import { InternalServerError } from '@volontariapp/errors';
|
|
4
|
+
import { Logger } from '@volontariapp/logger';
|
|
4
5
|
import { CONFIG_ERROR, INVALID_TOKEN_PAYLOAD, VERIFY_TOKEN_FAILED, } from '@volontariapp/errors-nest';
|
|
5
6
|
export class JwtService {
|
|
6
7
|
options;
|
|
@@ -10,6 +11,7 @@ export class JwtService {
|
|
|
10
11
|
accessTokenPublicKey;
|
|
11
12
|
refreshTokenPrivateKey;
|
|
12
13
|
refreshTokenPublicKey;
|
|
14
|
+
logger = new Logger({ context: 'JwtService', format: 'json' });
|
|
13
15
|
constructor(options) {
|
|
14
16
|
this.options = options;
|
|
15
17
|
}
|
|
@@ -154,6 +156,7 @@ export class JwtService {
|
|
|
154
156
|
catch (error) {
|
|
155
157
|
if (error instanceof InternalServerError)
|
|
156
158
|
throw error;
|
|
159
|
+
this.logger.error(`Failed to verify ${type} token`, error);
|
|
157
160
|
throw VERIFY_TOKEN_FAILED(type, error.message);
|
|
158
161
|
}
|
|
159
162
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jwt.service.js","sourceRoot":"","sources":["../../src/services/jwt.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,2BAA2B,CAAC;AAGnC,MAAM,OAAO,UAAU;
|
|
1
|
+
{"version":3,"file":"jwt.service.js","sourceRoot":"","sources":["../../src/services/jwt.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { describe, it, expect, beforeEach, beforeAll, jest, afterEach } from '@jest/globals';
|
|
2
2
|
import fs from 'node:fs';
|
|
3
|
+
import { Logger } from '@volontariapp/logger';
|
|
3
4
|
import * as jose from 'jose';
|
|
4
5
|
import { Test } from '@nestjs/testing';
|
|
5
6
|
import request from 'supertest';
|
|
@@ -28,6 +29,11 @@ describe('Full Auth Flow (Integration)', () => {
|
|
|
28
29
|
refreshTokenPrivate = await jose.exportPKCS8(refreshKeys.privateKey);
|
|
29
30
|
});
|
|
30
31
|
beforeEach(async () => {
|
|
32
|
+
jest.restoreAllMocks();
|
|
33
|
+
jest.spyOn(Logger.prototype, 'debug').mockImplementation(() => { });
|
|
34
|
+
jest.spyOn(Logger.prototype, 'info').mockImplementation(() => { });
|
|
35
|
+
jest.spyOn(Logger.prototype, 'warn').mockImplementation(() => { });
|
|
36
|
+
jest.spyOn(Logger.prototype, 'error').mockImplementation(() => { });
|
|
31
37
|
const config = {
|
|
32
38
|
accessTokenPublicKeyPath: 'access-public.pem',
|
|
33
39
|
accessTokenPrivateKeyPath: 'access-private.pem',
|
|
@@ -52,7 +58,7 @@ describe('Full Auth Flow (Integration)', () => {
|
|
|
52
58
|
return refreshTokenPublic;
|
|
53
59
|
if (path === 'refresh-private.pem')
|
|
54
60
|
return refreshTokenPrivate;
|
|
55
|
-
|
|
61
|
+
return '';
|
|
56
62
|
});
|
|
57
63
|
const moduleRef = await Test.createTestingModule({
|
|
58
64
|
controllers: [AuthTestController],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"full-auth-flow.int.spec.js","sourceRoot":"","sources":["../../../src/test/integration/full-auth-flow.int.spec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"full-auth-flow.int.spec.js","sourceRoot":"","sources":["../../../src/test/integration/full-auth-flow.int.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { describe, it, expect, beforeEach, beforeAll, jest } from '@jest/globals';
|
|
2
2
|
import fs from 'node:fs';
|
|
3
|
+
import { Logger } from '@volontariapp/logger';
|
|
3
4
|
import * as jose from 'jose';
|
|
4
5
|
import { Test } from '@nestjs/testing';
|
|
5
6
|
import { GrpcInternalGuard } from '../../guards/grpc-internal.guard.js';
|
|
@@ -32,6 +33,10 @@ describe('GrpcInternalGuard (Integration)', () => {
|
|
|
32
33
|
});
|
|
33
34
|
beforeEach(async () => {
|
|
34
35
|
jest.restoreAllMocks();
|
|
36
|
+
jest.spyOn(Logger.prototype, 'debug').mockImplementation(() => { });
|
|
37
|
+
jest.spyOn(Logger.prototype, 'info').mockImplementation(() => { });
|
|
38
|
+
jest.spyOn(Logger.prototype, 'warn').mockImplementation(() => { });
|
|
39
|
+
jest.spyOn(Logger.prototype, 'error').mockImplementation(() => { });
|
|
35
40
|
jest.spyOn(fs, 'readFileSync').mockImplementation((path) => {
|
|
36
41
|
if (path === 'internal-private-path')
|
|
37
42
|
return internalPrivate;
|
|
@@ -39,7 +44,7 @@ describe('GrpcInternalGuard (Integration)', () => {
|
|
|
39
44
|
return internalPublic;
|
|
40
45
|
if (path === 'gateway-public-path')
|
|
41
46
|
return gatewayPublic;
|
|
42
|
-
|
|
47
|
+
return '';
|
|
43
48
|
});
|
|
44
49
|
const module = await Test.createTestingModule({
|
|
45
50
|
providers: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grpc-internal.guard.int.spec.js","sourceRoot":"","sources":["../../../src/test/integration/grpc-internal.guard.int.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAGvE,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC/C,IAAI,KAAwB,CAAC;IAC7B,IAAI,UAAsB,CAAC;IAC3B,IAAI,eAAuB,CAAC;IAC5B,IAAI,cAAsB,CAAC;IAC3B,IAAI,aAAqB,CAAC;IAE1B,MAAM,MAAM,GAAe;QACzB,sBAAsB,EAAE,uBAAuB;QAC/C,qBAAqB,EAAE,sBAAsB;QAC7C,wBAAwB,EAAE,oBAAoB;QAC9C,iBAAiB,EAAE,IAAI;QACvB,oBAAoB,EAAE,IAAI;QAC1B,qBAAqB,EAAE,IAAI;KAC5B,CAAC;IAEF,SAAS,CAAC,KAAK,IAAI,EAAE;QACnB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QAChF,eAAe,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QAClE,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAE/D,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/E,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,IAAI,CAAC,eAAe,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"grpc-internal.guard.int.spec.js","sourceRoot":"","sources":["../../../src/test/integration/grpc-internal.guard.int.spec.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@volontariapp/auth",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.1.0-next.20260408123532",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public",
|
|
6
6
|
"provenance": true
|
|
@@ -34,8 +34,9 @@
|
|
|
34
34
|
"test:watch": "node --experimental-vm-modules $(yarn bin jest) --watch"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@volontariapp/errors": "0.
|
|
38
|
-
"@volontariapp/errors-nest": "0.
|
|
37
|
+
"@volontariapp/errors": "0.3.0-next.20260408123532",
|
|
38
|
+
"@volontariapp/errors-nest": "0.4.0-next.20260408123532",
|
|
39
|
+
"@volontariapp/logger": "0.2.0",
|
|
39
40
|
"jose": "^6.2.2",
|
|
40
41
|
"reflect-metadata": "^0.2.2",
|
|
41
42
|
"rxjs": "^7.8.1"
|