大数据行列混合权限精细化管理实践
朱江
中文演讲 2023-08-18 16:15 GMT+8 #olap背景: 近年来,数据安全问题逐步受到各国政府和企业的重视,随着国家数据安全法、个人信息保护法的相继颁布和实施,对于数据最小够用原则也提出了明确的要求。因此,如何更细粒度管控权限也变成了每个企业都必须解决的问题。 当前问题: 业界通常基于规则对SQL中的权限点进行提取,将这些权限点横向按照行维度,或者纵向按照列维度进行管控。 这种单一维度的权限管控粒度过粗,无法支持多条权限间的组合关系。在字节跳动这种多业务线统一存储的中台大宽表场景下,难以满足对数据的细粒度权限管控需求。
解决方案: 基于上述问题,字节跳动基于Apache Calcite及自研权限服务Gemini设计了一套行列混合权限的精细化管理方案。
- 基于Calcite血缘的精准权限点提取
- 基于血缘能力,精准定位SQL中真正使用到的权限点信息(表,行,列等),进行精细化权限提取。
- 行列混合权限多维度权限管控
- 在传统的库权限,表权限,列权限之上,新增加了一种行限制权限,行权限可以作为一种特殊的资源附属在表权限/列权限上面。
- 每一个表权限/列权限可以同时捆绑多个行权限资源,不同表权限/列权限的行限制相互独立。
- 通过横向/纵向权限点的捆绑组合,将查询资源定位到行列重叠的’资源单元格’上,达到更细粒度的资源级别权限
方案优势: 在新的方案下,通过精准的细粒度权限点提取,以及多维度的行列混合权限支持,将资源管控由横向的某一行,或者纵向的某一列,细化到行列重叠的’资源单元格’上。进一步细化了权限管控范围,在保证用户正常使用的前提下,最小粒度的授予所需权限。具体典型案例和实现原理将会在演讲PPT中进行介绍。
Speakers:
朱江: 字节跳动, 研发工程师, 字节跳动研发工程师