likes
comments
collection
share

汽车之家敏感数据治理实践

作者站长头像
站长
· 阅读数 15

引言

导语:随着大数据时代的到来,信息安全问题备受关注,用户对于个人隐私保护的要求越来越高。汽车之家作为国内最大的汽车垂直门户网站之一,一直致力于用户敏感数据保护。

本文介绍,汽车之家通过研发”加解密中间件-AutoProxy”,实现敏感数据透明加解密,完成大量的历史存量及新增敏感数据的脱敏治理,更安全的保护用户信息。

1.敏感数据治理背景

1.1 数据安全及合规需求

数据安全事故时有发生,国家近年出台了《网络安全法》,《个人信息保护法》,《GB/T 35273 个人信息安全规范》,《关于开展互联网行业市场秩序专项整治行动的通知》等多部数据安全法律、法规进行个人信息保护。

汽车之家敏感数据治理实践

1.2.数据脱敏方法

- 数据脱敏步骤

数据脱敏:敏感数据脱敏写入/读取需要经过如下步骤, 敏感数据识别→敏感数据脱敏→密文存储→解密读取。

汽车之家敏感数据治理实践

- 数据脱敏方案

依脱敏模块的位置不同,可分成三种情况: 1. 应用层加解密SDK脱敏 2.中间层(API/Porxy)脱敏  3.数据库原生脱敏。 

其中“中间层脱敏”可以分成API脱敏,Proxy脱敏 两种子类; 而数据库原生脱敏需依赖于数据库本身的特性和函数,本文不做讨论。

汽车之家敏感数据治理实践

数据脱敏方案对比

对常见的脱敏方案从接入成本、维护成本、支持语言、SQL兼容性、性能等维度进行对比。 

汽车之家敏感数据治理实践

2. 之家数据脱敏现状与挑战

2.1 之家有大量数据需要脱敏

汽车之家作为国内最大的汽车垂直门户网站,存有大量的的存量及新增敏感数据如身份证号,手机号等用户信息等,需要脱敏(明文加密)存储。最近三年,之家敏感数据字段新增一直是增长趋势,从2000年的3000列/年增涨到2022年的10000列/年。

汽车之家敏感数据治理实践

2.2 之家传统脱敏方法

为实现数据脱敏,之家提供自研API加解密接口来实现数据的脱敏。API脱敏方法如下图所示。 

汽车之家敏感数据治理实践

2.3 API脱敏问题与挑战

传统API脱敏是有侵入性,不能兼容SQL语法,数据脱敏成本较高的缺点。之家有大量的存量及新增敏感数据(要脱敏的敏感字段列>1W),因为安全合规需要在较短限期完成加密处理,繁重的工作量及成本是个挑战。

汽车之家敏感数据治理实践

3. 基于加解密中间件的数据脱敏实践 

为了解决上节提到的传统API数据脱敏有侵入性,成本高的痛点问题。之家研发了基于加解密中间件“AutoProxy”的透明数据脱敏。 

本节主要内容如下:

汽车之家敏感数据治理实践

3.1 面向应用透明的中间件脱敏

透明加解密是指在不影响应用程序的正常运行情况下,自动对数据进行加密和解密,不需要应用程序编写额外的加解密代码。透明加解密技术用于敏感数据脱敏可以对应用代码无侵入,避免传统API数据脱敏有侵入性,成本高的痛点。

汽车之家敏感数据治理实践

3.2 数据脱敏方案选型

为了节约研发成本,我们计划选择一款开源软件进行"二次开发"来满足之家透明脱敏的需求。数据脱敏选型需要考虑的因素有脱敏功能、稳定性、运维成本、改造成本、生态情况等。

汽车之家敏感数据治理实践

之家DBA团队调研/测试业界开源的脱敏工具,最终决定用Sharding-Proxy进行二开来实现数据脱敏,Sharding-Proxy是透明化的数据库代理,可支持自定义加解密算法,正满足之家脱敏需求。

3.3 之家脱敏系统架构图

汽车之家敏感数据治理实践

3.4 自定义加密算法

之家脱敏中间件"AutoProxy"支持MD5、AES、RC4、SM3/SM4等加密算法,同时支持自定义加解密算法。事实上为了原来的API脱敏兼容,AutoProxy使用了和原来API脱敏完全相同的自定义加密算法。

汽车之家敏感数据治理实践

3.5 功能及性能测试

新产品上线前需要进行功能测试、性能测试、兼容性测试。经性能测试对比,之家中间件"AutoProxy"脱敏的性能较原来的API加密性能提升2倍。 

汽车之家敏感数据治理实践

3.6 之家脱敏自动化平台建设

3.6.1 脱敏平台建设涉及工作

脱敏自动化平台化建设: 主要涉及脱敏组件的安装布署、高可用、数据脱敏处理、工单申请等,目前这些工作都已实现自动化,提升了工作效率及服务质量。

汽车之家敏感数据治理实践

汽车之家敏感数据治理实践

3.6.2 脱敏平台部分界面

汽车之家敏感数据治理实践

汽车之家敏感数据治理实践

3.7 存量敏感数据脱敏

全新数据表的脱敏比较简单,仅需要直接接入脱敏中间件”AutoProxy“就可。 存量历史数据脱敏,业务方常希望中间件可以在**“不影响正常业务,即原敏感表可正常读写的情况下完成明文敏感数据脱敏”**。存量敏感数据脱敏相对较复杂,下面做一简单步骤描述。

汽车之家敏感数据治理实践

存量敏感数据脱敏步骤:

 1. 给需要脱敏的字段,增加密文列。 2. 研发申请脱敏中间件 3. 业务修改DB后端地址为脱敏中间件地址(注意:此时新增数据会通过中间件的脱敏功能自动加密敏感数据,并存在相应的密文列) 4. 通过工具对历史敏感数据全部刷新 (此时表中同时存在敏感明文列和密文列) 5. 脱敏中间件切换到使用密文列模式 6.原明文敏感数据列删除。

汽车之家敏感数据治理实践

4. 结语

本文介绍了敏感数据脱敏背景及常见技术。重点对汽车之家敏感数据治理实践进行阐述:之家原来使用API脱敏,存在脱敏成本较高的缺点。为此之家数据库团队新研发“脱敏中间件-AutoProxy”来进行数据脱敏。 AutoProxy具有面向透明化数据脱敏,SQL语法兼容、支持自定义加密、性能优良等优点,利用AutoProxy的助力,22年之家完成了近1W张敏感数据表的脱敏。

未来之家计划继续进行“脱敏系统平台”建设,在敏感数据表自动化识别,AutoProxy容器化等方向进行尝试。