工作流引擎,工作流程管理系统,流程数据加密处理方案.

工作流引擎,工作流程管理系统,流程数据加密处理方案.

1关于流程数据的加密方案与实现过程.

1.1需求背景

1, 流程数据加密是为了防止流程数据被篡改的需要,从而造成对单位的不必要损失。

2, 流程数据篡改是具有管理员身份与非法入侵者,尤其是防范业务人员与具有系统管理员结合做坏事情。

比如: xxx公司在xx年曾经出现过这样的情况, 业务人员与管理员勾结,导致单位200万元损失,虽然最后查出来,罚款判刑,但是这是事后处理.

3, 并非所有的流程数据都需要加密, 比如请假流程就不需要,但是报销或者其它具有敏感数据的流程就需要了。

4, 被篡改后的数据需要警报,并写入log日志,还要不能被执行下去。

5, 要求每个节点的数据都要加密,整体流程数据也要加密.

1.2处理方案

1, 在流程中增加一个属性 IsMD5 是否要加密. 默认是否, 不加密.

2, 用户信息中包括一个盐值,用于后期的加密运算。

3, 凡是加密过的流程在每个节点表单上增加字段MD5 长度为 char(36) 的字段,这个字段用于存储这个节点数据的MD5值.

4,在NDxxRpt 表中增加字段MD5 用于存储流程数据加密。

5,生成MD5值: 在如下两个步骤中生成MD5值,并存储到相关的物理表中.

1, 节点发送成功后.

2, 节点发送失败时.

6, 生成MD5值的方法.

1, 把节点表单字段排除有些字段是默认值的随即获取的字段(比如:获取当前时间,当前操作员....),组合成一个大的文本, 然后通过获取审批用户盐值,一起MD5加密.

2, 加审批用户盐值意义是防止通过彩虹表暴力破解.

7, 检查是否被篡改的步骤.

1,获得节点与流程数据表的数据, 排除关键性的字段.

2, 执行MD5加密。

3,将两者串比较。

8, 在如下情况下检查MD5值是否正确.

有涉及到打开节点表单的地方:

1, 打开待办工作时.

2, 通过流程日志打开节点表单时.

3, 打开抄送工作时.

4,打开地途工作时.

有涉及到打开流程数据的地方.

1, 打开工作轨迹时的流程数据时.

以上有任何不对地方,都要禁止打开并写入log的文本日志中.

运行效果如下.

image

posted on 2012-06-19 17:53 驰骋工作流 阅读( ...) 评论( ...) 编辑 收藏
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

驰骋低代码、工作流、表单引擎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值