背景
随着数据安全意识的提高,企业越来越重视数据治理和权限管理。传统数仓大多对库级别进行读写授权,仅对人工标记的敏感库进行表级别授权,但由于敏感等级是由人为标记,错误率较高,故期望将权限申请流程细化到表级申请。本文将探讨信也科技如何将数据仓库的权限申请流程从库级别细化到表级别,并利用分类分级系统自动对数据表和字段进行敏感等级标记,实现不同敏感等级数据差异化审批流转,从而提高数据安全性。
数据仓库权限管理的挑战
传统的数据仓库权限管理通常集中在库级别,这可能导致权限过于宽泛,增加了数据泄露的风险。为了提高数据的安全性,需要将权限管理细化到表级别,并根据数据的敏感等级要求,来增加不同角色审批,例如低敏数据仅需要业务总监审批,高敏数据还需要CRO审批等。
权限过宽:库级别的权限管理可能导致用户访问权限过宽,增加了数据泄露的风险。
合规性问题:随着数据保护法规的加强,企业需要确保数据访问符合法律要求。
数据分类困难:数据的多样性和复杂性使得分类和分级成为一项挑战。
表级别权限管理的优势
精细化控制:表级别的权限管理可以更精确地控制用户对特定数据的访问。
降低风险:通过限制对敏感数据的访问,可以降低数据泄露和滥用的风险。
提高合规性:表级别管理有助于确保企业遵守数据保护法规。
分类分级系统的作用
数据分类:将数据根据其业务价值、敏感性和风险等级进行分类。
数据分级:根据数据的分类结果,将数据划分为不同的敏感等级。
动态权限管理:分类分级系统可以动态调整权限,以适应数据的变化和业务需求。
表级别权限申请及数据同步流程的设计
需求分析:确定用户对数据的需求和使用场景。
分类分级:使用分类分级系统对数据仓库中的表进行分类。
权限申请:根据表的不同敏感等级,设计不同的权限申请流程。
审批流程:建立严格的审批机制,确保权限的合理分配。
监控与审计:实施监控措施,定期审计权限使用情况。
生产案例
引入角色概念
新员工的快速融入和高效工作是至关重要的。为了实现这一目标,我们引入了“角色”这一概念。角色是一种权限管理的策略,它允许我们将一系列权限挂载在角色中,并通过用户申请角色将此权限快速授权给用户。同时角色中不能存在敏感表,敏感表仅能由用户单独进行申请,以减少敏感数据的暴露面,降低数据泄露风险。通过角色分配,新入职的员工可以迅速获得他们日常工作所需的权限。这种方法大大减少了手动设置权限的时间和复杂性,同时也降低了因权限设置不当带来的安全风险。角色的概念使得权限管理更加灵活和高效。新员工一旦加入到特定的角色中,他们就能立即开始工作,无需等待繁琐的权限申请和审批流程。此外,角色管理还具有可扩展性。随着公司的发展和组织结构的变化,我们可以轻松地调整角色的权限设置,以适应新的工作需求。这种灵活性确保了我们的权限管理系统能够随着公司的成长而不断进化。
权限申请
用户通过精卫平台发起权限申请流程(用户可为自己当前拥有的角色或者本人账号发起权限申请),精卫平台调用分类分级系统查询表的敏感等级,若申请对象为角色且申请表为敏感表则立即拒绝该流程,确保敏感表不会被授权给角色。接着,系统会根据表的不同敏感等级,跳转至不同的BPM审批流程。审批结束后,大数据团队会通过脚本调用分类分级系统查询表的敏感等级,并在Ranger中自动化给用户或角色进行授权。
异常处理
由于视图本身的特性,分类分级系统无法正常读取表结构及样例数据。因此,我们只能采用手工导入的方式。数据团队通过查找视图并对应基础表信息,手工整理对应字段的数据导入到分类分级系统中并进行标记。这样,在完成数据导入和标记后,视图就可以像普通表一样进行查询。
总结
将数据仓库的权限申请流程从库级别细化到表级别,并通过分类分级系统来确定不同敏感等级的表,是提高数据安全性的有效策略。这不仅能够降低数据泄露的风险,还能够确保企业在遵守法规的同时充分利用数据资产,例如将积累的业务库表敏感等级数据用于查询脱敏,导出审批以及业务评估等。