栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

dubbo版本升级关于序列化问题

dubbo版本升级关于序列化问题

最近两年公司项目dubbo进行升级,从2.5.6升级至2.6.9
至今又升级为2.6.10

主要升级的原因是序列化存在漏洞,需要使用hession协议进行序列化操作。

2.6.9

在2.6.9引入白名单,因为hessian默认支持java.*的所有类进行序列化,所以重写AbstractHessian2FactoryInitializer配置白名单参数
是否开启白名单

  *static String WHITELIST = "dubbo.application.hessian2.whitelist";*

白名单允许序列化的类路径

  *static String ALLOW = "dubbo.application.hessian2.allow";*

黑名单序列化的类路径

  *static String DENY = "dubbo.application.hessian2.deny";*

把所需要的类路径加上,否则会报错heesian序列化异常,如
严重:

com.sinosig.sl.sssc.dto.form.Page's interfaces: java.io.Serializable in blacklist or not in whitelist, deserialization with type 'HashMap' instead.
com.alibaba.com.caucho.hessian.io.HessianFieldException: com.sinosig.sl.sssc.dto.result.ResultDTO.resultValue: java.util.Map cannot be assigned from null

不在名单里,hessian无法进行序列化所以当作hashMap去处理序列化,失败。

升级为2.6.12

dubbo改写了序列化方式,优化了早期的序列化漏洞,引入文件默认配置读取一些文件不允许hessian序列化,本次默认不支持java.*的白名单,需写入自行配置,同2.6.9一样重写AbstractHessian2FactoryInitializer,只是将java.*加入白名单配置即可

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/751788.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号