From e2b666345b7f75e5bf083f55c79036b24bf635ac Mon Sep 17 00:00:00 2001 From: akhilmhdh Date: Mon, 24 Jul 2023 20:53:59 +0530 Subject: [PATCH] fix: resolved secret import delete and include_import response control --- .../controllers/v1/secretImportController.ts | 1 - .../src/controllers/v2/secretsController.ts | 2 +- .../src/controllers/v3/secretsController.ts | 21 +++++++++++-------- backend/src/routes/v1/secretImport.ts | 2 +- 4 files changed, 14 insertions(+), 12 deletions(-) diff --git a/backend/src/controllers/v1/secretImportController.ts b/backend/src/controllers/v1/secretImportController.ts index a55b20a949..4b6539930d 100644 --- a/backend/src/controllers/v1/secretImportController.ts +++ b/backend/src/controllers/v1/secretImportController.ts @@ -30,7 +30,6 @@ export const createSecretImport = async (req: Request, res: Response) => { if (doesImportExist) { throw BadRequestError({ message: "Secret import already exist" }); } - importSecDoc.imports.push({ environment: secretImport.environment, secretPath: secretImport.secretPath diff --git a/backend/src/controllers/v2/secretsController.ts b/backend/src/controllers/v2/secretsController.ts index ea8098e375..284c69c09b 100644 --- a/backend/src/controllers/v2/secretsController.ts +++ b/backend/src/controllers/v2/secretsController.ts @@ -830,7 +830,7 @@ export const getSecrets = async (req: Request, res: Response) => { // TODO(akhilmhdh) - secret-imp change this to org type let importedSecrets: any[] = []; - if (include_imports) { + if (include_imports === "true") { importedSecrets = await getAllImportedSecrets(workspaceId, environment, folderId as string); } diff --git a/backend/src/controllers/v3/secretsController.ts b/backend/src/controllers/v3/secretsController.ts index 4399b4be0e..5aa1755417 100644 --- a/backend/src/controllers/v3/secretsController.ts +++ b/backend/src/controllers/v3/secretsController.ts @@ -25,14 +25,17 @@ export const getSecretsRaw = async (req: Request, res: Response) => { let secretPath = req.query.secretPath as string; const includeImports = req.query.include_imports as string; - // if the service token has single scope, it will get all secrets for that scope by default - const serviceTokenDetails: IServiceTokenData = req?.serviceTokenData + // if the service token has single scope, it will get all secrets for that scope by default + const serviceTokenDetails: IServiceTokenData = req?.serviceTokenData; if (serviceTokenDetails) { - if (serviceTokenDetails.scopes.length == 1 && !containsGlobPatterns(serviceTokenDetails.scopes[0].secretPath)) { - const scope = serviceTokenDetails.scopes[0] - secretPath = scope.secretPath - environment = scope.environment - workspaceId = serviceTokenDetails.workspace.toString() + if ( + serviceTokenDetails.scopes.length == 1 && + !containsGlobPatterns(serviceTokenDetails.scopes[0].secretPath) + ) { + const scope = serviceTokenDetails.scopes[0]; + secretPath = scope.secretPath; + environment = scope.environment; + workspaceId = serviceTokenDetails.workspace.toString(); } else { requireWorkspaceAuth({ acceptedRoles: [ADMIN, MEMBER], @@ -41,7 +44,7 @@ export const getSecretsRaw = async (req: Request, res: Response) => { requiredPermissions: [PERMISSION_READ_SECRETS], requireBlindIndicesEnabled: true, requireE2EEOff: true - }) + }); } } @@ -294,7 +297,7 @@ export const getSecrets = async (req: Request, res: Response) => { authData: req.authData }); - if (includeImports) { + if (includeImports === "true") { const folders = await Folder.findOne({ workspace: workspaceId, environment }); let folderId = "root"; // if folder exist get it and replace folderid with new one diff --git a/backend/src/routes/v1/secretImport.ts b/backend/src/routes/v1/secretImport.ts index 60ed16bc81..655fbd9338 100644 --- a/backend/src/routes/v1/secretImport.ts +++ b/backend/src/routes/v1/secretImport.ts @@ -46,7 +46,7 @@ router.delete( body("secretImportPath").isString().exists().trim(), body("secretImportEnv").isString().exists().trim(), validateRequest, - secretImportController.updateSecretImport + secretImportController.deleteSecretImport ); router.get(