Gerald.Zhang 发表于 2022-11-3 15:10:18

看完必恍然大悟的活字格内幕:六十四、8.0 Update1 中使用工作流报错的解决方案

本帖最后由 Gerald.Zhang 于 2022-11-14 10:21 编辑

问题说明

8.0 update1发布后,相信小伙伴们都积极的升级去体验全新的功能了。不过有些使用低版本的 SQLServer 的朋友在使用工作流的新功能时,会遇到调试或发布时出现类似的报错:


其实这些错误背后的原因都一样,咱们接下来详细的解释一下。

大家都知道,活字格在 8.0 版本重新设计了工作流模块。而新的工作流引擎是基于 java 来运行的。当和 SQLServer 创建连接时,如果咱们开启了 SSL 加密,java 端是要求加密协议必须大于等于 TLS1.2 才行。出于安全性考量,我们在 8.0 update1 版本中,对 java 侧连接数据库驱动的安全性策略做了升级。而老版本的 SQLServer(一般是2008)默认的 TSL 协议是 1.0 或者 1.1 的,所以在升级后体验工作流时,会遇到上面的错误。

解决方案

方案一(建议方案):
由于根本原因是 SQLServer 的 TLS 协议版本太低。那么咱们只需要打几个补丁将 TLS 协议升级至 TLS1.2 即可,具体步骤如下:


[*]升级SqlServer2008 R2到SP3,或者SqlServer2008到SP4
SP2下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=30437
SP3下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=44271
SP4下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=44278
[*]安装安全性补丁SQLServer2008R2-KB4057113-x64 与 SQLServer2008R2-KB3045314-x64
SQLServer2008R2-KB4057113-x64:https://www.microsoft.com/en-us/download/details.aspx?id=56415
SQLServer2008R2-KB3045314-x64:https://www.microsoft.com/en-US/download/details.aspx?id=48008

方案二(紧急方案,不建议):

[*]进入活字格的安装路径,跳转到如下路径:
活字格安装路径\Forguncy 8\Website\bpmJavaServerBin\jre\conf\security\java.security
[*]右键用可编辑软件(如记事本等)打开 java.security
[*]打开文件后,修改 jdk.tls.disabledAlgorithms 这一项,去掉 TLSv1, TLSv1.1,3DES_EDE_CBC这3个字符串。然后保存,重新运行设计器即可。

说明:方法二治标不治本,只适合紧急调试,或者暂时无权限/不方便升级数据库时使用。而且如果升级活字格版本或者重新安装,需要重新进行配置。最重要的是,删除了这些安全算法限制,会降低数据库连接的安全性。所以更建议大家升级数据库的 TLS 协议~






页: [1]
查看完整版本: 看完必恍然大悟的活字格内幕:六十四、8.0 Update1 中使用工作流报错的解决方案