近期,业界在广泛讨论数据分类分级对于数据安全的重要性。一些人认为,虽然数据的分类整理对于其流通和使用具有积极作用,但对于确保数据安全的贡献有限。他们认为这一局限性主要源于应用层面的数据管控无法与数据库数据的分类分级结果有效整合,因此只能依赖于应用层自身的数据分类分级机制。
然而,笔者对此持有不同看法。
通过实施三层穿透技术,我们可以识别并关联应用层数据所涉及的数据库表和字段,进而与数据库数据的分类分级结果相结合。这种技术的应用能够实现对应用层面数据的精确安全管控,确保数据安全策略的一致性和有效性。这不仅提高了数据管理的效率,也加强了数据安全的整体防护。
在三层架构体系中,系统由客户端、应用服务器和数据库服务器三个核心层次构成。客户端主要通过浏览器,利用HTTP协议与应用服务器进行通信,用户与之交互的是网页URL链接等网络访问手段。当应用服务器接收到来自客户端的请求时,它会根据请求内容构造相应的SQL语句,对后端数据库执行具体的数据操作。操作完成后,应用服务器将处理结果封装并传递回客户端,完成整个请求-响应的数据交互过程。
在传统数据安全管理中,应用服务器层的HTTP访问与数据库层的SQL访问之间存在信息孤岛,导致敏感数据的识别工作往往独立于各自的层面进行。这种分离的识别机制限制了数据安全管控的效率和效果,因为它需要在两个层面上分别实施敏感数据的识别,然后才能对这些数据执行必要的保护措施。
为了提升数据安全管理的一致性和连续性,可采取一种综合策略,实现应用层与数据库层安全策略的同步,确保敏感数据在全生命周期内得到统一识别和保护,也即“三层穿透技术”。
三层穿透技术通过在应用服务器上部署轻量级的插件(Agent),实现了对客户端通过URL访问应用服务器的行为与应用服务器发起的数据库SQL操作之间的智能关联。这一技术能够使数据库审计、数据库防火墙和数据动态脱敏等精确追踪并识别涉及的用户身份、数据库表和字段信息,提供了必要的上下文信息。如下图,用户访问应用服务器的请求与应用服务器访问数据库的SQL进行关联:
结合数据库数据分类分级的结果和用户的权限设置,应用层数据安全控制能力就能够实施定制化的数据安全策略。如下图:
用户User1被授予对“个人信息”类别数据的读取权限,但禁止写入操作;而用户User2则被限制对“经营数据”类别数据的读取和写入权限。通过将用户权限信息与数据分类分级结果相结合,我们可以明确:当用户User1访问存储个人信息的User_info表时,可以查看访数据的明文形式;相对地,User2在访问存储经营信息的Finance_info表时,必须对相关数据应用脱敏处理,以确保数据的保密性。
根据上述定义的用户权限和数据分类分级结果,数据库防火墙能够实现访问控制:对于User1用户的合法访问请求,数据库防火墙将予以放行,确保其正常访问所需数据;而对于User2用户的访问请求,由于其权限限制,数据库防火墙将直接阻断其访问,并触发安全告警机制,及时通知管理员存在可能的未授权访问尝试。
三层穿透技术通过精确关联应用层请求与数据库操作,为识别和追踪用户行为提供了有效手段。尽管如此,这项技术在实施过程中也面临了一些挑战:
1、架构适应性挑战:三层穿透技术用于跨越多层系统架构,其效果可能受到应用架构复杂性的影响。例如,在四层或包含单点登录、负载均衡的架构中,用户信息的准确识别可能变得困难,从而影响穿透技术的效果。
2、系统兼容性问题:不同数据库和应用系统架构可能需要特定的穿透技术,这也可能导致兼容性问题,需要对不同系统进行定制化适配,增加了技术整合的复杂度。
要解决好企业的数据安全问题,应该是一个体系化的建设过程,包括组织团队保障、制度流程指导、防护技术支撑,以及日常持续的运营,而不应是单靠某项技术或产品就可以解决好数据安全问题。在数据安全体系建设过程中数据分类分级是基础,是精细化安全管控策略制定的依据,形成基于身份、权限、行为的细粒度管控。
同时,数据分类分级也需要持续化运营,而不是一次完成后就一劳永逸的,需要随着数据使用场景的变化、数据量的变化等多方面因素综合考量数据分类分级标准的调整,持续对数据进行分类分级。后续我们将介绍“如何实现持续的对数据分类分级”。