From a2c18f78a70f190b23b294a56de70da900545251 Mon Sep 17 00:00:00 2001 From: Alexander Skoblikov Date: Wed, 24 May 2023 22:34:05 +0200 Subject: [PATCH] CB-2973 reset all password properties on save (#1681) * CB-2973 reset all password properties on save * CB-2973 copy auth props in test connection --- .../src/io/cloudbeaver/WebServiceUtils.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/WebServiceUtils.java b/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/WebServiceUtils.java index f795c0bb8a..2b58d2c037 100644 --- a/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/WebServiceUtils.java +++ b/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/WebServiceUtils.java @@ -231,19 +231,23 @@ public class WebServiceUtils extends WebCommonUtils { authProperties = new LinkedHashMap<>(); } authProperties.replace(AuthModelDatabaseNativeCredentials.PROP_USER_PASSWORD, null); + dataSourceContainer.resetPassword(); } else { if (authProperties == null) { // No changes return; } } - if (!saveCredentials) { - configuration.setUserPassword(null); - } { // Read save credentials DBAAuthCredentials credentials = configuration.getAuthModel().loadCredentials(dataSourceContainer, configuration); + var currentAuthProps = new HashMap(); + for (Map.Entry stringObjectEntry : authProperties.entrySet()) { + var value = stringObjectEntry.getValue() == null ? null : stringObjectEntry.getValue().toString(); + currentAuthProps.put(stringObjectEntry.getKey(), value); + } + configuration.setAuthProperties(currentAuthProps); if (!authProperties.isEmpty()) { // Make new Gson parser with type adapters to deserialize into existing credentials