From 90cfc4459292fbf022ee037bf22cea3b82eaa8b6 Mon Sep 17 00:00:00 2001 From: Daniel Hougaard Date: Wed, 19 Feb 2025 07:17:14 +0400 Subject: [PATCH] fix: personal secret support without read value permission --- .../services/secret-v2-bridge/secret-v2-bridge-service.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/backend/src/services/secret-v2-bridge/secret-v2-bridge-service.ts b/backend/src/services/secret-v2-bridge/secret-v2-bridge-service.ts index b2c3f5937..466c92034 100644 --- a/backend/src/services/secret-v2-bridge/secret-v2-bridge-service.ts +++ b/backend/src/services/secret-v2-bridge/secret-v2-bridge-service.ts @@ -950,6 +950,8 @@ export const secretV2BridgeServiceFactory = ({ ); }) .map((secret) => { + const isPersonalSecret = secret.userId === actorId && secret.type === SecretType.Personal; + const secretValueHidden = !viewSecretValue || !permission.can( @@ -975,7 +977,7 @@ export const secretV2BridgeServiceFactory = ({ ? secretManagerDecryptor({ cipherTextBlob: secret.encryptedComment }).toString() : "" }, - secretValueHidden + secretValueHidden && !isPersonalSecret ); }); @@ -1244,7 +1246,8 @@ export const secretV2BridgeServiceFactory = ({ secretName, secretTags: (secret?.tags || []).map((el) => el.slug) }) - ) + ) && + secretType !== SecretType.Personal ) { throw new ForbiddenReadSecretError({ message: `You do not have permission to view secret value on secret with name '${secretName}'`