diff --git a/server/bundles/io.cloudbeaver.service.security/src/io/cloudbeaver/service/security/CBEmbeddedSecurityController.java b/server/bundles/io.cloudbeaver.service.security/src/io/cloudbeaver/service/security/CBEmbeddedSecurityController.java index 81f1fd7e0c..629f26a39a 100644 --- a/server/bundles/io.cloudbeaver.service.security/src/io/cloudbeaver/service/security/CBEmbeddedSecurityController.java +++ b/server/bundles/io.cloudbeaver.service.security/src/io/cloudbeaver/service/security/CBEmbeddedSecurityController.java @@ -411,7 +411,14 @@ public class CBEmbeddedSecurityController @NotNull Connection dbCon, @NotNull String userId, @NotNull String[] teamIds - ) throws SQLException { + ) throws SQLException, DBCException { + String defaultTeam = getDefaultUserTeam(); + if (ArrayUtils.contains(teamIds, defaultTeam)) { + throw new SMException("Cannot delete default user team: " + defaultTeam); + } + if (ArrayUtils.isEmpty(teamIds)) { + return; + } String deleteUserTeamsSql = "DELETE FROM {table_prefix}CB_USER_TEAM WHERE USER_ID=? " + "AND TEAM_ID IN (" + SQLUtils.generateParamList(teamIds.length) + ")";