永洪社区

标题: 永洪打开失败,紧急!!! [打印本页]

作者: yhdata_abPYbqxf    时间: 2022-4-25 18:22
标题: 永洪打开失败,紧急!!!
麻烦问个问题,假如我一台服务器的项目集成了永洪,永洪那边我也配置了回调地址,只不过永洪没有域名,走的是IP,那会不会打开报表的时候出现登录的情况,另外登录之后会登录不了啊,这个是跨越问题吗?是不是两边都是域名就好了,目前来看项目里面打开永洪的时候,永洪报表地址返回失败



作者: 永洪tech-Jason    时间: 2022-4-25 18:22
您好,可以从几方面方面排查:
1、是否跨域,可以用ie去试下,访问集成页面,然后在集成页面打开永洪报告是否正常
2、单点是否成功,可以看bi日志,日志类似如下,有如下日志,说明单点成功。
[2022-04-26 21:26:04.285] |-[INFO] |-[c46b770849b744059d9d93cb79fbb941] |-[SYSTEM] |-[g5.sv.standardsso.SSOLoginFilter.postMethod(SSOLoginFilter.java:277)] |-[OTHER:   valid token result: http status code=200, and result=<{"result": "success", "userId": "admin", "userAlias": "", "userEmail": "admin@qq.com", "userRoles": "", "userGroups": "", "param": {"key": "value"}}>]
3、另外单点登录用户如果在永洪系统不存在,需要配置参数才能自动创建:
standardsso.autoCreateUser=true,具体参考文档配置:https://www.yonghongtech.com/help/Z-Suite/9.4/ch/sso.html


作者: 永洪tech-cp    时间: 2022-4-25 19:36
您好,这几个问题需要确认一下:
1.请问集成是走的单点登录吗?
2.登录不了的情况麻烦通过浏览器开发者工具提供一下报错信息,再看下是否是跨域问题
3.永洪报表地址返回失败的日志麻烦提供一下
作者: yhdata_abPYbqxf    时间: 2022-4-25 19:43
1.项目里面加了单点的方法,bi.properties里面也配置了项目回调地址的路径,这个路径也是好的
2.http://124.71.168.130:8080/bi/?p ... ReportFormsCode=ZJT地址如下,network无返回结果,获取是请求失败
3.永洪报表地址返回失败日志在哪个目录?
作者: yhdata_abPYbqxf    时间: 2022-4-25 19:45
永洪tech-cp 发表于 2022-4-25 19:36
您好,这几个问题需要确认一下:
1.请问集成是走的单点登录吗?
2.登录不了的情况麻烦通过浏览器开发者工具 ...

1.项目信息中写了单点的接口也就是回调地址,在bi.properties中也有配置,接口也有对应的返回信息
2.在开发者工具中network里面没有相应的返回信息
3.报表地址返回失败日志在哪个目录下?
作者: yhdata_abPYbqxf    时间: 2022-4-25 19:52
这个是对应页面
作者: 永洪tech-cp    时间: 2022-4-25 19:55
network里面没有返回信息应该不是跨域的问题

作者: 永洪tech-cp    时间: 2022-4-25 20:18
chrome same-site 安全限制会导致 内嵌的iframe中返回的cookie写失败;
因此新的请求还是没有携带正确的 sessionid,所以又跳转到登录页面;

解决办法:tomcat 配置 https, same-site 为 none;
作者: yhdata_abPYbqxf    时间: 2022-4-25 23:18
network里面没有返回信息应该不是跨域的问题,这是返回对应的内容,刚刚看错了,这是返回的信息,直接返回的就是登录页面的html,另外这个url中http://yh.ganso.net:8080/bi/?pro ... ReportFormsCode=ZJT,yh.ganso.net为我在Linux服务器中host文件中映射的域名,请问是不是需要生成一个永洪的https域名就好了?
作者: yhdata_abPYbqxf    时间: 2022-4-25 23:20
永洪tech-cp 发表于 2022-4-25 20:18
chrome same-site 安全限制会导致 内嵌的iframe中返回的cookie写失败;
因此新的请求还是没有携带正确的 se ...

http://yh.ganso.net:8080/bi/?proc=1&action=viewer&hback=true&isInPreview=true&db=!5143!!7956!!98df!!54c1!BI!2f!!96c6!!56e2!!9500!!91cf!_1_9_5.db&platform=PC&browserType=chrome&PHONE=&theBoReportFormsCode=ZJT,这个是我在Linux服务器host中映射的域名,请问是不是把永洪配置上https的域名就好了?我这边服务器映射的虽然是域名但是还是http,导致打开这个url的时候就显示的登录页面

作者: yhdata_abPYbqxf    时间: 2022-4-26 08:53
这是对应的截图,其中http://yh.ganso.net:8080/bi/?pro ... e=chrome&PHONE=,yh.ganso.net是Linux服务器host文件映射的域名
作者: _贝贝    时间: 2022-4-26 10:16
tomcat配置https可以参考下这个
https://club.yonghongtech.com/fo ... amp;highlight=https
作者: yhdata_abPYbqxf    时间: 2022-4-26 12:30
之前别的spring boot项目做集成的时候只是配置了域名,就集成好了,为什么这次还需要配置https?
作者: _贝贝    时间: 2022-4-26 13:12
yhdata_abPYbqxf 发表于 2022-4-26 12:30
之前别的spring boot项目做集成的时候只是配置了域名,就集成好了,为什么这次还需要配置https? ...

是同一个版本吗 哪个版本呢 谷歌浏览器又是什么版本
作者: yhdata_abPYbqxf    时间: 2022-4-26 14:17
谷歌最新版本的,永洪是9.2,只不过这个项目是spring项目
作者: _贝贝    时间: 2022-4-26 14:37
yhdata_abPYbqxf 发表于 2022-4-26 14:17
谷歌最新版本的,永洪是9.2,只不过这个项目是spring项目

可以测试使用版本80以下的谷歌有问题吗  

配置https还是不行?
作者: yhdata_abPYbqxf    时间: 2022-4-26 15:59
永洪服务器搭建之后单点也设置了,设置的portal的开发环境接口,然后因为是两台服务器,所以会出现跨越的问题,所以我在portal服务器的host文件中进行了域名映射, 124.71.168.130 bbb.ganso.net
122.112.154.54 bds.ganso.net
随后portal打开报表的时候我也把IP写成了域名,然后打开报表就出现登录页面
没有配置https,因为之前只要配置双向域名就好了,难道非要配置成https?
作者: yhdata_abPYbqxf    时间: 2022-4-26 16:46
我感觉好像没有单点成功,因为我报表后面加上&token=的话,就会提示我提示
详细信息:调用http://bds.ganso.net:8080/core/hdm/user/yh/checkToken返回为空
,如果不加token的话就是登录页面,另外http://bds.ganso.net:8080/core/hdm/user/yh/checkToken单点回调地址返回结果是{"result":"success","userId":"admin"}
作者: 0xRichard    时间: 2022-4-26 17:12
http://bds.ganso.net:8080/core/hdm/user/yh/checkToken返回为空,用postman测试页面提示返回为空的这个接口 是否正常返回用户信息了
作者: yhdata_abPYbqxf    时间: 2022-4-26 21:17
我都把用户写死了直接返回了都不行
作者: yhdata_abPYbqxf    时间: 2022-4-26 21:17
String userName = "admin";

            StringBuilder responseStr = new StringBuilder();
            //查询登录用户对应的永洪用户名
            if (userName != null) {
                //token验证通过就返回当前登录用户。对应永洪系统中的用户名。
                //responseStr.append("{\"result\":\"success\",\"userId\":\"admin\"}");
                responseStr.append("{\"result\":\"success\",\"userId\":\"" + userName + "\"}");
            } else {
                responseStr.append("{\"error\":\"james\"}");
            }
            response.getWriter().write(responseStr.toString());
作者: yhdata_abPYbqxf    时间: 2022-4-26 21:18
依旧在项目中打开报表是登录页面
作者: yhdata_abPYbqxf    时间: 2022-4-26 22:01
1.ie试了不行和谷歌一样
2.[2022-04-26 21:59:52.011] |-[INFO] |-[ca4e164aac624c9dafa0229fe2f2f99f] |-[SYSTEM] |-[g5.sv.util.WebUtil.delUser(WebUtil.java:1006)] |-[OTHER:   Delete user: __Anyone__@null]
[2022-04-26 21:59:52.011] |-[INFO] |-[ca4e164aac624c9dafa0229fe2f2f99f] |-[SYSTEM] |-[g5.sv.util.WebUtil.delUser(WebUtil.java:1013)] |-[OTHER:   用户“__Anyone__”登录过期]
3.单点的用户是admin,这个是在永洪中是存在的
作者: yhdata_abPYbqxf    时间: 2022-4-26 22:04
为什么我代码里面回调地址中用户名都写死了,还是会提示返回为空
java.lang.Exception: 调用http://bds.ganso.net:8080/core/hdm/user/yh/checkToken返回为空
        at g5.sv.standardsso.SSOLoginFilter.getUserInfoByToken(SSOLoginFilter.java:233) ~[product-20220107.jar:?]
        at g5.sv.standardsso.SSOLoginFilter.loginWithToken(SSOLoginFilter.java:177) ~[product-20220107.jar:?]
        at g5.sv.standardsso.SSOLoginFilter.tryToAutoLogin(SSOLoginFilter.java:143) ~[product-20220107.jar:?]
        at g5.sv.standardsso.SSOLoginFilter.doFilter(SSOLoginFilter.java:89) [product-20220107.jar:?]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) [catalina.jar:9.0.54]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) [catalina.jar:9.0.54]
        at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) [tomcat-websocket.jar:9.0.54]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) [catalina.jar:9.0.54]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) [catalina.jar:9.0.54]
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) [catalina.jar:9.0.54]
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) [catalina.jar:9.0.54]
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540) [catalina.jar:9.0.54]
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) [catalina.jar:9.0.54]
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) [catalina.jar:9.0.54]
        at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:687) [catalina.jar:9.0.54]
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) [catalina.jar:9.0.54]
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357) [catalina.jar:9.0.54]
        at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:382) [tomcat-coyote.jar:9.0.54]
        at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) [tomcat-coyote.jar:9.0.54]
        at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:895) [tomcat-coyote.jar:9.0.54]
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1722) [tomcat-coyote.jar:9.0.54]
        at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-coyote.jar:9.0.54]
        at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) [tomcat-util.jar:9.0.54]
        at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) [tomcat-util.jar:9.0.54]
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-util.jar:9.0.54]
        at java.lang.Thread.run(Thread.java:834) [?:?]
[2022-04-26 22:03:16.646] |-[INFO] |-[bb0fdb0d43624c55a5c26a272f614310] |-[__Anyone__] |-[g5.sv.util.WebUtil.delUser(WebUtil.java:1006)] |-[OTHER:   Delete user: __Anyone__@null]
[2022-04-26 22:03:16.646] |-[INFO] |-[bb0fdb0d43624c55a5c26a272f614310] |-[__Anyone__] |-[g5.sv.util.WebUtil.delUser(WebUtil.java:1010)] |-[OTHER:   用户“__Anyone__”被踢出]
[2022-04-26 22:03:16.647] |-[INFO] |-[bb0fdb0d43624c55a5c26a272f614310] |-[__Anyone__] |-[g5.sv.ServletHelper.checkLogin(ServletHelper.java:565)] |-[OTHER:   logined failed, err:null, proc:ResProc@3d17f9cb]
[2022-04-26 22:03:16.648] |-[INFO] |-[98170c176b594bed959294cba3b000e2] |-[__Anyone__] |-[g5.sv.util.WebUtil.delUser(WebUtil.java:1006)] |-[OTHER:   Delete user: __Anyone__@null]
[2022-04-26 22:03:16.648] |-[INFO] |-[98170c176b594bed959294cba3b000e2] |-[__Anyone__] |-[g5.sv.util.WebUtil.delUser(WebUtil.java:1010)] |-[OTHER:   用户“__Anyone__”被踢出]
[2022-04-26 22:03:16.648] |-[INFO] |-[98170c176b594bed959294cba3b000e2] |-[__Anyone__] |-[g5.sv.ServletHelper.checkLogin(ServletHelper.java:565)] |-[OTHER:   logined failed, err:null, proc:ResProc@3d17f9cb]

作者: 永洪tech-Jason    时间: 2022-4-26 22:16
看报错是http://bds.ganso.net:8080/core/hdm/user/yh/checkToken 接口没返回内容呢?
作者: yhdata_abPYbqxf    时间: 2022-4-26 22:25
{"result":"success","userId":"admin"}这个是这个接口我返回的固定值,但是永洪那边返回的信息是这个接口是空的,我postman也测试了接口是ok的
作者: yhdata_abPYbqxf    时间: 2022-4-26 22:30
这个是接口返回的值
作者: yhdata_abPYbqxf    时间: 2022-4-27 11:27
感谢各位的及时答复,不是永洪的问题,是我这边忘记设置免登录的问题,谢谢了
作者: _贝贝    时间: 2022-4-27 11:47
yhdata_abPYbqxf 发表于 2022-4-27 11:27
感谢各位的及时答复,不是永洪的问题,是我这边忘记设置免登录的问题,谢谢了 ...






欢迎光临 永洪社区 (http://club.yonghongtech.com/) Powered by Discuz! X3.4