V8.1版本,如何启用金蝶数据签名校验,禁用Binary
如客户使用的是V8.1以上版本【PT-146930 [8.1.0.20221110] 发布时间:2022/11/10 构建号:8.1.410.13】,也可手工添加参数配置,开启金蝶数据签名校验,禁用Binary格式,进行安全加固。
注意:建议采用安装临时补丁的方案,可避免修改错配置文件,或者多服务器,需要全部修改对应配文件,如果不熟悉修改配置文件的客户方或实施,建议通过临时补丁进行安全加固。
参考:关于金蝶云星空私有化部署系统远程命令执行漏洞的加固公告
一、如何手工开启金蝶数据签名,禁用Binary
在管理中心ManageSite、业务中心WebSite以及文件服务器FileService ,
配置文件包含以下三个:
应用服务器<website/app_data/common.config>
管理中心服务器<managesite/app_data/common.config>
文件服务器 <FileService/app_data/common.config>
在【configuration/appSettings】路径节点下增加如下配置,需要确保管理中心、业务中心和文件服务站点一致。
<add key="KDSVCDefaultFormat" value="4"/> <add key="EnabledKDSVCBinary" value="false"/> <add key="EnabledKDSVCDataCheckSum" value="true"/>
如果上面的参数,配置文件已经有了,就无需再添加。
手工修改配置后,需要重启IIS,K3CloudManager服务,K3CloudJobProcess服务以及K3CloudMQ服务。
如果应用服务器、管理中心服务器、文件服务器是分开部署的,需手工检查<common.config>文件的完整一致,在 【configuration/appSettings】路径节点下,必须包含上述的3个配置项(KDSVCDefaultFormat,EnabledKDSVCBinary,EnabledKDSVCDataCheckSum)。如上述配置项有缺失,请手工添加。
如现场使用协同开发云搭建本地开发环境:需手工检查<website/app_data/common.config>文件的完整一致,在 【configuration/appSettings】路径节点下,必须包含上述的3个配置项(KDSVCDefaultFormat,EnabledKDSVCBinary,EnabledKDSVCDataCheckSum)。如上述配置项有缺失,请手工添加。
具体说明参考:搭建开发环境增加安全配置参数
二、二开影响如何处理?
一般二开调用webapi,引用组件是Kingdee.BOS.WebApi.Client.dll,该组件统一请求格式为json格式(1),没有受到影响。
如果二开代码直接引用 Kingdee.BOS.ServiceFacade.KDServiceClient.dll,进行服务端请求,未修改代理的format,默认为bianry(3),这时一旦服务端启用禁止binary(3)参数后,请求该请求将失败,解决方案是在二开代码中构建代理请求实例时,强制代理请求格式为json格式(1),如果返回数据不支持json,就只能强制请求格式为KingdeeXml(4)。
例如下面代码:
var userService = new UserServiceProxy(); userService.Format = ServiceFacade.MessageFormats.KingdeeXml; userService.ValidateUser("", loginInfo);
另外,二开代码使用Binary进行通讯的安全整改方案可参考:
三、约束
新的数据签名校验格式KingdeeXml(4)在版本【PT-146930 [8.1.0.20221110] 发布时间:2022/11/10 构建号:8.1.410.13】及之后生效,之前的版本并不支持。
V8.1版本,如何启用金蝶数据签名校验,禁用Binary
本文2024-09-23 03:48:30发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-161229.html