技术分享-动态脱敏

简介: 数据脱敏(Data Masking),又称数据混淆、数据漂白、数据去隐私化。用虚假的数据掩饰真实数据,以达到防止数据泄漏的目的。

一、什么是数据脱敏

       数据脱敏(Data Masking),又称数据混淆、数据漂白、数据去隐私化。用虚假的数据掩饰真实数据,以达到防止数据泄漏的目的。


二、为什么要做数据脱敏

1、数据泄露风险

       数字信息化时代,数据是一笔宝贵的资产。不管是企业还是政府单位,随着业务的发展,收集、存储、共享数据越来越多,规模越来越大。应用数据的场景越来越多,很多不规范的数据应用导致了敏感数据泄露,一旦发生数据泄露,对用户和企业都将造成比较大的损失。据美国通信运营商Verizon再次发布第16份年度数据泄露调查报告——《2023数据泄露调查报告》(以下简称:2023DBIR),本次报告基于大量现实事件进行分析,共计16,312起安全事件和5,199起数据泄露事件。

2、企业应尽的业务和责任,遵守国内外法律明确规定数据保护要求

       1)国内:《网络安全法》、《公共及商用服务信息系统个人信息保护指南》以及与金融业密切相关的《商业银行信息科技风险管理指引》等。

       2)国外:欧盟GDPR(《一般数据保护条例》)、HIPAA(美国的健康保险携带和责任法案)、SOX(美国萨班斯法案,会计职业监管、公司治理、证券市场监管等方面改革的重要法律)、PCI DSS(全球性支付卡行业数据安全标准)等。


三、数据脱敏的难点

1、敏感数据识别

       数据脱敏的前提需要对整个企业的数据资产分布以及敏感数据进行识别,对不同等级不同标识的敏感数据采用不同的脱敏加密算法。来满足数据保护以及合规要求。

2、保障业务正常运营

       各业务对数据运营的需求各不相同,如BI人员需要明文数据,客服人员需要脱敏数据,技术人员需要使用遮盖脱敏,运营人员需要使用数据混淆脱敏。需要将敏感数据脱敏方式+权限管控+动态策略相结合的方式来解决复杂的业务场景。

3、系统侵入性

       企业发展到一定规模,数据合规的需求日益增长,意味着在做数据脱敏的时候已经存在大量的应用系统,数据脱敏如何做到对系统侵入小或者无感接入。

4、系统稳定性

       对于企业来讲,业务是根本,任何事情都要在保障系统稳定的前提下进行,数据脱敏对系统稳定性的影响如何评估,如何保障稳定性。


四、数据脱敏现有技术

1、数据库代理层脱敏


       优点:

       1)无业务侵入性,代理应用系统后只需更改前端请求后端的IP地址即可实现脱敏要求。

       2)可实现根据用户信息、路径进行脱敏,满足应用系统角色和权限脱敏的需求。

       缺点:

       1)稳定性风险:使用代理模式,代理服务器出现问题会导致产品不可用。

       2)学习成本大,需要充分了解业务才能对返回字段进行脱敏规则配置。

       3)配置工作量大,需要对每个应用、每个接口、每个字段进行脱敏配置,容易疏漏。

       4)存在绕过风险,应用数据库不具备脱敏能力,可绕过代理直接访问应用数据库。

       5)性能差,结果集脱敏是在接收到返回数据包后解析成结果集,再逐行完成解析与脱敏。

       6)无精细化配置脱敏策略能力,无法根据表级别字段进行脱敏。


2、应用层结果脱敏


       优点:

       1)无业务侵入性,代理应用系统后只需更改前端请求后端的IP地址即可实现脱敏要求。

       2)可实现根据用户信息、路径进行脱敏,满足应用系统角色和权限脱敏的需求。

       缺点:

       1)稳定性风险:使用代理模式,代理服务器出现问题会导致产品不可用。

       2)学习成本大,需要充分了解业务才能对返回字段进行脱敏规则配置。

       3)配置工作量大,需要对每个应用、每个接口、每个字段进行脱敏配置,容易疏漏。

       4)存在绕过风险,应用数据库不具备脱敏能力,可绕过代理直接访问应用数据库。

       5)性能差,结果集脱敏是在接收到返回数据包后解析成结果集,再逐行完成解析与脱敏。

       6)只能针对HTTP协议进行脱敏,无法对其他协议数据进行脱敏,无法对系统之间流转的数据进行脱敏。


3、API层结果集改写


       优点:

       1)API脱敏在应用系统中,可跟随应用一起伸缩。

       2)影响范围可控,只在调用API返回结果中进行脱敏。

       3)API脱敏针对系统所有对外和对内输出的API,保证系统之间流转的数据是已脱敏数据。

       缺点:

       1)学习成本大,需要充分了解业务才能对返回字段进行脱敏规则配置。

       2)配置工作量大,需要对每个应用、每个接口、每个字段进行脱敏配置,容易疏漏。

       3)存在绕过风险,应用数据库不具备脱敏能力,可绕过代理直接访问应用数据库。

       4)性能差,结果集脱敏是在接收到返回数据包后解析成结果集,再逐行完成解析与脱敏。


4、数据库代理层SQL改写


       优点:

       1)无业务侵入性,代理数据库后只需更改请求数据库IP地址即可实现脱敏要求。

       2)可以根据数据库账号信息进行单独鉴权配置和脱敏策略配置,降低数据泄漏的风险。

       3)脱敏效率高,通过改写原SQL方式实现脱敏效果,将脱敏通过数据库函数处理。

       缺点:

       1)稳定性风险:使用代理模式,代理服务器出现问题会导致产品不可用。

       2)无法处理select * 的语句,代理服务器在应用系统和应用数据库之间,获取不到应用数据库的表结构,对*无法翻译,无法根据字段进行脱敏。

       3)存在绕过风险,应用数据库不具备脱敏能力,可绕过代理直接访问应用数据库。


5、混脱(数据库代理SQL改写+API结果集脱敏)


       优点:

       混脱方式可以解决数据库代理SQL改写不能翻译select *的问题,包含select * 由API对结果进行脱敏处理,不包含select * 由数据库代理SQL改写处理

       缺点:

       1)稳定性风险:使用代理模式,代理服务器出现问题会导致产品不可用。

       2)维护成本高,数据库代理和应用端都需要维护。

       3)两端配合脱敏,无法保证流量全覆盖。

       4)存在绕过风险,应用数据库不具备脱敏能力,可绕过代理直接访问应用数据库。


6、 Apache Ranger动态脱敏插件技术


       优点:

       1)维护成本低,只需在数据库server安装脱敏插件即可。

       2)无法绕过风险,通过插件的方式安装在数据库服务端,使数据库具有脱敏能力。

       3)不同于结果集脱敏是通过查询完结果集后在应用层脱敏,插件方式是在服务端通过SQL改写的方式进行脱敏,SQL改写脱敏使用数据库自带的函数进行脱敏,所有脱敏工作由数据库来完成,效率高。

       4)脱敏是在服务端中,对字段包含*的查询语句可以从查询上下文中获取表字段详情并通过SQL转译后进行脱敏。

       缺点:

       1)plugin安装/升级,需要重启集群,无法热更新。

       2)兼容性,需要适配不同server版本。

       3)学习成本大,需要充分了解业务才能对返回字段进行脱敏规则配置。

       4)配置工作量大,需要对需要配置的脱敏的每个字段进行脱敏配置且容易遗漏。

       5)ranger sql改写基于子查询改写原理,对多表JOIN,where条件中带脱敏字段查询操作处理不好,无法拿到预期结果。


7、总结

       上面介绍到技术方案各有优缺点,代理类实现方案存在性能,稳定性,绕过风险,使用成本高等问题,动态脱敏插件/sql改写方案存在查询结果集不符合预期,兼容性等问题。


五、用九智汇脱敏实现



       1、采用数据识别和脱敏分离的架构实现,能够大幅提升api/plugin脱敏性能。

       2、通过用户权限,数据资产,以及个人账号信息构建用户数据资产画像,当用户访问某个资产(应用/数据库等)时,能够根据用户的数据资产画像快速得出用户有没有权限访问、是否需要脱敏、采用什么样的脱敏算法。

       3、通过建立对用户数据资产发现和敏感数据识别打标技术能力,为数据脱敏提供数据分级和标识依据,结合脱敏策略和脱敏算法配置,满足对不同分级不同标识的敏感数据采用不同的脱敏加密算法。对不同身份对同一分级同一标识不同脱敏算法实现的业务需求。

       4、通过脱敏策略和脱敏算法配置的实现方式,在访问数据时能够根据访问用户权限等信息动态计算出本次访问的脱敏算法,无需对每个数据源每个表每个字段进行配置,大幅降低运营成本。

       5、数据脱敏提供动态脱敏插件和API脱敏SDK两种集成方式,满足客户对不同防控需求选择不同的集成方式。


阅读原文:技术分享-动态脱敏

相关文章
|
6月前
|
算法 API 开发者
沪深A股实时行情API接入指南
逐笔Tick数据接口,查询A股上市公司的最新成交明细,确保获取市场的最新交易信息。返回示例如下:
|
存储 缓存 安全
【VSAN数据恢复】VSAN集群节点数据迁移失败的数据恢复案例
VSAN存储是一个对象存储,以文件系统呈现给在vSphere主机上。这个对象存储服务会从VSAN集群中的每台主机上加载卷,将卷展现为单一的、在所有节点上都可见的分布式共享数据存储。 对于虚拟机来说,只有一个数据存储,这个分布式数据存储来自VSAN集群中每一台vSphere主机上的存储空间,通过磁盘组进行配置,在单独的存储中存放所有的虚拟机文件。这种数据存储方式比较安全,当闪存盘或者容量盘出现故障的时候,数据会向其他节点转移,在转移过程中有可能出现故障。
|
监控 Linux Shell
Rsync 基于 SSH 同步
Rsync 实时同步配置
443 3
|
并行计算 Linux 异构计算
JAX 中文文档(一)(1)
JAX 中文文档(一)
1102 0
|
负载均衡 安全 网络安全
什么是 Traceroute?为什么要使用它?
【8月更文挑战第31天】
1384 0
|
存储 NoSQL 容灾
数据库非功能需求分析
本文探讨了业务研发在技术设计中如何满足非功能需求,重点关注数据库系统的角色。内容涵盖数据库的可用性、可靠性、性能、可修改性、安全性及成本。文章强调了根据业务场景选择合适的数据类型(如关系型、非关系型、内存型、图数据库和时间序列数据库)以及考虑数据容量和增长速度。对于性能需求,讨论了响应时间、吞吐量和并发处理能力。此外,还提到了升级路径、兼容性、备份方案和成本控制(硬件、软件和人力成本)在数据库管理中的重要性。
532 0
|
设计模式 监控 架构师
如何在项目中考虑非功能需求
软件非功能需求包括性能、可靠性、安全性、易用性、可维护性、可移植性、兼容性、可重用性、可扩展性和可观察性。质量属性分为开发期和运行期,如易理解性、可扩展性、可测试性等是开发期质量,性能、安全性、易用性等是运行期质量。评估方法有ATAM(架构评估技术)、ADMEMS矩阵方法、SAAM(软件架构分析法)和CBAM(成本效益分析法)。ATAM包括建立评估小组、获取架构信息、风险承担者观点和形成最终报告四个阶段。
738 0
|
云安全 安全 开发工具
权威认证|瓴羊荣获ISO27001与ISO27018安全合规认证
权威认证|瓴羊荣获ISO27001与ISO27018安全合规认证
328 0