openGauss动态数据脱敏优势
openGauss动态数据脱敏关注访问用户身份识别问题,用户过滤器(Masking Filter)的配置细化到指定用户、客户端工具、登录IP,策略管理员可以灵活地根据不同业务、不同用户场景来制定不同的脱敏策略,赋予他们不同级别的敏感数据访问能力以适用于各种复杂的生产环境。例如金融、医疗行业中前台服务人员只允许看到身份证、银行卡号部分信息,而运维管理员则可以查询并维护所有用户信息。在保证脱敏场景多样性的前提下,指定用户过滤器时系统会进行严格的互斥校验,避免同一用户同时满足多个用户过滤器而出现策略选择的二义性。
图3:openGauss根据过滤条件脱敏
其次,openGauss动态数据脱敏更加注重数据库资源的批量管理,在安全策略模型中,将需要管控的数据库资源集中归类划分成标签,对标签的操作实际上就是对指定一簇资源的操作,极大的简化管理流程,提高管理效率。在其他数据库上的动态数据脱敏特性一般是基于单个列或单张表的,脱敏策略与数据库资源是一一对应的,即使想要采用相同的脱敏方式,不同的数据库资源也要配置多个对应的脱敏策略,这无疑是提高了策略配置成本,增加了后期运维、批量资源策略管理的难度。因此将需要批量管理的数据库资源划分到资源标签中是openGauss动态数据脱敏的基础,也是其优势之一。
图4:openGauss资源标签批量配置策略
动态数据脱敏内置在openGauss内核中,能够在一定程度上保证数据传输路径上的安全性,而外部插件存在绕过风险:当外部插件将客户端发送的SQL或服务端返回的结果集改写后,攻击者依然可以绕过插件直接向数据库发送SQL或截取数据库返回的源数据结果集,导致脱敏插件失效。因此相较于外部插件脱敏的方式,openGauss动态数据脱敏在一定程度上也能降低传输路径上的敏感数据泄漏风险。
动态数据脱敏其目的是屏蔽结果集中的敏感数据,动态数据脱敏是与生产环境相结合,由业务方提供查询接口,再由接口触发数据脱敏,openGauss为了尽可能的保证敏感数据的安全性,在绝大多数场景包括带有RETURNING的增删改、Merge into、CTE、Subquery等场景也适配了脱敏策略,这样能够丰富业务方对敏感数据的操作接口而不单单只能提供数据查询接口。
openGauss为了提高易用性,提供了一套简洁的策略配置语法,涵盖了资源标签以及脱敏策略的增删改,用户使用定义语法可以轻松地配置脱敏策略,简化了管理员操作流程。
openGauss 动态数据脱敏的展望
openGauss动态数据脱敏特性提供了相对简洁、灵活的策略配置方案,在一定程度上保用户隐私数据不被泄漏,是openGauss多层级安全防御架构中不可或缺的一环。
未来openGauss动态数据脱敏特性将开放更加灵活的策略配置手段包括UDF(User Defined Function)Masking以及条件脱敏(Conditional Masking)等,以期支持更加灵活、丰富的隐私保护场景。
更多内容请参考:
https://docs.opengauss.org/