You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@linkis.apache.org by pe...@apache.org on 2022/08/31 10:21:06 UTC
[incubator-linkis] branch dev-1.3.1 updated: [linkis-gateway-core] Modification of scala file floating red (#3153)
This is an automated email from the ASF dual-hosted git repository.
peacewong pushed a commit to branch dev-1.3.1
in repository https://gitbox.apache.org/repos/asf/incubator-linkis.git
The following commit(s) were added to refs/heads/dev-1.3.1 by this push:
new fd7d1a478 [linkis-gateway-core] Modification of scala file floating red (#3153)
fd7d1a478 is described below
commit fd7d1a4785ee9da19440e253971d8f7f538f6bae
Author: 成彬彬 <10...@users.noreply.github.com>
AuthorDate: Wed Aug 31 18:21:02 2022 +0800
[linkis-gateway-core] Modification of scala file floating red (#3153)
---
.../linkis/gateway/parser/GatewayParser.scala | 4 ++-
.../linkis/gateway/route/GatewayRouter.scala | 9 ++++--
.../linkis/gateway/security/GatewaySSOUtils.scala | 13 +++++----
.../linkis/gateway/security/LinkisPreFilter.scala | 2 +-
.../linkis/gateway/security/ProxyUserUtils.scala | 4 +--
.../linkis/gateway/security/SecurityFilter.scala | 2 +-
.../linkis/gateway/security/UserRestful.scala | 32 ++++------------------
.../gateway/security/sso/SSOInterceptor.scala | 4 +--
.../security/token/TokenAuthentication.scala | 2 --
9 files changed, 30 insertions(+), 42 deletions(-)
diff --git a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/parser/GatewayParser.scala b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/parser/GatewayParser.scala
index a493b61aa..91debac06 100644
--- a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/parser/GatewayParser.scala
+++ b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/parser/GatewayParser.scala
@@ -28,6 +28,8 @@ import org.apache.linkis.server.conf.ServerConfiguration
import org.apache.commons.lang3.StringUtils
+import java.util.Locale
+
trait GatewayParser {
def shouldContainRequestBody(gatewayContext: GatewayContext): Boolean
@@ -93,7 +95,7 @@ class DefaultGatewayParser(gatewayParsers: Array[GatewayParser]) extends Abstrac
s"/api/rest_[a-zA-Z]+/(v\\d+)/${AbstractGatewayParser.GATEWAY_HEART_BEAT_URL.mkString("/")}".r
override def shouldContainRequestBody(gatewayContext: GatewayContext): Boolean =
- gatewayContext.getRequest.getMethod.toUpperCase != "GET" &&
+ gatewayContext.getRequest.getMethod.toUpperCase(Locale.getDefault) != "GET" &&
(gatewayContext.getRequest.getRequestURI match {
case uri if uri.startsWith(ServerConfiguration.BDP_SERVER_USER_URI.getValue) => true
case _ => gatewayParsers.exists(_.shouldContainRequestBody(gatewayContext))
diff --git a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/route/GatewayRouter.scala b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/route/GatewayRouter.scala
index 3bd724988..1439d7761 100644
--- a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/route/GatewayRouter.scala
+++ b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/route/GatewayRouter.scala
@@ -31,6 +31,7 @@ import org.apache.commons.lang3.StringUtils
import org.apache.commons.lang3.exception.ExceptionUtils
import java.util
+import java.util.Locale
trait GatewayRouter {
@@ -88,7 +89,10 @@ abstract class AbstractGatewayRouter extends GatewayRouter with Logging {
tooManyDeal: List[String] => Option[String]
): Option[String] = {
val services = SpringCloudFeignConfigurationCache.getDiscoveryClient.getServices
- .filter(_.toLowerCase.contains(parsedServiceId.toLowerCase))
+ .filter(
+ _.toLowerCase(Locale.getDefault())
+ .contains(parsedServiceId.toLowerCase(Locale.getDefault()))
+ )
.toList
if (services.length == 1) Some(services.head)
else if (services.length > 1) tooManyDeal(services)
@@ -147,8 +151,9 @@ class DefaultGatewayRouter(var gatewayRouters: Array[GatewayRouter])
for (router <- gatewayRouters if serviceInstance == null) {
serviceInstance = router.route(gatewayContext)
}
- if (serviceInstance == null)
+ if (serviceInstance == null) {
serviceInstance = gatewayContext.getGatewayRoute.getServiceInstance
+ }
val service = findAndRefreshIfNotExists(
serviceInstance.getApplicationName,
findCommonService(serviceInstance.getApplicationName)
diff --git a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/GatewaySSOUtils.scala b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/GatewaySSOUtils.scala
index fb692c3a5..7bce0fe40 100644
--- a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/GatewaySSOUtils.scala
+++ b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/GatewaySSOUtils.scala
@@ -26,12 +26,12 @@ import org.apache.linkis.server.security.SecurityFilter._
import javax.servlet.http.Cookie
-import scala.collection.JavaConversions._
+import scala.collection.JavaConverters._
object GatewaySSOUtils extends Logging {
private def getCookies(gatewayContext: GatewayContext): Array[Cookie] =
- gatewayContext.getRequest.getCookies.flatMap(_._2).toArray
+ gatewayContext.getRequest.getCookies.asScala.flatMap(_._2).toArray
private val DOMAIN_REGEX = "[a-zA-Z][a-zA-Z0-9\\.]+".r
private val IP_REGEX = "([^:]+):.+".r
@@ -90,10 +90,11 @@ object GatewaySSOUtils extends Logging {
c => {
if (cookieDomainSetupSwitch) {
val host = gatewayContext.getRequest.getHeaders.get("Host")
- if (host != null && host.nonEmpty)
+ if (host != null && host.nonEmpty) {
c.setDomain(
getCookieDomain(host.head, GatewayConfiguration.GATEWAY_DOMAIN_LEVEL.getValue)
)
+ }
}
gatewayContext.getResponse.addCookie(c)
},
@@ -107,11 +108,13 @@ object GatewaySSOUtils extends Logging {
}
def removeLoginUser(gatewayContext: GatewayContext): Unit = {
- SSOUtils.removeLoginUser(gatewayContext.getRequest.getCookies.flatMap(_._2).toArray)
+ SSOUtils.removeLoginUser(gatewayContext.getRequest.getCookies.asScala.flatMap(_._2).toArray)
SSOUtils.removeLoginUserByAddCookie(c => gatewayContext.getResponse.addCookie(c))
}
def updateLastAccessTime(gatewayContext: GatewayContext): Unit =
- SSOUtils.updateLastAccessTime(gatewayContext.getRequest.getCookies.flatMap(_._2).toArray)
+ SSOUtils.updateLastAccessTime(
+ gatewayContext.getRequest.getCookies.asScala.flatMap(_._2).toArray
+ )
}
diff --git a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/LinkisPreFilter.scala b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/LinkisPreFilter.scala
index 8158f858f..984e85c5c 100644
--- a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/LinkisPreFilter.scala
+++ b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/LinkisPreFilter.scala
@@ -37,6 +37,6 @@ object LinkisPreFilter extends Logging {
preFilters.add(linkisPreFilter)
}
- def getLinkisPreFilters = preFilters
+ def getLinkisPreFilters: java.util.List[LinkisPreFilter] = preFilters
}
diff --git a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/ProxyUserUtils.scala b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/ProxyUserUtils.scala
index 71dd40adc..c7121b5ac 100644
--- a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/ProxyUserUtils.scala
+++ b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/ProxyUserUtils.scala
@@ -30,14 +30,14 @@ import java.util.concurrent.TimeUnit
object ProxyUserUtils extends Logging {
private val (props, file) =
- if (ENABLE_PROXY_USER.getValue)
+ if (ENABLE_PROXY_USER.getValue) {
(
new Properties,
new File(
this.getClass.getClassLoader.getResource(PROXY_USER_CONFIG.getValue).toURI.getPath
)
)
- else (null, null)
+ } else (null, null)
private var lastModified = 0L
diff --git a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/SecurityFilter.scala b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/SecurityFilter.scala
index 612f90f9e..5a5c4ccd0 100644
--- a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/SecurityFilter.scala
+++ b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/SecurityFilter.scala
@@ -90,7 +90,7 @@ object SecurityFilter extends Logging {
return false
}
// Security certification support, solving verb tampering(安全认证支持,解决动词篡改)
- gatewayContext.getRequest.getMethod.toUpperCase match {
+ gatewayContext.getRequest.getMethod.toUpperCase(Locale.getDefault()) match {
case "GET" | "POST" | "PUT" | "DELETE" | "HEAD" | "TRACE" | "CONNECT" | "OPTIONS" =>
case _ =>
filterResponse(
diff --git a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/UserRestful.scala b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/UserRestful.scala
index f546501b4..3df4a09d3 100644
--- a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/UserRestful.scala
+++ b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/UserRestful.scala
@@ -36,7 +36,7 @@ import org.apache.commons.lang3.StringUtils
import org.apache.commons.net.util.Base64
import java.nio.charset.StandardCharsets
-import java.util.Random
+import java.util.{Locale, Random}
import scala.collection.JavaConversions._
@@ -121,8 +121,9 @@ abstract class AbstractUserRestful extends UserRestful with Logging {
def logout(gatewayContext: GatewayContext): Message = {
GatewaySSOUtils.removeLoginUser(gatewayContext)
- if (GatewayConfiguration.ENABLE_SSO_LOGIN.getValue)
+ if (GatewayConfiguration.ENABLE_SSO_LOGIN.getValue) {
SSOInterceptor.getSSOInterceptor.logout(gatewayContext)
+ }
if (securityHooks != null) securityHooks.foreach(_.preLogout(gatewayContext))
"Logout successful(退出登录成功)!"
}
@@ -181,9 +182,9 @@ abstract class UserPwdAbstractUserRestful extends AbstractUserRestful with Loggi
if (
userNameArray != null && userNameArray.nonEmpty &&
passwordArray != null && passwordArray.nonEmpty
- )
+ ) {
(userNameArray.head, passwordArray.head)
- else if (StringUtils.isNotBlank(gatewayContext.getRequest.getRequestBody)) {
+ } else if (StringUtils.isNotBlank(gatewayContext.getRequest.getRequestBody)) {
val json = BDPJettyServerHelper.gson.fromJson(
gatewayContext.getRequest.getRequestBody,
classOf[java.util.Map[String, Object]]
@@ -272,7 +273,7 @@ abstract class UserPwdAbstractUserRestful extends AbstractUserRestful with Loggi
message = userControlLogin(userName, password, gatewayContext)
} else {
// standard login
- val lowerCaseUserName = userName.toLowerCase
+ val lowerCaseUserName = userName.toLowerCase(Locale.getDefault())
message = login(lowerCaseUserName, password)
clearExpireCookie(gatewayContext)
if (message.getStatus == 0) {
@@ -288,27 +289,6 @@ abstract class UserPwdAbstractUserRestful extends AbstractUserRestful with Loggi
}
}
- // private def getWorkspaceIdFromDSS(userName: String): util.List[Integer] = {
- // val sender: Sender = Sender.getSender(GatewayConfiguration.DSS_QUERY_WORKSPACE_SERVICE_NAME.getValue)
- // val requestUserWorkspace: RequestUserWorkspace = new RequestUserWorkspace(userName)
- // var resp: Any = null
- // var workspaceId: util.List[Integer] = null
- // Utils.tryCatch {
- // resp = sender.ask(requestUserWorkspace)
- // } {
- // case e: Exception =>
- // error(s"Call dss workspace rpc failed, ${e.getMessage}", e)
- // throw new GatewayErrorException(40010, s"向DSS工程服务请求工作空间ID失败, ${e.getMessage}")
- // }
- // resp match {
- // case s: ResponseUserWorkspace => workspaceId = s.getUserWorkspaceIds
- // case _ =>
- // throw new GatewayErrorException(40012, s"向DSS工程服务请求工作空间ID返回值失败,")
- // }
- // logger.info("Get userWorkspaceIds is " + workspaceId + ",and user is " + userName)
- // workspaceId
- // }
-
protected def login(userName: String, password: String): Message
private def getRandomProxyUser(): String = {
diff --git a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/sso/SSOInterceptor.scala b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/sso/SSOInterceptor.scala
index 016ba86d1..10179efb8 100644
--- a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/sso/SSOInterceptor.scala
+++ b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/sso/SSOInterceptor.scala
@@ -49,7 +49,7 @@ trait SSOInterceptor {
}
object SSOInterceptor {
- import scala.collection.JavaConversions._
+ import scala.collection.JavaConverters._
private var interceptor: SSOInterceptor = _
def getSSOInterceptor: SSOInterceptor = if (interceptor != null) interceptor
@@ -57,7 +57,7 @@ object SSOInterceptor {
val ssoInterceptors =
DataWorkCloudApplication.getApplicationContext.getBeansOfType(classOf[SSOInterceptor])
if (ssoInterceptors != null && !ssoInterceptors.isEmpty) {
- interceptor = ssoInterceptors.head._2
+ interceptor = ssoInterceptors.asScala.head._2
} else {
interceptor =
ClassUtils.getClassInstance(GatewayConfiguration.SSO_INTERCEPTOR_CLASS.getValue)
diff --git a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/token/TokenAuthentication.scala b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/token/TokenAuthentication.scala
index 06f0f1768..83f3cfdab 100644
--- a/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/token/TokenAuthentication.scala
+++ b/linkis-spring-cloud-services/linkis-service-gateway/linkis-gateway-core/src/main/scala/org/apache/linkis/gateway/security/token/TokenAuthentication.scala
@@ -28,8 +28,6 @@ import org.apache.commons.lang3.StringUtils
object TokenAuthentication extends Logging {
- // @Autowired
- // private var tokenService: TokenService = _ //Not working
private var tokenService: TokenService = _
def setTokenService(tokenService: TokenService): Unit = {
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@linkis.apache.org
For additional commands, e-mail: commits-help@linkis.apache.org