WeBankFinTech / DataSphereStudio

DataSphereStudio is a one stop data application development& management portal, covering scenarios including data exchange, desensitization/cleansing, analysis/mining, quality measurement, visualization, and task scheduling.
https://github.com/WeBankFinTech/DataSphereStudio-Doc
Apache License 2.0
3.04k stars 999 forks source link

DSS redirects to dolphinshscheduler and prompts user not logged in #1110

Open tuigerphkeeper opened 1 year ago

tuigerphkeeper commented 1 year ago

Search before asking

DSS Component

dss-appconn

What happened + What you expected to happen

image

Relevent platform

2023-08-28 14:56:40.755 [ERROR] [reactor-http-epoll-1 ] o.a.l.g.s.SecurityFilter$ (117) [apply] [JobId-] - login failed! Reason: login failed! reason: NonLoginException: errCode: 11002 ,desc: You are not logged in, please login first(您尚未登录,请先登录!) ,ip: lc-node2 ,port: 9001 ,serviceKind: linkis-mg-gateway org.apache.linkis.server.exception.NonLoginException: errCode: 11002 ,desc: You are not logged in, please login first(您尚未登录,请先登录!) ,ip: lc-node2 ,port: 9001 ,serviceKind: linkis-mg-gateway at org.apache.linkis.server.security.SSOUtils$$anonfun$getLoginUsername$1.apply(SSOUtils.scala:165) ~[linkis-module-1.4.0.jar:1.4.0] at org.apache.linkis.server.security.SSOUtils$$anonfun$getLoginUsername$1.apply(SSOUtils.scala:165) ~[linkis-module-1.4.0.jar:1.4.0] at scala.Option.getOrElse(Option.scala:121) ~[scala-library-2.11.12.jar:?] at org.apache.linkis.server.security.SSOUtils$.getLoginUsername(SSOUtils.scala:164) ~[linkis-module-1.4.0.jar:1.4.0] at org.apache.linkis.gateway.security.GatewaySSOUtils$.getLoginUsername(GatewaySSOUtils.scala:85) ~[linkis-gateway-core-1.4.0.jar:1.4.0] at org.apache.linkis.gateway.security.AbstractUserRestful.userInfo(UserRestful.scala:141) ~[linkis-gateway-core-1.4.0.jar:1.4.0] at org.apache.linkis.gateway.security.AbstractUserRestful.doUserRequest(UserRestful.scala:87) ~[linkis-gateway-core-1.4.0.jar:1.4.0] at org.apache.linkis.gateway.security.SecurityFilter$$anonfun$doFilter$1.apply$mcV$sp(SecurityFilter.scala:112) ~[linkis-gateway-core-1.4.0.jar:1.4.0] at org.apache.linkis.gateway.security.SecurityFilter$$anonfun$doFilter$1.apply(SecurityFilter.scala:112) ~[linkis-gateway-core-1.4.0.jar:1.4.0] at org.apache.linkis.gateway.security.SecurityFilter$$anonfun$doFilter$1.apply(SecurityFilter.scala:112) ~[linkis-gateway-core-1.4.0.jar:1.4.0] at org.apache.linkis.common.utils.Utils$.tryCatch(Utils.scala:49) ~[linkis-common-1.4.0.jar:1.4.0] at org.apache.linkis.gateway.security.SecurityFilter$.doFilter(SecurityFilter.scala:112) ~[linkis-gateway-core-1.4.0.jar:1.4.0] at org.apache.linkis.gateway.security.SecurityFilter.doFilter(SecurityFilter.scala) ~[linkis-gateway-core-1.4.0.jar:1.4.0] at org.apache.linkis.gateway.springcloud.http.GatewayAuthorizationFilter.gatewayDeal(GatewayAuthorizationFilter.java:147) ~[linkis-spring-cloud-gateway-1.4.0.jar:1.4.0] at org.apache.linkis.gateway.springcloud.http.GatewayAuthorizationFilter.filter(GatewayAuthorizationFilter.java:283) ~[linkis-spring-cloud-gateway-1.4.0.jar:1.4.0] at org.springframework.cloud.gateway.handler.FilteringWebHandler$GatewayFilterAdapter.filter(FilteringWebHandler.java:138) ~[spring-cloud-gateway-server-2.2.9.RELEASE.jar:2.2.9.RELEASE] at org.springframework.cloud.gateway.filter.OrderedGatewayFilter.filter(OrderedGatewayFilter.java:44) ~[spring-cloud-gateway-server-2.2.9.RELEASE.jar:2.2.9.RELEASE] at org.springframework.cloud.gateway.handler.FilteringWebHandler$DefaultGatewayFilterChain.lambda$filter$0(FilteringWebHandler.java:118) ~[spring-cloud-gateway-server-2.2.9.RELEASE.jar:2.2.9.RELEASE] at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:44) ~[reactor-core-3.3.17.RELEASE.jar:3.3.17.RELEASE] at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64) ~[reactor-core-3.3.17.RELEASE.jar:3.3.17.RELEASE] at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) ~[reactor-core-3.3.17.RELEASE.jar:3.3.17.RELEASE] at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) ~[reactor-core-3.3.17.RELEASE.jar:3.3.17.RELEASE] at reactor.core.publisher.Mono.subscribe(Mono.java:4252) ~[reactor-core-3.3.17.RELEASE.jar:3.3.17.RELEASE] ### Reproduction script [WARN] 2023-08-28 14:56:40.757 org.eclipse.jetty.server.HttpChannel:[600] - /dolphinscheduler/projects/analysis/define-user-count org.apache.linkis.httpclient.exception.HttpClientResultException: errCode: 10905 ,desc: URL /api/rest_j/v1/user/userInfo request failed! ResponseBody is {"method":"/api/rest_j/v1 /user/userInfo","status":1,"message":"login failed! reason: NonLoginException: errCode: 11002 ,desc: You are not logged in, please login first(您尚未登录,请先登录!) ,ip: lc-node 2 ,port: 9001 ,serviceKind: linkis-mg-gateway","data":{}}. errCode: 10905 ,desc: URL /api/rest_j/v1/user/userInfo request failed! ResponseBody is {"method":"/api/rest_j/v1/user/u serInfo","status":1,"message":"login failed! reason: NonLoginException: errCode: 11002 ,desc: You are not logged in, please login first(您尚未登录,请先登录!) ,ip: lc-node2 ,port : 9001 ,serviceKind: linkis-mg-gateway","data":{}}. ,ip: null ,port: 0 ,serviceKind: null ,ip: null ,port: 0 ,serviceKind: null at org.apache.linkis.httpclient.dws.response.DWSResult$$anonfun$set$2.apply(DWSResult.scala:85) at org.apache.linkis.httpclient.dws.response.DWSResult$$anonfun$set$2.apply(DWSResult.scala:84) at org.apache.linkis.common.utils.Utils$.tryCatch(Utils.scala:69) at org.apache.linkis.httpclient.dws.response.DWSResult$class.set(DWSResult.scala:84) at com.webank.wedatasphere.dss.standard.app.sso.origin.plugin.UserInfoResult.set(UserInfoResult.scala:26) at org.apache.linkis.httpclient.dws.DWSHttpClient$$anonfun$httpResponseToResult$1.apply(DWSHttpClient.scala:83) at org.apache.linkis.httpclient.dws.DWSHttpClient$$anonfun$httpResponseToResult$1.apply(DWSHttpClient.scala:79) at scala.Option.map(Option.scala:146) at org.apache.linkis.httpclient.dws.DWSHttpClient.httpResponseToResult(DWSHttpClient.scala:79) at org.apache.linkis.httpclient.AbstractHttpClient$$anonfun$responseToResult$2.apply(AbstractHttpClient.scala:537) at org.apache.linkis.httpclient.AbstractHttpClient$$anonfun$responseToResult$2.apply(AbstractHttpClient.scala:480) at org.apache.linkis.common.utils.Utils$.tryFinally(Utils.scala:77) at org.apache.linkis.httpclient.AbstractHttpClient.responseToResult(AbstractHttpClient.scala:549) at org.apache.linkis.httpclient.AbstractHttpClient.execute(AbstractHttpClient.scala:174) at org.apache.linkis.httpclient.AbstractHttpClient.execute(AbstractHttpClient.scala:127) at com.webank.wedatasphere.dss.standard.app.sso.origin.plugin.OriginSSOMsgParseOperation$$anonfun$getUser$2.apply(OriginSSOMsgParseOperation.scala:35) at com.webank.wedatasphere.dss.standard.app.sso.origin.plugin.OriginSSOMsgParseOperation$$anonfun$getUser$2.apply(OriginSSOMsgParseOperation.scala:33) at org.apache.linkis.common.utils.Utils$.tryFinally(Utils.scala:77) at com.webank.wedatasphere.dss.standard.app.sso.origin.plugin.OriginSSOMsgParseOperation.getUser(OriginSSOMsgParseOperation.scala:41) at com.webank.wedatasphere.dss.standard.app.sso.plugin.AbstractSSOMsgParseOperation.getSSOMsg(AbstractSSOMsgParseOperation.java:48) at com.webank.wedatasphere.dss.standard.app.sso.plugin.filter.SSOPluginFilter.doFilter(SSOPluginFilter.scala:60) at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1609) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1609) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1609) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1609) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:561) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1612) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1582) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:766) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.Server.handle(Server.java:516) at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383) at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:556) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:273) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:773) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:905) at java.lang.Thread.run(Thread.java:750) [INFO] 2023-08-28 14:56:40.758 org.apache.dolphinscheduler.api.security.PasswordAuthenticator:[70] - session info is null [INFO] 2023-08-28 14:56:40.758 org.apache.dolphinscheduler.api.interceptor.LoginHandlerInterceptor:[67] - user does not exist ### Anything else If I create a project in DSS, the dolphinscheduler can be successfully created, and the relevant jar packages are available。I have tried using the official dss dolphinscheduler token package that others can compile and use to replace all libs in dss, using tokens with the same username, but none of them worked。 image image image image ### Are you willing to submit a PR? - [ ] Yes I am willing to submit a PR!