CN109214210A - 一种优化蜂巢权限管理的方法及系统 - Google Patents
一种优化蜂巢权限管理的方法及系统 Download PDFInfo
- Publication number
- CN109214210A CN109214210A CN201811076269.2A CN201811076269A CN109214210A CN 109214210 A CN109214210 A CN 109214210A CN 201811076269 A CN201811076269 A CN 201811076269A CN 109214210 A CN109214210 A CN 109214210A
- Authority
- CN
- China
- Prior art keywords
- honeycomb
- user
- rights management
- database
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Abstract
本发明属于网络信息技术领域,公开了一种优化蜂巢权限管理的方法及系统,系统包括插件、数据库、客户端、服务器;优化蜂巢权限管理的方法包括:服务器获取到接口传输来的信息后从数据库中读取用户原先设定的访问权限;服务器比对判断输入的权限要求与已保存的权限描述是否匹配,并将结果反馈给插件;插件根据服务器反馈的结果来判定是否执行用户提交的结构化查询语言。本发明完善了蜂巢的访问授权管理体系,将支持的数据对象扩展到数据库/表/视图/列粒度,形成完整的基于角色的访问控制权限的访问控制体系,加强了权限访问的控制,保证了数据的安全。
Description
技术领域
本发明属于网络信息技术领域,尤其涉及一种优化蜂巢权限管理的方法及系统。
背景技术
目前,业内常用的现有技术是这样的:
随着信息化的不断发展,当前已经进入大数据时代,企事业单位都搜集沉淀了许多来源的庞大数据资产。而要从海量的数据资产中分析、挖掘数据中蕴藏的价值,使之具有更强的决策力、洞察力和流程优化能力就需要新处理模式即采用分布式计算架构。Hadoop是一个能够对大量数据进行分布式处理的软件框架。因此其可靠、高效、可伸缩的方式进行数据处理且是开源的,故而现今很多人在使用Hadoop框架。
蜂巢(Hive)是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的结构化查询语言(sql)查询功能,可以将sql语句转换为MapReduce任务进行运行。因其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析,故而广泛使用。
但在蜂巢(Hive)使用中对用户的授权管理上存在着几方面的问题:1、安全访问和授权的基本机制被HDFS文件模型的粒度所限制,无法对文件内数据进行访问控制;2、任何通过认证登陆的用户都能够为自己增加对任何资源的访问权限,一旦恶意用户通过认证,它不能阻止其对敏感数据的访问;3、无法灵活的进行权限分配。
综上所述,现有技术存在的问题是:
(1)安全访问和授权的基本机制被HDFS文件模型的粒度所限制,无法控制对文件内数据的访问;
(2)所有通过认证的用户都能增加任何资源的访问权限,不能阻止对敏感数据的访问;
(3)权限分配不灵活。
解决上述技术问题的难度和意义:
随着Hadoop在企业中广泛地应用,越来越多的业务场景要求大数据访问控制的粒度也不再局限在文件级别,而是更加细致地约束文件内部的数据哪些能被读写,哪些只能被读,哪些完全不允许被访问。如要在蜂巢(Hive)中直接实现对用户授权的良好管理就需要改造蜂巢(Hive),HDFS,hadoop等,这是很大的工程,也难以实现。
本发明解决现有技术的难度后,通过一种简单的方法解决蜂巢(Hive)的用户权限管理能极大的方便蜂巢(Hive)在实际项目应用中的使用,满足了企业和政府用户的RBAC需求。
发明内容
针对现有技术存在的问题,本发明提供了一种优化蜂巢权限管理的方法及系统,
本发明是这样实现的,一种优化蜂巢权限管理的方法,所述优化蜂巢权限管理的方法包括:
步骤一,插件利用钩子函数插入到蜂巢的编译、执行的不同阶段;
步骤二,通过数据库工具执行结构化查询语句来创建数据库;
步骤三,通过客户端对角色、权限、用户以及数据资源目录进行操作;
步骤四,用户提交结构化查询语言,插件通过钩子函数获取用户及解析该语句涉及的访问对象和所需的权限访问,将访问对象和所需的权限及用户通过接口传给服务器;
步骤五,服务器获取到接口传输来的信息后从数据库中通过结构化查询语句查询出用户原先设定的访问权限;
步骤六,服务器比对用户输入的权限与该用户已保存的权限描述是否一致,并将比对结果反馈给插件;
步骤七,插件根据服务器反馈的结果来判定是否执行用户提交的结构化查询语言,如比对结果一致则执行用户提交的SQL语句,如比对结果不一致则不执行用户提交的SQL语句。
进一步,所述步骤三包括:对数据资源目录通过结构化查询语言在数据库中进行创建,也可进行修改、删除、查看;
对角色通过结构化查询语言在数据库中进行创建,也可以修改、删除、查看;
对角色通过结构化查询语言在数据库中分配相应的数据资源目录的资源权限;
对用户通过结构化查询语言在数据库中分配对应的角色。
本发明对的另一目的在于提供一种优化蜂巢权限管理的计算机程序,所述优化蜂巢权限管理的计算机程序实现所述的优化蜂巢权限管理的方法。
本发明的另一目的在于提供一种信息数据处理终端,所述信息数据处理终端至少搭载有实现所述优化蜂巢权限管理的方法的服务器。
本发明的另一目的在于提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行所述的优化蜂巢权限管理的方法。
本发明的另一目的在于提供一种实现所述优化蜂巢权限管理的方法的优化蜂巢权限管理系统,所述优化蜂巢权限管理系统包括:
插件,与服务器进行数据交互,用于在蜂巢中运行,对蜂巢的接管,过滤结构化查询语言;
数据库,用于存储蜂巢操作的数据/文件的数据资源目录以及用户、角色信息,对数据资源进行管理;
客户端,用于用户对角色、权限、用户以及数据资源目录进行操作;
服务器,用于与插件、数据库、客户端进行交互,判定提交的结构化查询语言执行的权限要求与已保存的权限描述是否匹配,并将结果反馈给插件。
本发明的另一目的在于提供一种分布式网络权限管理平台,所述分布式网络权限管理平台至少搭载所述的优化蜂巢权限管理系统。
综上所述,本发明的优点及积极效果为:
本发明完善了蜂巢的访问授权管理体系,将支持的数据对象扩展到数据库/表/视图/列粒度,形成完整的基于角色的访问控制权限的访问控制体系,加强了权限访问的控制,保证了数据的安全。使用本方法及系统后授权管理模式对比如下表所示:
附图说明
图1是本发明实施例提供的优化蜂巢权限管理系统示意图;
图中:1、插件;2、数据库;3、客户端;4、服务器。
图2是本发明实施例提供的优化蜂巢权限管理方法流程图。
图3是本发明实施例提供的优化蜂巢权限管理方法原理图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
现有技术中,安全访问和授权的基本机制被HDFS文件模型的粒度所限制,无法控制对文件内数据的访问;
所有通过认证的用户都能增加任何资源的访问权限,不能阻止对敏感数据的访问;
权限分配不灵活。
下面结合具体分析对本发明作进一步描述。
如图1所示,本发明实施例提供的优化蜂巢权限管理系统包括:插件1、数据库2、客户端3、服务器4。
所述插件1用于在蜂巢中运行,实现对蜂巢的接管,起到过滤结构化查询语言执行的作用,同时与服务器进行数据交互。
所述数据库2用于存储蜂巢需要操作的数据/文件(包含库、表、列)的数据资源目录以及用户、角色信息,对数据资源进行管理。
所述客户端3用于用户对角色、权限、用户以及数据资源目录进行操作。
所述服务器4用于与插件1、数据库2、客户端3进行交互,判定提交的结构化查询语言执行的权限要求与已保存的权限描述是否匹配,并将结果反馈给插件。
如图2所示,本发明实施例提供的优化蜂巢权限管理的方法,步骤为:
S101:插件1利用钩子函数插入到蜂巢的编译、执行的不同阶段,管控蜂巢上的操作权限;
S102:创建数据库2;
S103:通过客户端3对角色、权限、用户以及数据资源目录进行操作;
S104:用户提交结构化查询语言,插件解析访问对象,将访问对象及用户通过接口传给服务器4;
S105:服务器4获取到接口传输来的信息后从数据库2中读取用户原先设定的访问权限;
S106:服务器5比对判断输入的权限要求与已保存的权限描述是否匹配,并将结果反馈给插件1;
S107:插件1根据服务器4反馈的结果来判定是否执行用户提交的结构化查询语言。
所述S103的操作包括:对数据资源目录进行新增、修改、删除、查看;对角色进行新增、修改、删除、查看;对角色分配相应的资源权限;对用户分配其对应的角色。
下面结合附图和实施例对本发明做进一步描述。
图3是本发明实施例提供的优化蜂巢权限管理方法原理,具体步骤如下:
步骤1、插件(Plugin)利用钩子(Hook)函数插入到蜂巢(Hive)的编译、执行的不同阶段实现对蜂巢(Hive)的接管,从而对蜂巢(Hive)上的操作进行权限管控。
步骤2、创建数据库(Database),用于存储蜂巢(Hive)需要操作的数据/文件(包含库、表、列)的数据资源目录以及用户、角色信息,对数据资源进行管理。
步骤3、通过客户端(Client)对角色、权限、用户以及数据资源目录进行操作,包括:
1)对角色进行新增、修改、删除、查看;
2)对角色分配相应的资源权限;
3)对用户分配其对应的角色;
4)对数据资源目录进行新增、修改、删除、查看。
步骤4、当某个用户在蜂巢(Hive)上提交一个结构化查询语言(SQL)执行时,插件(Plugin)先解析该语句涉及需要以读和写的方式访问的对象,而后将涉及的读和写的方式访问的对象以及用户通过接口传给服务器(Server)。
步骤5、服务器(Server)获取到接口传输来的信息后从数据库中读取出该用户原先设定的访问权限。
步骤6、服务器(Server)进行比对判断输入的权限要求与已保存的权限描述是否匹配,并将结果反馈给插件(Plugin)。
步骤7、插件(Plugin)根据服务器(Server)反馈的结果来判定是否执行该结构化查询语言(SQL)。
证明部分(具体实施例/实验/仿真/学分析/)
1、在服务器上安装好相应的几个应用,通过管理员创建两个角色role1,role2。对role1授予查询table1(含三个字段:id,name,phone)表中id,name两个字段的权限,对role2授予查询table1表的所有字段的权限。创建usr1授予role1角色,创建usr2授予role2角色。
2、切换至usr1,执行查询语句:’select*from table1’。只能查询出id,name两个字段。
3、切换至usr1,执行执行查询语句:’select*from table1’。能查询出table1z中的所有字段,包括id,name,phone。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用全部或部分地以计算机程序产品的形式实现,所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输)。所述计算机可读取存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘SolidState Disk(SSD))等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种优化蜂巢权限管理的方法,其特征在于,所述优化蜂巢权限管理的方法包括:
步骤一,插件利用钩子函数插入到蜂巢的编译、执行的不同阶段;
步骤二,通过数据库工具执行结构化查询语句来创建数据库;
步骤三,通过客户端对角色、权限、用户以及数据资源目录进行操作;
步骤四,用户提交结构化查询语言,插件通过钩子函数获取用户及解析该语句涉及的访问对象和所需的权限访问,将访问对象和所需的权限及用户通过接口传给服务器;
步骤五,服务器获取到接口传输来的信息后从数据库中通过结构化查询语句查询出用户原先设定的访问权限;
步骤六,服务器比对用户输入的权限与该用户已保存的权限描述是否一致,并将比对结果反馈给插件;
步骤七,插件根据服务器反馈的结果来判定是否执行用户提交的结构化查询语言,如比对结果一致则执行用户提交的SQL语句,如比对结果不一致则不执行用户提交的SQL语句。
2.如权利要求1所述优化蜂巢权限管理的方法,其特征在于,所述步骤三包括:对数据资源目录通过结构化查询语言在数据库中进行创建,或进行修改、删除、查看;
对角色通过结构化查询语言在数据库中进行创建,或修改、删除、查看;
对角色通过结构化查询语言在数据库中分配相应的数据资源目录的资源权限;
对用户通过结构化查询语言在数据库中分配对应的角色。
3.一种优化蜂巢权限管理的计算机程序,其特征在于,所述优化蜂巢权限管理的计算机程序实现权利要求1~2任意一项所述的优化蜂巢权限管理的方法。
4.一种信息数据处理终端,其特征在于,所述信息数据处理终端至少搭载有实现权利要求1~2任意一项所述优化蜂巢权限管理的方法的服务器。
5.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-2任意一项所述的优化蜂巢权限管理的方法。
6.一种实现权利要求1所述优化蜂巢权限管理的方法的优化蜂巢权限管理系统,其特征在于,所述优化蜂巢权限管理系统包括:
插件,与服务器进行数据交互,用于在蜂巢中运行,对蜂巢的接管,过滤结构化查询语言;
数据库,用于存储蜂巢操作的数据/文件的数据资源目录以及用户、角色信息,对数据资源进行管理;
客户端,用于用户对角色、权限、用户以及数据资源目录进行操作;
服务器,用于与插件、数据库、客户端进行交互,判定提交的结构化查询语言执行的权限要求与已保存的权限描述是否匹配,并将结果反馈给插件。
7.一种分布式网络权限管理平台,其特征在于,所述分布式网络权限管理平台至少搭载权利要求6所述的优化蜂巢权限管理系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811076269.2A CN109214210A (zh) | 2018-09-14 | 2018-09-14 | 一种优化蜂巢权限管理的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811076269.2A CN109214210A (zh) | 2018-09-14 | 2018-09-14 | 一种优化蜂巢权限管理的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109214210A true CN109214210A (zh) | 2019-01-15 |
Family
ID=64983830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811076269.2A Pending CN109214210A (zh) | 2018-09-14 | 2018-09-14 | 一种优化蜂巢权限管理的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109214210A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111723401A (zh) * | 2020-06-17 | 2020-09-29 | 北京明略昭辉科技有限公司 | 数据访问权限控制方法、装置、系统、存储介质及设备 |
CN112613075A (zh) * | 2020-12-31 | 2021-04-06 | 北京安华金和科技有限公司 | 权限的确定方法及装置、存储介质及电子装置 |
CN113268517A (zh) * | 2020-02-14 | 2021-08-17 | 中电长城网际系统应用有限公司 | 数据分析方法和装置、电子设备、可读介质 |
CN114491649A (zh) * | 2022-04-07 | 2022-05-13 | 北京安华金和科技有限公司 | 一种数据库备案访问控制方法和系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102917006A (zh) * | 2012-08-31 | 2013-02-06 | 杭州斯凯网络科技有限公司 | 一种实现计算资源和对象权限的统一控制管理方法及装置 |
CN103488791A (zh) * | 2013-09-30 | 2014-01-01 | 华为技术有限公司 | 数据访问方法、系统及数据仓库 |
WO2016054498A1 (en) * | 2014-10-03 | 2016-04-07 | Zettaset, Inc. | Securing a distributed file system |
CN105656903A (zh) * | 2016-01-15 | 2016-06-08 | 国家计算机网络与信息安全管理中心 | 一种Hive平台的用户安全管理系统及应用 |
CN107944288A (zh) * | 2016-10-12 | 2018-04-20 | 北京京东尚科信息技术有限公司 | 一种数据访问控制方法和装置 |
CN108280367A (zh) * | 2018-01-22 | 2018-07-13 | 腾讯科技(深圳)有限公司 | 数据操作权限的管理方法、装置、计算设备及存储介质 |
-
2018
- 2018-09-14 CN CN201811076269.2A patent/CN109214210A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102917006A (zh) * | 2012-08-31 | 2013-02-06 | 杭州斯凯网络科技有限公司 | 一种实现计算资源和对象权限的统一控制管理方法及装置 |
CN103488791A (zh) * | 2013-09-30 | 2014-01-01 | 华为技术有限公司 | 数据访问方法、系统及数据仓库 |
WO2016054498A1 (en) * | 2014-10-03 | 2016-04-07 | Zettaset, Inc. | Securing a distributed file system |
CN105656903A (zh) * | 2016-01-15 | 2016-06-08 | 国家计算机网络与信息安全管理中心 | 一种Hive平台的用户安全管理系统及应用 |
CN107944288A (zh) * | 2016-10-12 | 2018-04-20 | 北京京东尚科信息技术有限公司 | 一种数据访问控制方法和装置 |
CN108280367A (zh) * | 2018-01-22 | 2018-07-13 | 腾讯科技(深圳)有限公司 | 数据操作权限的管理方法、装置、计算设备及存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113268517A (zh) * | 2020-02-14 | 2021-08-17 | 中电长城网际系统应用有限公司 | 数据分析方法和装置、电子设备、可读介质 |
CN113268517B (zh) * | 2020-02-14 | 2024-04-02 | 中电长城网际系统应用有限公司 | 数据分析方法和装置、电子设备、可读介质 |
CN111723401A (zh) * | 2020-06-17 | 2020-09-29 | 北京明略昭辉科技有限公司 | 数据访问权限控制方法、装置、系统、存储介质及设备 |
CN112613075A (zh) * | 2020-12-31 | 2021-04-06 | 北京安华金和科技有限公司 | 权限的确定方法及装置、存储介质及电子装置 |
CN114491649A (zh) * | 2022-04-07 | 2022-05-13 | 北京安华金和科技有限公司 | 一种数据库备案访问控制方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11399030B2 (en) | Ontology based control of access to resources in a computing system | |
EP2849098B1 (en) | Cross system analytics for in memory data warehouse | |
CN109214210A (zh) | 一种优化蜂巢权限管理的方法及系统 | |
US20110313981A1 (en) | Data Privacy, Redaction and Integrity for Relational Databases | |
US10114861B2 (en) | Expandable ad hoc domain specific query for system management | |
JP2006209756A (ja) | 非リレーショナルクエリ言語のリレーショナルデータストアとの統合 | |
US20200319804A1 (en) | System and method for storing data | |
US11210410B2 (en) | Serving data assets based on security policies by applying space-time optimized inline data transformations | |
US20230195877A1 (en) | Project-based permission system | |
CN114840521A (zh) | 数据库的权限管理和数据保护方法、装置、设备和存储介质 | |
US20140201135A1 (en) | Access Control List (ACL) Generation for Replicated Data | |
Demichev et al. | Business process engineering for data storing and processing in a collaborative distributed environment based on provenance metadata, smart contracts and blockchain technology | |
US9946885B2 (en) | Process-oriented modeling and flow to restrict access to objects | |
US11372859B2 (en) | Efficiently supporting value style access of MOBs stored in SQL LOB column by providing value based semantics for LOBs in RDBMS | |
US11093628B2 (en) | Cross-domain content-lifecycle management | |
CN114896584B (zh) | 一种Hive数据权限控制代理层方法及系统 | |
KR101318234B1 (ko) | 데이터베이스 시스템을 위한 데이터 캐시 방법 및 장치 | |
US9329784B2 (en) | Managing policies using a staging policy and a derived production policy | |
US10346385B2 (en) | Attribute locking of stream computing tuples | |
EP4342137A1 (en) | Controlling user actions and access to electronic data assets | |
Ali et al. | A provenance-aware policy language (cprovl) and a data traceability model (cprov) for the cloud | |
US11010361B1 (en) | Executing code associated with objects in a hierarchial data structure | |
Siriah et al. | MongoDB with privacy access control | |
US20130159253A1 (en) | Directing a data replication environment through policy declaration | |
Scaglioso et al. | Modern standard-based access control in network services: XACML in action |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190115 |
|
RJ01 | Rejection of invention patent application after publication |