From 7c26b01be688d38279bbf7141f79dcea10608def Mon Sep 17 00:00:00 2001 From: Eli Bosley Date: Fri, 23 May 2025 12:01:12 -0400 Subject: [PATCH] fix: some redaction and fix constructor --- api/src/core/log.ts | 17 ++++++++++++++++- .../resolvers/rclone/rclone-api.service.ts | 13 +++++-------- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/api/src/core/log.ts b/api/src/core/log.ts index cf0a40c20..3d53e29c8 100644 --- a/api/src/core/log.ts +++ b/api/src/core/log.ts @@ -28,10 +28,25 @@ const stream = export const logger = pino( { level, - timestamp: () => `,"time":"${new Date().toISOString()}"`, + timestamp: () => `,"time":"${new Date().toISOString()}",`, formatters: { level: (label: string) => ({ level: label }), }, + redact: { + paths: [ + '*.password', + '*.pass', + '*.secret', + '*.token', + '*.key', + '*.Password', + '*.Pass', + '*.Secret', + '*.Token', + '*.Key', + ], + censor: '***REDACTED***', + }, }, stream ); diff --git a/api/src/unraid-api/graph/resolvers/rclone/rclone-api.service.ts b/api/src/unraid-api/graph/resolvers/rclone/rclone-api.service.ts index f0c2a147e..267e98e9c 100644 --- a/api/src/unraid-api/graph/resolvers/rclone/rclone-api.service.ts +++ b/api/src/unraid-api/graph/resolvers/rclone/rclone-api.service.ts @@ -49,14 +49,11 @@ export class RCloneApiService implements OnModuleInit, OnModuleDestroy { private rcloneSocketPath: string = ''; private rcloneBaseUrl: string = ''; private rcloneProcess: ChildProcess | null = null; - private readonly rcloneUsername: string; - private readonly rclonePassword: string; - constructor(username?: string, password?: string) { - this.rcloneUsername = - username || process.env.RCLONE_USERNAME || crypto.randomBytes(12).toString('base64'); - this.rclonePassword = - password || process.env.RCLONE_PASSWORD || crypto.randomBytes(24).toString('base64'); - } + private readonly rcloneUsername: string = + process.env.RCLONE_USERNAME || crypto.randomBytes(12).toString('base64'); + private readonly rclonePassword: string = + process.env.RCLONE_PASSWORD || crypto.randomBytes(24).toString('base64'); + constructor() {} async onModuleInit(): Promise { try {