Appearance
19.数据防窜改使用说明
对于业务表中存在的关键字段,为了避免因业务操作外的其他修改操作导致的关键字段被修改,进而影响业务操作正确性的问题,libra-client提供数据防篡改机制,进行数据插入时,将关键字段进行加密,存储进校验字段中,在进行数据变更前进行关键字段值校验,在字段值正确的前提下进行记录更新操作,更新关键字段的同时更新校验字段。
19.1 使用
使用数据防篡改功能需配置tamper-proof.xml
配置文件。
tamper-proof.xml
xml<!DOCTYPE libra:tamper-proof SYSTEM "tamper-proof.dtd"> <libra:tamper-proof xmlns:libra="http://www.dcits.com/libra/"> <!--name为逻辑库.表名,columns为需要保证防篡改的列,多列间以','分隔,checkKey为校验值字段,function为校验字段的加密算法--> <dac name="TestDb.rb_dac" columns="key1,key2,key3" checkKey="dac_key" function="sm4-cbc"/> </libra:tamper-proof>
配置项介绍:
标签 属性 描述 备选值 是否必输 dac name 防篡改属性名称,为 逻辑库名.表名
是 columns 需要被保障不被篡改的业务属性列,多列以 ,
分隔是 checkKey 防篡改校验键,无特殊业务含义的键,业务表中自行提供 是 function 加密算法,通过此算法完成columns到checkKey的映射 sm4-ecb,sm4-cbc或用户自行实现的算法别名 是 防篡改操作对业务是无感知的,业务sql无需变动。
19.2 使用限制
- 涉及防篡改表的insert语句必须包含全部已配置的防篡改字段。
- 防篡改表不支持hint路由。