嵌入数据水印
本章主要介绍如何进行数据水印嵌入。数据水印一般有如下场景:
- 规范数据外发流程
实现对企业内部人员数据外发进行有效流程化管理,非授权用户在数据外发前需审批,审批通过后采取数据水印技术生成可外发数据文件。
- 数据版权保护
- 对泄露数据进行快速溯源
通过对泄露数据文件解封,根据数据文件的完整度和水印信息痕迹来检测水印是否存在,快速识别水印标记信息(数据源地址、分发单位、负责人、分发时间等),从而对安全事件精准定位追责。
约束与限制
- 当前数据水印任务仅支持MRS Hive数据源。
- 主键不支持嵌入水印。
- 数值整型字段嵌入水印可能会出现数据被修改的情况,请选择可以接受值发生改变的字段嵌入水印。
- 数据水印嵌入任务的数据集范围选择为增量时,需选择时间字段类型Timestamp、Date字段类型来确定增量范围。
前提条件
已创建源端数据源类型为MapReduce服务(MRS Hive)的数据连接,请参考创建DataArts Studio数据连接。
创建数据水印嵌入任务
- 在DataArts Studio控制台首页,选择对应工作空间的“数据安全”模块,进入数据安全页面。
- 单击左侧导航树中的“新建”。
,进入数据水印嵌入页面,在页面上方单击图2 创建数据水印嵌入任务
- 在弹出的创建任务页面输入基本信息,参数配置请参考表1。
表1 基本信息参数配置 参数名
参数描述
*任务名称
嵌入水印任务的名称,只能包含英文字母、数字、中文字符、下划线或中划线,且长度为1~64个字符。
为便于水印嵌入任务管理,建议名称中标明要嵌入水印的对象和水印标识。
描述
为更好地识别嵌入水印任务,此处加以描述信息。
*水印标识
系统会将水印标识嵌入到数据表中,标识长度不超过16个字符即可。
*纠错等级
等级越高,水印信息编码位数越长,溯源时误码率越低。需注意高纠错等级需要更大的数据量来保证信息的嵌入完整性。默认为1。
*水印版本
V1版本:嵌入水印时依赖主键列,嵌入速度快。若主键遭受强攻击,溯源一定概率失败。
V2版本:嵌入水印时不依赖主键,只与嵌入列相关,嵌入速度慢,鲁棒性增强。
图3 基本信息配置
- 单击“下一步”进行源、目标端配置,参数配置请参考表2。
表2 源、目标端参数配置 参数名
参数描述
源端配置
*数据源类型
目前只支持MapReduce服务(MRS Hive)。
*数据连接
选择已创建的数据连接。若未创建请参考创建DataArts Studio数据连接新建连接。
*数据库
选择待嵌入水印的数据库和数据表。
- 单击数据库后的“设置”,设置待嵌入水印的数据库和数据表。
- 单击“清除”,可对已选择的数据库和数据表进行修改。
*源表名
*水印嵌入列
下拉选择常见的字段类型作为嵌入列。如数值型、字符型。
注意:当选择水印版本为V1时,不支持选取主键列作为嵌入列。
*数据集范围
只有使用时间字段timestamp、Date来确定增量范围时,才可以选择增量模式
一般而言,全量模式下数据水印嵌入任务使用单次调度,增量模式下使用周期调度。
*指定时间字段
增量模式下,选择时间字段timestamp、Date来确定增量范围。
目标端配置
*数据源类型
目前只支持MapReduce服务(MRS Hive)。
*数据连接
选择已创建的数据连接。若未创建请参考创建DataArts Studio数据连接新建连接。
*数据库
下拉选择存放水印表的数据库。
*目标表名
用户手动输入,不能与目标端数据库表名重复。当输入的表名不存在时会创建该表。
输入请单击“测试”,否则将无法进行下一步操作。
图4 源、目标端配置
- 单击“下一步”,进行调度信息配置。
- 数据集范围为全量模式时,仅支持单次调度。
- 数据集范围为增量模式时,支持单次调度和周期调度。
当选择为周期调度时,参数配置参考表3。
表3 配置周期调度参数 参数名
说明
*调度日期
调度任务的生效时间段。
*调度周期
选择调度任务的执行周期,并配置相关参数。
- 分:选择调度开始时间和结束时间,配置间隔的分钟时长。
- 小时:选择调度开始时间和结束时间,配置间隔的小时时长。
- 天:配置每日调度时间。
- 周:选择星期几启动调度,配置调度具体时间。
- 月:选择几号启动调度,配置调度具体时间。
例如:选择调度周期是周,选择具体时间为15:52,时间选择为星期二。则在调度日期范围内,每周二的15点52分会执行任务。
立即启动
勾选复选框,则表示立即启动此调度任务。
图5 调度信息配置
- 单击“确定”,完成数据水印嵌入任务创建。
相关操作
- 编辑任务:在数据水印嵌入页面,单击对应任务操作栏中的“编辑”,即可编辑数据水印嵌入任务。
运行状态为正在“执行中”的任务不允许被编辑。
- 删除任务:在数据水印嵌入页面,单击对应任务操作栏中的“更多 > 删除”,即可删除任务。当需要批量删除时,可以在勾选任务后,在任务列表上方单击“批量删除”。
删除操作无法撤销,请谨慎操作。
- 运行或调度任务:在数据水印嵌入页面,单击对应任务操作栏中的“运行”或“更多 > 启动调度”,运行或调度任务。
您可以通过调度周期区分该任务是单次调度还是周期调度任务。
- 查看运行实例日志:在数据水印嵌入页面,找到需要查看实例的任务,单击展开,即可找到运行实例。随后单击“查看日志”,查看运行实例日志。
运行失败可通过日志排查失败原因,问题修正后尝试重新运行。如果仍运行失败,请联系技术支持人员协助处理。