创建数据脱敏规则
DataWorks支持动态脱敏和静态脱敏,并提供多种脱敏场景供您选择,同时,您还可根据需要自定义脱敏场景。本文为您介绍如何创建脱敏规则,并在DataWorks中进行脱敏查询。
前提条件
您需购买DataWorks专业版及以上版本,才可使用数据脱敏管理功能。详情请参见DataWorks各版本详解。
您需先开启DataWorks项目空间的查询脱敏功能,开启后相关脱敏功能才会生效。详情请参见安全设置与其他。
说明MaxCompute底层脱敏无需开启该开关。
(可选,仅动态脱敏需要)已根据业务需要配置好敏感数据识别规则,便于后续创建数据脱敏规则时关联需要应用脱敏的字段,操作详情请参见敏感数据识别规则。
(可选,仅动态脱敏需要)如果您希望通过白名单控制部分用户在指定时间段内不受脱敏规则影响,可查看未脱敏数据,您需要提前将白名单用户添加为用户组,操作详情请参见配置用户组。
(可选,仅MaxCompute底层脱敏需要)如果您需要配置的脱敏场景为MaxCompute底层脱敏场景,即除DataWorks入口外,使用MaxCompute odpscmd、log view等查询数据时,也会对敏感数据根据脱敏规则进行脱敏时,您需要申请MaxCompute的网络白名单,便于调用脱敏函数进行脱敏,详情请参见实践示例:MaxCompute底层脱敏使用方法。
进入数据脱敏管理
进入数据开发页面。
登录DataWorks控制台,单击左侧导航栏的 ,在下拉框中选择对应工作空间后单击进入数据开发。
单击左上方的
图标,选择 ,单击立即体验,进入数据保护伞。
说明若阿里云主账号已授权,则直接进入数据保护伞的首页。
若阿里云主账号未授权,则进入数据保护伞的授权页面。授权后才可使用保护伞的相关功能。
在左侧导航栏,单击 。
在数据脱敏管理页面根据需求选择脱敏场景,选择场景后,可基于该场景创建脱敏规则。
不同场景下创建脱敏规则请参见:
动态脱敏(全局配置、展示脱敏等场景)请参见:创建动态脱敏规则:全局配置场景。
动态脱敏以全局配置(_default_scene_code)为例,介绍数据脱敏配置的流程,Hologres展示脱敏、DataWorks展示脱敏和DataWorks数据分析脱敏、MaxCompute底层脱敏场景的操作步骤请参考该场景。
静态脱敏(数据集成场景)请参见:创建静态脱敏规则:数据集成场景。
创建动态脱敏规则:全局配置场景
以下以全局配置场景示例为您示例动态脱敏规则的配置要点,实际使用时,请根据您的需要选择脱敏场景。
在数据脱敏管理页面,选择脱敏场景为全局配置(_default_scene_code)。
(可选)选择脱敏对象并授权。
说明仅Hologres展示脱敏和MaxCompute底层脱敏需执行该配置。
单击选择脱敏project或选择脱敏database,根据界面提示选择需要脱敏的project或database,并勾选同意授权数据保护伞对该project或database脱敏选项。
新建数据脱敏规则。
在数据脱敏管理页面,单击右上方的新建脱敏规则。
在新建脱敏规则对话框中,配置脱敏规则和及脱敏方式。
配置基础信息。
参数
描述
敏感字段类型
在下拉框中选择当前脱敏规则需要脱敏的敏感字段。
当前下拉框中可选的敏感字段类型为系统内置的常见敏感字段及您在敏感数据识别中手动添加的敏感数据,详情请参见敏感数据识别规则。
如果您之前已创建过同场景的脱敏规则,DataWorks会过滤掉已被选择过的敏感字段类型,避免同场景的脱敏规则中对同敏感字段的脱敏规则不一致。
脱敏规则名称
该文本框会自动代入用户填写的敏感数据类型,您也可在该敏感数据类型下新增脱敏规则名称,当与该租户下所有用户创建的脱敏规则出现重名时,提示规则名称重复。
配置脱敏方式:DataWorks支持的脱敏方式包括:保留格式加密、掩盖、HASH加密、字符替换、区间变换、取整、置空。
保留格式加密(原假名脱敏算法)
保留格式加密脱敏会将一个值替换成一个具有相同特征的脱敏信息。脱敏后数据和脱敏前数据的格式保持一致。涉及的脱敏规则配置参数如下。
参数
说明
数据水印
数据水印可提供数据溯源能力,发生数据泄漏后,可以帮您定位到可能的泄漏源。您可以根据需求选择是否开启数据水印。
说明仅DataWork企业版及以上版本支持使用数据水印功能。
脱敏特征值
不同脱敏特征值的脱敏策略规则不一致,即相同的待脱敏数据在不同的脱敏特征值脱敏出来的结果信息不一致;如果脱敏特征值相同则脱敏后的数据也是相同的。
例如,原始数据为a123:
脱敏特征值设置为0时,脱敏成b124。
脱敏特征值设置为1时,脱敏成c234。
脱敏特征值的默认值为5,可选范围0~9。
(可选)替换字符集
当选择的敏感数据类型的识别规则为非内置时,用户需要配置替换字符集。配置替换字符集后,后续遇到字符集中的字符,即会被替换为其他相同类型的字符。
例如,敏感数据脱敏前是0~3的数字和a~d的字母组成,那么脱敏后也会脱敏成在这个范围内的数字和字母。
替换字符集配置要求如下:
不支持中文,可输入大写字母、小写字母、和数字,多个字符请用英文逗号隔开。
若需要脱敏的数据不符合字符集范围则不脱敏。
掩盖
掩盖脱敏是对部分信息进行掩盖,将对应位置上的字符用“*”替换,达到脱敏的效果。使用掩盖方式进行脱敏时需选择掩盖脱敏的方式,当前DataWorks为您内置了一些掩盖脱敏方式,也支持您自定义。
参数
说明
推荐方式
在下拉框选择推荐的掩盖脱敏方式,对于不同的脱敏字段可选择的掩盖方式不一致。
例如,只展示前1位和最后1位、只展示前3位和最后2位、只展示前3位和最后4位等,您可根据界面下拉框提示进行选择。
自定义
自定义提供了更加灵活的设置方式,按从左至右顺序配置分段是否脱敏,以及需要脱敏(或者不脱敏)的字符长度。最多可添加10个分段,必须要有且仅有1个分段是剩余位数。
例如,脱敏前3位,剩余位数不脱敏。
HASH加密
使用HASH加密进行数据脱敏时,您需配置以下脱敏规则参数。
参数
说明
数据水印
数据水印可提供数据溯源能力,发生数据泄漏后,可以帮您定位到可能的泄漏源。您可以根据需求选择是否开启数据水印。
说明仅DataWork企业版及以上版本支持使用数据水印功能。
加密算法
包括MD5、SHA256、SHA512、SM3。
加盐值
设置各加密算法的盐值。默认选中5,可填值为0~9。
说明盐值即插入的特定字符串。在密码学中,通过在密码任意固定位置插入特定的字符串,让散列后的结果和使用原始密码的散列结果不相符,这种过程称之为加盐。
字符替换
字符替换的方式即是将指定位置的字符按照您选择的替换方式进行替换。涉及的脱敏规则配置参数如下。
参数
说明
替换位置
在下拉框可选择替换全部、替换前3位、替换后4位,同时支持您自定义替换位置。
替换位置选择自定义时,用户可以自定义分段,并配置每个分段如何替换字符,最多可添加10个分段,必须要有且仅有1个分段是剩余位数。
替换方式
包括随机替换、样本值替换、固定值替换。
随机替换:随机替换对应位置上的字符,替换前后字符位数不变。
样本值替换:您需要选择指定样本库,选择后用样本库中的值替换对应位置上的字符。
固定值替换:您需要在替换值文本框中输入字符(字符不限,长度1~100,不可包含空字符),输入后用该替换值替换对应位置上的字符。
区间替换
区间变换仅适用对数值类型的数据进行脱敏。可将指定数值范围内的数据脱敏为固定的值,可添加多个区间范围,至少1个,至多10个。
参数
说明
原始数值范围 [m,n)
脱敏前数据的数值范围,有效值为大于等于0的数值,最多支持小数点后2位。
数值脱敏后数值
脱敏之后的值,有效值为大于等于0的数值,最多支持小数点后2位。
取整
参数
说明
原始数据类型
仅支持选择数值类型。
保留小数点位数
有效值范围为0~5,剩余部分四舍五入。例如,原始数值3.1415,保留小数点位数2位,脱敏后为3.14。
置空
置空脱敏时,对应的敏感字段置为空字符串。
验证脱敏配置结果。您可以在样本数据文本框中输入脱敏前样本数据(输入字符限制0~100字符),单击脱敏验证,在脱敏效果中会返回脱敏后的数据。
单击保存,完成脱敏规则创建。
创建完成脱敏规则后:
动态脱敏场景下,您可以设置脱敏规则生效的白名单,后续在指定时间范围内,白名单用户可查询未脱敏的数据,白名单添加操作详情请参见配置脱敏规则白名单(仅动态脱敏支持)。
刚创建完成的脱敏规则默认状态为不生效,您需要设置状态为生效后,脱敏规则才会在后续对应脱敏场景中被应用,设置状态操作详情请参见配置脱敏规则生效或失效。
创建静态脱敏规则:数据集成场景
在数据脱敏管理页面,选择脱敏场景为DataWorks数据集成脱敏(dataworks_data_integration_desense_code)。
新建数据脱敏规则。
在数据脱敏配置页面,单击右上方的新建脱敏规则。
在脱敏规则对话框中,选择需要设置的敏感数据类型、脱敏规则名称、脱敏方式、安全域和替换字符集。
配置基础信息
参数
描述
敏感数据类型
默认为选择已有,右侧下拉框选择已创建的敏感数据类型(包括内置和所有用户创建的敏感数据类型)。你可以根据需要选择已创建的敏感数据类型。
可切换新增类型,右侧输入框可输入敏感数据类型名称(输入字符限制1~30字,包括:中文、英文、数字)。
用户输入新增敏感数据类型,系统会判断文字与已有敏感数据类型名称是否相同(包括:内置和该租户下所有用户配置的敏感数据类型),如果名称相同则提示敏感字段类型重复。
说明内置敏感数据类型:手机号、身份证号、银行卡号、邮箱_内置、IP、车牌号、 邮政编码、座机号、MAC地址、地址、姓名、公司名、民族、星座、性别、国籍。
脱敏规则名称
该文本框会自动代入用户填写的敏感数据类型(输入字符限制1~30字,包括:中文、英文、数字),您也可以在该敏感数据类型下新增脱敏规则名称,当与该租户下所有用户创建的脱敏规则出现重名时,提示规则名称重复。
配置脱敏方式与规则:DataWorks支持的脱敏方式包括假名、哈希和掩盖三种方式。
假名
假名脱敏会将一个值替换成一个具有相同特征的脱敏信息。脱敏后数据和脱敏前数据的格式保持一致。
当选择的敏感数据类型为内置敏感数据类型(手机号、身份证号、银行卡号、邮箱_内置、IP、车牌号、 邮政编码、座机号、MAC地址、地址、姓名、公司名)时,用户需要配置安全域。
安全域:可选范围0~9,不同安全域的脱敏策略规则不一致,即相同的待脱敏数据在不同的安全域脱敏出来的结果信息不一致。例如,原始数据为a123,安全域设置为0时,脱敏成b124,安全域设置为1时,脱敏成c234。原始数据相同时,如果安全域相同则脱敏后的数据也是相同的。
当选择的敏感数据类型为非内置时,用户需要配置替换字符集。
替换字符集:遇到字符集中的字符,即会被替换为其他相同类型的字符,不支持中文,若需要脱敏的数据不符合字符集范围则不脱敏(可输入大写字母、小写字母、和数字,多个字符请用英文逗号隔开),例如,敏感数据脱敏前是0~3的数字和a~d的字母组成,那么脱敏后也会脱敏成在这个范围内的数字和字母。
哈希
可将原始数据加密成固定长度的数据。HASH脱敏方式需要选择安全域。
安全域:可选范围0~9,不同安全域的脱敏策略规则不一致,即相同的待脱敏数据在不同的安全域脱敏出来的结果信息不一致,如果安全域相同则脱敏后的数据也是相同的。
例如,原始数据为a123:
安全域设置为0时,脱敏成b124。
安全域设置为1时,脱敏成c234。
掩盖
掩盖脱敏是对部分信息进行掩盖,将对应位置上的字符用“*”替换,达到脱敏的效果。
推荐方式:下拉框可选择只展示前1位和最后1位、只展示前3位和最后2位、只展示前3位和最后4位。
自定义:自定义提供了更加灵活的设置方式,按从左至右顺序配置分段是否脱敏,以及需要脱敏(或者不脱敏)的字符长度。最多可添加10个分段,必须要有且仅有1个分段是剩余位数。
例如,脱敏前3位,剩余位数不脱敏。
例如,脱敏后3位,剩余位数不脱敏。
验证脱敏配置结果:您可以在样本数据文本框中输入脱敏前样本数据(输入字符限制0~100字符),单击脱敏验证,在脱敏效果中会返回脱敏后的数据。
单击确定。
创建完成脱敏规则后:
刚创建完成的脱敏规则默认状态为不生效,您需要设置状态为生效后,脱敏规则才会在后续对应脱敏场景中被应用,设置状态操作详情请参见配置脱敏规则生效或失效。
创建数据集成脱敏规则后,您可以在创建实时同步单表数据任务的时候使用该脱敏规则。详情请参见配置数据脱敏。
配置脱敏规则白名单(仅动态脱敏支持)
对于动态脱敏场景的脱敏规则,您可以设置脱敏规则的白名单用户,后续在脱敏规则生效后,白名单用户的脱敏规则在指定时间内不生效,即可获得未脱敏的数据。新增白名单的操作如下。
单击菜单栏中的白名单配置管理。
在白名单配置管理页面,单击右上方的新增白名单。
在新增白名单对话框中,配置相关信息。
说明Hologres展示脱敏场景不需要配置白名单。
设置白名单生效时间后,对于符合白名单条件的敏感数据,将在指定有效期内不进行脱敏处理。
白名单条件不可以全部设置为全部。
参数配置如下。
参数
描述
规则
选择脱敏规则。
用户组
您可以选择在管理用户组中已配置的用户组,最多可选50个用户组。添加用户组至白名单后,用户组内的账号获取到的数据为脱敏前的原始数据。用户组管理配置详情请参见:配置用户组。
生效时间
您可以设置白名单生效时间。设置后,如果不在白名单脱敏时间的区间内,该用户在查询该敏感信息时将会继续脱敏。
说明设置为短期后,表示从当前时间开始到指定天数内的数据将不进行脱敏。
单击保存完成白名单配置。
配置脱敏规则生效或失效
在数据脱敏配置页面,单击对应脱敏规则列表中的状态开关,设置脱敏策略的状态为生效或失效。
设置成功后,单击相应脱敏规则后的操作列的图标,可以执行删除脱敏规则、修改脱敏规则和查询详情的操作。
生效的规则不允许执行删除和修改的操作。您需要先将规则失效,失效时判断是否有相关任务使用到该规则,请联系安全管理员二次确认。
失效状态下您可以修改脱敏方式,但是敏感数据类型和脱敏规则名称不可修改。
修改完成后开启生效,配置该脱敏规则的任务可继续脱敏。