From 14bd747a0d4b3feea4de95f5b7b39afda64b1c74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?KERGUTUIL=20Th=C3=A9o?= <58176270+LeKer29@users.noreply.github.com> Date: Thu, 30 Nov 2023 14:59:19 +0100 Subject: [PATCH 1/2] chore(deps): upgrade @algoan/nestjs-logging-interceptor from ^2.1.14 to 2.4.0 --- package-lock.json | 35 +++++++++++++++++++---------------- package.json | 2 +- 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7aee10f..3a6edd7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "license": "UNLICENSED", "dependencies": { "@algoan/nestjs-http-exception-filter": "^1.0.16", - "@algoan/nestjs-logging-interceptor": "^2.1.14", + "@algoan/nestjs-logging-interceptor": "2.4.0", "@algoan/rest": "^2.7.0", "@nestjs/axios": "^0.0.8", "@nestjs/common": "^8.4.7", @@ -103,9 +103,12 @@ } }, "node_modules/@algoan/nestjs-logging-interceptor": { - "version": "2.1.14", - "resolved": "https://registry.npmjs.org/@algoan/nestjs-logging-interceptor/-/nestjs-logging-interceptor-2.1.14.tgz", - "integrity": "sha512-iGPSYiSdJeYAmCMGIQdlAP37VS8keqvLR7iEDFCoaD7x+M6gOrWwFsKvG4PP57ARNvIfgIuV9+fFkgm7NOXOrw==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@algoan/nestjs-logging-interceptor/-/nestjs-logging-interceptor-2.4.0.tgz", + "integrity": "sha512-mfXVF2skrpH4V6FJ6EiL4p91DEUEgQLKBmTc56hyS272JWqjGB7mX0AoljVJUCsmRtfhkJgj3RnW9i65dfnQKg==", + "dependencies": { + "flatted": "^3.2.9" + }, "peerDependencies": { "@nestjs/common": ">=5", "@nestjs/core": ">=5", @@ -8271,10 +8274,9 @@ } }, "node_modules/flatted": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", - "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", - "dev": true + "version": "3.2.9", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", + "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==" }, "node_modules/flush-write-stream": { "version": "1.1.1", @@ -20607,10 +20609,12 @@ } }, "@algoan/nestjs-logging-interceptor": { - "version": "2.1.14", - "resolved": "https://registry.npmjs.org/@algoan/nestjs-logging-interceptor/-/nestjs-logging-interceptor-2.1.14.tgz", - "integrity": "sha512-iGPSYiSdJeYAmCMGIQdlAP37VS8keqvLR7iEDFCoaD7x+M6gOrWwFsKvG4PP57ARNvIfgIuV9+fFkgm7NOXOrw==", - "requires": {} + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@algoan/nestjs-logging-interceptor/-/nestjs-logging-interceptor-2.4.0.tgz", + "integrity": "sha512-mfXVF2skrpH4V6FJ6EiL4p91DEUEgQLKBmTc56hyS272JWqjGB7mX0AoljVJUCsmRtfhkJgj3RnW9i65dfnQKg==", + "requires": { + "flatted": "^3.2.9" + } }, "@algoan/rest": { "version": "2.7.0", @@ -27016,10 +27020,9 @@ } }, "flatted": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", - "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", - "dev": true + "version": "3.2.9", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", + "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==" }, "flush-write-stream": { "version": "1.1.1", diff --git a/package.json b/package.json index 6fa9581..507a5ff 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ }, "dependencies": { "@algoan/nestjs-http-exception-filter": "^1.0.16", - "@algoan/nestjs-logging-interceptor": "^2.1.14", + "@algoan/nestjs-logging-interceptor": "2.4.0", "@algoan/rest": "^2.7.0", "@nestjs/axios": "^0.0.8", "@nestjs/common": "^8.4.7", From b7a172e63d4ceb96d9a628975850367ee3ab43c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?KERGUTUIL=20Th=C3=A9o?= <58176270+LeKer29@users.noreply.github.com> Date: Thu, 30 Nov 2023 15:02:14 +0100 Subject: [PATCH 2/2] feat: remove sensitive data from logs --- src/aggregator/services/bridge/bridge.client.ts | 11 ++--------- src/hooks/services/hooks.service.ts | 11 ++++------- 2 files changed, 6 insertions(+), 16 deletions(-) diff --git a/src/aggregator/services/bridge/bridge.client.ts b/src/aggregator/services/bridge/bridge.client.ts index 1f84bcf..4c849d6 100644 --- a/src/aggregator/services/bridge/bridge.client.ts +++ b/src/aggregator/services/bridge/bridge.client.ts @@ -47,20 +47,13 @@ export class BridgeClient { constructor(@Inject(CACHE_MANAGER) private readonly cacheManager: Cache, private readonly httpService: HttpService) { if (config.activateBridgeRequestInterceptor) { this.httpService.axiosRef.interceptors.request.use((_config: AxiosRequestConfig): AxiosRequestConfig => { - this.logger.log({ - config: _config, - message: `${_config.method} ${_config.url} - Request to Bridge`, - }); + this.logger.log(`${_config.method} ${_config.url} - Request to Bridge`); return _config; }); this.httpService.axiosRef.interceptors.response.use( async (response: AxiosResponse) => { - this.logger.log({ - message: `${response.config.method} ${response.config.url} - successfully responded`, - body: response.data, - headers: response.headers, - }); + this.logger.log(`${response.config.method} ${response.config.url} - successfully responded`); return Promise.resolve(response); }, diff --git a/src/hooks/services/hooks.service.ts b/src/hooks/services/hooks.service.ts index 3a315cf..417ad14 100644 --- a/src/hooks/services/hooks.service.ts +++ b/src/hooks/services/hooks.service.ts @@ -61,7 +61,7 @@ export class HooksService { const aggregationStartDate: Date = new Date(); const serviceAccount = this.algoanService.algoanClient.getServiceAccountBySubscriptionId(event.subscription.id); - this.logger.debug(serviceAccount, `Found a service account for subscription "${event.subscription.id}"`); + this.logger.debug(`Found a service account for subscription "${event.subscription.id}"`); if (serviceAccount === undefined) { throw new UnauthorizedException(`No service account found for subscription ${event.subscription.id}`); @@ -144,7 +144,7 @@ export class HooksService { // Get user information and client config const customer: Customer = await this.algoanCustomerService.getCustomerById(payload.customerId); - this.logger.debug({ customer, serviceAccount }, `Found Customer with id ${customer.id}`); + this.logger.debug(`Found Customer with id ${customer.id}`); const aggregationDetails: AggregationDetails = { aggregatorName: AggregationDetailsAggregatorName.BRIDGE, @@ -203,7 +203,7 @@ export class HooksService { // Get customer information const customer: Customer = await this.algoanCustomerService.getCustomerById(payload.customerId); - this.logger.debug({ customer, serviceAccount }, `Found Customer with id ${customer.id}`); + this.logger.debug(`Found Customer with id ${customer.id}`); // Retrieves an access token from Bridge to access to the user accounts const authenticationResponse: AuthenticationResponse = await this.aggregator.getAccessToken( @@ -232,10 +232,7 @@ export class HooksService { // Retrieves Bridge banks accounts const accounts: BridgeAccount[] = await this.aggregator.getAccounts(accessToken, saConfig); - this.logger.debug({ - message: `Bridge accounts retrieved for Customer "${customer.id}"`, - accounts, - }); + this.logger.debug(`Bridge accounts retrieved for Customer "${customer.id}"`); // Get account information let accountInfo: AccountInformation[] = [];