From 2002db200759bf6d94dd61f25be2c702f5852f72 Mon Sep 17 00:00:00 2001 From: Akhil Mohan Date: Thu, 18 Apr 2024 11:36:27 +0530 Subject: [PATCH] feat: updated oracle sql username generation to uppercase --- .../ee/services/dynamic-secret/providers/sql-database.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/backend/src/ee/services/dynamic-secret/providers/sql-database.ts b/backend/src/ee/services/dynamic-secret/providers/sql-database.ts index ff628664c..e711e3c5b 100644 --- a/backend/src/ee/services/dynamic-secret/providers/sql-database.ts +++ b/backend/src/ee/services/dynamic-secret/providers/sql-database.ts @@ -20,6 +20,13 @@ const generatePassword = (provider: SqlProviders) => { return customAlphabet(charset, 48)(size); }; +const generateUsername = (provider: SqlProviders) => { + // for oracle without quotes in client it assumes everything is uppercase + if (provider === SqlProviders.Oracle) return alphaNumericNanoId(32).toUpperCase(); + + return alphaNumericNanoId(32); +}; + export const SqlDatabaseProvider = (): TDynamicProviderFns => { const validateProviderInputs = async (inputs: unknown) => { const appCfg = getConfig(); @@ -74,7 +81,7 @@ export const SqlDatabaseProvider = (): TDynamicProviderFns => { const providerInputs = await validateProviderInputs(inputs); const db = await getClient(providerInputs); - const username = alphaNumericNanoId(32); + const username = generateUsername(providerInputs.client); const password = generatePassword(providerInputs.client); const { database } = providerInputs; const expiration = new Date(expireAt).toISOString();