...
特点:操作比较简单,但是通用性差,无法控制用户访问的浏览器类型。
方案四(不推荐):
...
如果应用服务器是tomcat,Tomcat官方提供了通过升级tomcat到 8.5.53以上版本 ,修改 context.xml文件实现同源访问: http://tomcat.apache.org/tomcat-8.5-doc/config/cookie-processor.html ,但必须要注意的是除了修改context.xml文件配置外,还要求应用服务器配置https协议。
对于要求【应用服务器配置成https协议】可参考网上的一些资料分析,如:https://blog.csdn.net/Haran_ing/article/details/104337765
本地验证此方案结果如下:
1、本地部署Tomcat8.5.53,找到: Tomcat\conf\context.xml 文件
2、对context.xml文件添加 :<CookieProcessor className="org.apache.tomcat.util.http.LegacyCookieProcessor" sameSiteCookies="none" />
3、部署smartbi的机器必须要配置成https方式,并且要求证书是浏览器认可的根证书。
4、为了避免因协议不匹配而造成一些功能不能正常使用,对于集成smartbi的第三方系统也需要配置成https访问方式。
综上,满足以上步骤要求的情况下,通过升级Tomcat为8.5.53以上的版本配置context.xml文件并且smartbi及第三方集成系统都配置https访问方式,本地验证可解决跨域访问问题。
适用场景:应用服务器为tomcat, 并且传输协议为https。
特点:通用性差(比如应用服务器非tomcat);高版本tomcat要改较多的配置,比较麻烦,否则参数传递可能会失败;需要部署https证书(多个域需要多个证书),存在未知风险,不推荐使用。
注意:Tomcat版本的更新,对于安全性要求越来越高,高版本Tomcat目前已知的集成访问问题请查看wiki文档:https://history.wiki.smartbi.com.cn/pages/viewpage.action?pageId=44040479
Viewtracker |
---|