敏感数据是指泄漏后可能会给社会或个人带来严重危害的数据。
对个人而言,身份证号码、家庭住址、工作单位、银行卡号等隐私信息都是敏感数据;对企业或组织而言,客户资料、财务信息、技术资料、重大决策等公司核心信息都是敏感数据。
静态脱敏:可以按照脱敏规则一次性完成大批量数据的变形转换处理,静态脱敏通常用在将生产环境中的敏感数据交付至开发、测试或者外发环境的情况使用,适用于开发测试、数据分享、数据研究等场景。您可以通过DSC控制台创建脱敏任务,快速实现对数据库和大数据的脱敏。
动态脱敏:DSC提供动态脱敏API,支持用户对外部申请访问的数据实时脱敏。动态脱敏通常会在数据对外提供查询服务的场景中使用,适用于生产应用、数据交换、运维应用、精准营销等场景。具体的操作方法请参考数据动态脱敏。
图1 脱敏流程
DSC预置了100+条敏感数据识别和脱敏规则,可对个人敏感信息(身份证、银行卡、姓名、手机号、邮箱等)、企业敏感信息(营业执照号码、税务登录证号码等)、密钥敏感信息(PEM证书、HEY私钥等)、设备敏感信息(IP地址、MAC地址、IPV6地址等)、位置敏感信息(省份、城市、GPS位置、地址等)和通用敏感信息(日期)等敏感信息进行识别和脱敏,具体的脱敏算法及使用场景如表1所示。
表1 脱敏算法说明
脱敏算法 |
脱敏方式说明 |
使用场景 |
Hash脱敏 |
使用Hash函数对敏感数据进行脱敏。支持SHA256和SHA512。
- SHA256
将数据库表中字符串类型字段的内容用其SHA256的摘要值代替。
该算法执行完后,结果的长度可能超过原表中列允许的最大长度。该算法按照SHA256输出长度调整列的长度。
- SHA512
将数据库表中字符串类型字段的内容用其SHA512的摘要值代替。
该算法执行完后,结果的长度可能超过原表中列允许的最大长度。该算法按照SHA512输出长度调整列的长度。
|
|
加密脱敏 |
通过加密算法和加密主密钥生成一种加密配置,达到数据脱敏的效果。加密脱敏的结果中,初始向量IV为加密字符串的前16个字节,剩余部分是加密的密文。
DSC支持AES128、AES192和AES256三种加密算法。 |
|
字符掩盖 |
使用指定字符*或随机字符(随机字符包含随机数字、随机字母、随机数字字母三种类型)方式遮盖部分内容。 支持以下六种脱敏方式:
- 保留前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”
- 数字取整
针对指定数字进行取整运算。
|
|