From 03b18db8a0fb7e9dc2c44f6d26d8c6221b7748c4 Mon Sep 17 00:00:00 2001 From: taojinlong Date: Wed, 23 Apr 2025 11:52:27 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E8=BF=87=E6=BB=A4=20redshift=20?= =?UTF-8?q?=E9=9D=9E=E6=B3=95=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/io/dataease/datasource/type/Redshift.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/core/core-backend/src/main/java/io/dataease/datasource/type/Redshift.java b/core/core-backend/src/main/java/io/dataease/datasource/type/Redshift.java index e8bd8ecd35..ea266d73cd 100644 --- a/core/core-backend/src/main/java/io/dataease/datasource/type/Redshift.java +++ b/core/core-backend/src/main/java/io/dataease/datasource/type/Redshift.java @@ -1,18 +1,29 @@ package io.dataease.datasource.type; +import io.dataease.exception.DEException; import io.dataease.extensions.datasource.vo.DatasourceConfiguration; import lombok.Data; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Component; +import java.net.URLDecoder; +import java.util.Arrays; +import java.util.List; + @Data @Component("redshift") public class Redshift extends DatasourceConfiguration { private String driver = "com.amazon.redshift.jdbc42.Driver"; private String extraParams = ""; + private List illegalParameters = Arrays.asList("socketFactory", "socketFactoryArg"); public String getJdbc() { if(StringUtils.isNoneEmpty(getUrlType()) && !getUrlType().equalsIgnoreCase("hostName")){ + for (String illegalParameter : illegalParameters) { + if (URLDecoder.decode(getJdbcUrl()).contains(illegalParameter)) { + DEException.throwException("Illegal parameter: " + illegalParameter); + } + } return getJdbcUrl(); } return "jdbc:redshift://HOSTNAME:PORT/DATABASE"