DSC的数据脱敏支持静态脱敏和动态脱敏。您可以对指定数据配置脱敏规则实现敏感数据静态脱敏,同时,您也可以使用数据动态脱敏的API接口实现数据的动态脱敏,全方位确保敏感信息不被泄露,数据安全中心支持的脱敏算法如脱敏算法所示。
静态脱敏:可以按照脱敏规则一次性完成大批量数据的变形转换处理,静态脱敏通常用在将生产环境中的敏感数据交付至开发、测试或者外发环境的情况使用,适用于开发测试、数据分享、数据研究等场景。您可以通过DSC控制台创建脱敏任务,快速实现对数据库和大数据的脱敏。
动态脱敏:DSC提供动态脱敏API,支持用户对外部申请访问的数据实时脱敏。动态脱敏通常会在数据对外提供查询服务的场景中使用,适用于生产应用、数据交换、运维应用、营销等场景,具体请参考数据动态脱敏。
数据脱敏操作流程
图1 静态脱敏操作流程
图2 动态脱敏操作流程
脱敏算法
表1 脱敏算法说明
脱敏算法 |
脱敏方式说明 |
使用场景 |
Hash脱敏 |
使用Hash函数对敏感数据进行脱敏。支持SHA256和SHA512。
- SHA256
将数据库表中字符串类型字段的内容用其SHA256的摘要值代替。
该算法执行完后,结果的长度可能超过原表中列允许的最大长度。该算法按照SHA256输出长度调整列的长度。
- SHA512
将数据库表中字符串类型字段的内容用其SHA512的摘要值代替。
该算法执行完后,结果的长度可能超过原表中列允许的最大长度。该算法按照SHA512输出长度调整列的长度。
|
|
加密脱敏 |
通过加密算法和加密主密钥生成指定的数据密钥,使用数据密钥对敏感数据进行加密达到数据脱敏的效果。
DSC支持AES256和SM4两种加密算法。 |
|
字符掩盖 |
使用指定字符*或随机字符(随机字符包含随机数字、随机字母、随机数字字母三种类型)方式掩盖部分内容。 支持以下六种脱敏方式:
- 保留前n后m
- 保留自x至y
- 掩盖前n后m
- 掩盖自x至y
- 特殊字符前掩盖
- 特殊字符后掩盖
|
|
关键字替换 |
在指定列中查找关键词并替换。
例如,目标字符串为“张三在家吃饭”,算法执行完后映射为“张先生在家吃饭”,其中指定将“张三”替换为“张先生”。
该算法执行完后,结果的长度可能超过数据库允许的最大长度。该算法将超出部分截断后插入数据库。 |
|
删除脱敏 |
将指定字段设置为Null或空值进行脱敏。
|
|
取整脱敏 |
针对日期或数字特定参数进行取整运算。
- 日期取整
年之后字段全部取整。示例:“2019-05-12 -> 2019-01-01”或“2019-05-12 08:08:08 -> 2019-01-01 00:00:00”
月之后字段全部取整。示例:“2019-05-12 -> 2019-05-01”或“2019-05-12 08:08:08 -> 2019-05-01 00:00:00”
日之后字段全部取整。示例:“2019-05-12 -> 2019-05-12”或“2019-05-12 08:08:08 -> 2019-05-12 00:00:00”
小时之后字段全部取整。示例:“08:08:08 -> 08:00:00”或“2019-05-12 08:08:08 -> 2019-05-12 08:00:00”
分钟之后字段全部取整。示例:“08:08:08 -> 08:08:00”或“2019-05-12 08:08:08 -> 2019-05-12 08:08:00”
秒之后字段全部取整。示例:“08:08:08.123 -> 08:08:08.000”或“1575612731312 -> 1575612731000”
- 数字取整
针对指定数字进行取整运算。
|
|