隐私中心新增加密管理功能,实现对数据进行加密存储
系统中有部分重要数据,为了防止被人从数据库用SQL查询方式泄露,需要存储到数据库中使用加密的密文方式,仅在系统中通过标准功能调用解密接口获取真实数据,进行相关业务功能应用。此时,可通过隐私中心的加密管理实现管控。
发布版本:V8.1
上线日期:2023-09-21
补丁号:PT-151002
新特性介绍
- 提供密钥管理,可以选择加密算法、加盐、密钥文件等,自定义加密配置
- 系统采用白名单管理方式,需要开启加密管控功能的字段必须先加入加密字段
- 向导式的加密设置,引导用户逐步设置
- 已加密数据进行反向解密恢复还原
操作指引
1分析评估加密字段的相关二开功能取数逻辑、报表查询等是否需调整,做好加密开启前的准备工作
2密钥管理中添加密钥设置
3加密字段中添加需要允许加密管控的二开字段
4加密设置中通过向导界面新增加密任务
特性效果展示
一、准备工作
启用加密存储,对基础资料或单据对象的字段进行加密启用设置,开启后通过向导界面,对系统已有数据进行加密升级。
由于加密存储会清空原有字段的历史数据,转为加密方式存储,开启加密前时需注意所有的二开取数方式需要进行检查,未采用平台标准接口读取数据的功能将受到影响(例如SQL直接查询字段,数据库表中的原始字段值已获取不到)
需要考虑调整相关原有二开功能,采用标准接口读取解密后的数据应用与业务功能。
启用加密字段前的风险评估
1) 列表查询 无法对加密字段作为条件字段进行查询;
2) 报表查询 报表插件中的查询SQL 如果存在加密字段,则无法获取该字段信息;
3) 第三方导入数据 不允许直接通过SQL导入加密字段数据(新增数据或修改数据),否则将新导入的数据将无法正常显示;
4) 二开插件 直接通过SQL进行查询,将查询不到加密数据,例如:
DBUtils.ExecuteReader(ctx, "SELECT FCARDNO FROM T_BD_PERSONCARD ")
DBUtils.ExecuteDynamicObject(ctx, "SELECT FCARDNO FROM T_BD_PERSONCARD ")
DBUtils.ExecuteScalar(ctx, "SELECT FCARDNO FROM T_BD_PERSONCARD ")
可以改用下面章节中的调整方案来查询;
启用加密字段前的二开调整方案
1) 加密后的字段查询方式 推荐使用以下方式进行查询:
BusinessDataServiceHelper中的Load、LoadSingle、LoadFromCache 方法
QueryServiceHelper中的 GetDynamicObjectCollection 方法
2) 加密字段的更新方式 推荐使用以下方式进行更新:
先获取数据包然后再修改加密字段,例如:
var dataEntity=BusinessDataServiceHelper.LoadSingle(this.Context, pkValue, dynType);
dataEntity[“cardno”]= “430xxxxxxxxx”; //传明文
BusinessDataServiceHelper.Save(this.Context, dataEntity);
如果二开按照上面的规范进行的,则不需要进行调整;
以上方案同时兼容字段加密和不加密的取数场景;
二、加密功能应用
1)加密功能入口
需administrator登录系统,进入系统管理-隐私中心
2)新增密钥
打开隐私中心->密钥管理,点击新增密钥,作为加密、解密数据的专属钥匙。
根密钥:支持定时刷新。
数据密钥:支持开启加盐、密钥文件分段存储。
注意:
如果使用密钥文件方式,必须妥善做好密钥文件的保管。一旦丢失,加密数据将无法正常解密。
3)设置允许加密的字段白名单
打开隐私中心->加密字段,点击新增字段,将允许加密的二开字段加入白名单,并且对加入名单的字段勾选【允许加密】(二次确认)。
4)启用或取消加密
打开隐私中心->加密设置,给字段选择密钥后点击保存,系统会依据密钥设置判断哪些字段是加密、哪些字段是取消加密。并且,启动向导界面,进行本次加密设置修改的确认。
注意:
由于启用或取消加密存储,需要将对应字段的现有数据进行初始化加密或解密还原的处理。
因此,在向导界面最终确认执行时,系统将在数据初始化过程中,将administrator之外的所有用户强制离线并禁止登录。请在系统闲置时进行加密、解密工作。
按照提示逐步确认
加密或解密任务全部执行完毕后,自动解除登录管控,恢复允许用户正常登录系统。
注意:如果在向导界面因本机浏览器窗口关闭,数据处理属于后台服务仍然会继续运行,可以进入“加密任务执行情况”查看。
如果是服务器端的异常,会导致加密任务挂起,需要手动恢复。
三、加密管理及异常处理
1)查看任务执行情况
打开隐私中心->加密任务执行情况
2)加密任务执行异常
任务执行过程中,如果出现服务器异常(比如宕机,或站点访问异常、或数据库访问异常),则加密任务会挂起(例如,执行状态为:“已开始“,但是上次更新日期可能超30分钟都未更新,实际是后台服务已经出现异常。系统采用分批取数处理数据,通常几分钟可以处理一批),服务器环境恢复后,需要进入“加密任务执行情况”,找到对应的任务进入详情,点击 “恢复”,那么加密任务就会继续开始执行;
如果在此过程中加密出现异常,任务已经停止,希望暂时不进行加密处理,则可以在“加密任务执行情况”,打开对应的任务,点击“解除登录管控“即可恢复登录;
3)加密过程中需要停止加密
如果用户中途不想进行加密了,则可以打开“加密任务执行情况“,找到对应任务,进入详情,点击”停止“即可,那么本次加密将做无效处理,相关设置及数据处理都不会真正生效,同时自动”解除登录管控”。
已经停止的任务,不可以再次操作启用,需要重新通过加密设置启动一个新任务进行数据处理。
如果进行停止操作时碰到环境异常,没有解除登录管控,可以手动点击” 解除登录管控“;
4)取消原有加密字段
如果用户发现启用加密后,某些场景无法覆盖到,则可以对原有加密字段进行取消处理。
打开菜单:隐私中心 > 加密设置 ,找到对应的字段,选择“不加密“,点保存,按照向导完成操作即可取消加密;
【关联知识】
隐私中心新增加密管理功能,实现对数据进行加密存储
本文2024-09-23 03:51:24发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-161541.html