全网唯一标准王
(19)国家知识产权局 (12)发明 专利 (10)授权公告 号 (45)授权公告日 (21)申请 号 20221081890 3.5 (22)申请日 2022.07.13 (65)同一申请的已公布的文献号 申请公布号 CN 114896584 A (43)申请公布日 2022.08.12 (73)专利权人 杭州比智科技有限公司 地址 311121 浙江省杭州市余杭区仓前街 道仓兴路1号23幢2-4楼 (72)发明人 卢薇  (74)专利代理 机构 北京云科知识产权代理事务 所(特殊普通 合伙) 11483 专利代理师 张飙 (51)Int.Cl. G06F 21/45(2013.01) G06F 21/44(2013.01) G06F 16/182(2019.01) G06F 16/2455(2019.01) G06F 16/2457(2019.01) G06F 16/25(2019.01)(56)对比文件 CN 111813796 A,2020.10.23 CN 112329031 A,2021.02.0 5 CN 110138779 A,2019.08.16 CN 113626438 A,2021.1 1.09 CN 110175164 A,2019.08.27 EP 3059690 A1,2016.08.24 黄良强等.基 于HBase的细粒度访问控制方 法研究. 《计算机 应用研究》 .2020,第37 卷(第03 期),全文. 左谱军等.基于Hive的数据管理图形化界面 的设计与实现. 《电信工程 技术与标准 化》 .2014, 第27卷(第01期),全 文. Jun Yamasak i等.Design an Implementati on of Bee Hive i n a Mult- agent Based Resource Discovery Method i n P2P System s. 《2010 First I nternati onal Conference o n Networking and Computi ng》 .2011,全文. 审查员 张亚芳 (54)发明名称 一种Hive 数据权限控制代理层方法及系统 (57)摘要 本发明公开了一种Hive数据权限控制代理 层方法及系统, 包 括以下步骤: S1: Hive数据权限 申请; S2: HQL解析; S3: HQL改写; S4: HQL权限校 验; S5: HQL表、 字 段血缘分析。 本 方法和系统能够 实现细粒度的数据权限控制需求。 本发明能够满 足企业内部细粒度的数据权限控制需求, 本发明 基于Hive原生类实现HQL解析、 改写和权限校验, 准确度和稳定性有一定 保障, 达到生产上线要求 有 一 定 把 握 ;本 发 明 提 供 的 J a v a 类 DatablackHiveAuthorizerFactory和 DatablackHiveAuthorizer都是对Hive接口的具 体实现, 能够实现员工/用户级别的数据鉴权; 本 发明的安装和部署都不需要侵入集团大数据集 群管理平台, 能够满足很大一部分实际生产场景需求。 权利要求书2页 说明书10页 附图5页 CN 114896584 B 2022.10.11 CN 114896584 B 1.一种Hive 数据权限控制代理层方法, 其特 征在于, 所述方法包括以下步骤: S1: Hive数据权限申请; 当部门的数据权限审批服务批准员工的Hive数据权限申请时, 数据权限管理中心同步创建相应的数据权限策略, 存储在表及字段权限模块和行过滤及字 段脱敏模块中, 并且更新用户权限管理中员工与数据权限策略之间的映射关系; S2: HQL解析; 在HQL解析之前, 需要利用部门与集团大数据集群管理平台交互的租户 keytab进行kerberos认证, 从而实现 租户之间的数据隔离; S3: HQL改写; SemanticAnalyzer在对HQL进行解析的过程中, 通过Hive的TableMask对 象对HQL进行行过滤和字段脱敏改写; S4: HQL权限校验; 基于QueryState、 SemanticAnalyzer和HQL, 调用Driver的静态 doAuthorizati on方法, 实现HQ L数据权限校验; S5: HQL表、 字段 血缘分析; 当HQ L权限校验通过后, 进行HQ L表、 字段 血缘分析; 其中, 员工在申请Hive表权限后, 提交Hive任务, 基于JDBC的HQL提交模块将HQL和员工 的身份信息一并发送给Hiv e数据鉴权代理单元进行鉴权, HQL鉴权的过程为HQL解析、 HQL改 写、 HQL权限校验和HQ L表、 字段 血缘分析; 步骤S2中, kerberos认证通过后, 创建HiveConf; HiveConf的创建依赖集团大数据集群 管理平台提供的Hadoop和Hive配置文件, 所述配置文件包括core ‑site.xml、 hdfs ‑ site.xml、 mapred ‑site.xml、 yarn ‑site.xml和hive ‑site.xml; 步骤S2中, HQ L解析包括如下子步骤: S201, 利用HiveConf创建SessionState对象, 设置SessionState对象的userName为提 交HQL的员工账户; S202, 启动SessionState对象, 设置当前数据库为部门在大数据集群管理平台申请的 Hive数据库, 初始化事务管理器; SessionState对象创建和启动后, 有效且保持唯一, 能够 与Hadoop进行通信来 提交分布式任务, 也能够连接 Hive的元 数据库来 查询元数据信息; S203, 依次创建QueryState、 Context、 ParseDriver对象; 调用ParseDriver对象的 parse方法将原始HQL解析成为抽象语法树节点; 利用Hive的SemanticAnalyzerFactory的 get方法生成QueryState和ASTN ode对应的SemanticAnalyzer; S204, 调用SemanticAnalyzer的analyze 方法对HQ L进行解析; 步骤S3中, HQ L改写的过程包括如下子步骤: S301, 对HQL的ASTNode进行遍历和解析, 获取表及字段信息; S302, 通过DatablackHiveAuthorizer从数据权限管理中心拉取与SessionState的 u s e r N a m e 对 应 的 表 及 字 段 的 行 过 滤 和 字 段 脱 敏 权 限 策 略 ,并 且 调 用 applyRowFilterAndColumnMasking方法以便TableMask对象正确获取行过滤和字 段脱敏表 达式; S303, 根据行过滤和字段脱敏表达式对原始HQL的Token流进行改写, 将最新HQL的 Token流保存在Co ntext对象中; 步骤S4中, 若HQL权限校验成功, 正常返回, 否则, 抛出权限校验失败异常; 其中, HiveDriver的权限校验底层 依赖DatablackHiveAuthorizer类; DatablackHiveAut horizer 类是一个对Hive的HiveAuthorizer接口的实现类, 实现了checkPrivileges、 applyRowFilterAndColumnMasking和needTransform方法; Driver的doAut horization解析权 利 要 求 书 1/2 页 2 CN 114896584 B 2出HQL的HiveOperationType、 输入输出HivePrivilegeObject和认证上下文, 然后调用 DatablackHiveAuthorizer的checkPrivileges方法; checkPrivileges方法向数据权限管 理中心拉取用户权限策略, 解析输入输出HivePrivilegeObject中涉及的表和字段以及操 作类型, 然后匹配用户权限策略; 若所有输入输出HivePrivilegeObject对象都权限校验通 过, 方法正常返回, 否则抛 出权限校验失败异常; 步骤S5中, HQ L表、 字段 血缘分析 具体包括以下步骤: S501, 基于HiveConf、 QueryState、 SemanticAnalyzer以及HQL, 创建QueryPlan和 HookContext对象; S502, 调用Java类ColumnLineageAnalysis的run方法, 返回HQL中表、 字段血缘关系; ColumnLineageAnalysi s是Hive的LineageLogger的继承类, 重写了其中的ru n方法, 能够返 回HQL的表、 字段 血缘关系; S503, Hive数据鉴权代理将HQL权限校验结果、 改写后的HQL以及表、 字段血缘分析结果 发送给基于JDBC的HQ L提交模块。 2.根据权利 要求1所述的Hive数据权限控制代理层方法, 其特征在于, 若HQL鉴权通过, 基于JDBC的HQ L提交模块将改写后HQ L提交到集团大 数据集群管理平台上去执 行。 3.一种Hive数据权限控制代理层系统, 其特征在于, 所述系统用于实现根据权利要求 1‑2任一项所述的Hive 数据权限控制代理层方法。 4.根据

PDF文档 专利 一种Hive数据权限控制代理层方法及系统

文档预览
中文文档 18 页 50 下载 1000 浏览 0 评论 0 收藏 3.0分
温馨提示:本文档共18页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种Hive数据权限控制代理层方法及系统 第 1 页 专利 一种Hive数据权限控制代理层方法及系统 第 2 页 专利 一种Hive数据权限控制代理层方法及系统 第 3 页
下载文档到电脑,方便使用
本文档由 SC 于 2024-02-24 01:01:36上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。