CN115248799A - 一种大数据数仓多租户管理的系统及方法 - Google Patents
一种大数据数仓多租户管理的系统及方法 Download PDFInfo
- Publication number
- CN115248799A CN115248799A CN202111553486.8A CN202111553486A CN115248799A CN 115248799 A CN115248799 A CN 115248799A CN 202111553486 A CN202111553486 A CN 202111553486A CN 115248799 A CN115248799 A CN 115248799A
- Authority
- CN
- China
- Prior art keywords
- authority
- data
- layer
- user
- platform
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/122—File system administration, e.g. details of archiving or snapshots using management policies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种大数据数仓多租户管理的系统及方法,该系统包括:底层存储层,即分布式存储系统的权限控制,用于主要管理文件系统的权限;计算引擎层,即分布式计算引擎对数据的读写操作权限控制,用于主要管理计算任务的数据访问;上层应用层,即面向用户的权限控制层,用于管理用户使用各种计算引擎进行数据开发的权限控制。该方法在于,采用上述系统,结合双端认证策略,即每一层均会在服务端、客户端进行联合权限认证提供一站式解决大数据环境权限问题;可以支撑在多租户以及多种计算引擎并存的复杂环境下,安全又高效地解决数据安全的问题。
Description
技术领域
本发明涉及大数据技术领域,具体为一种大数据数仓多租户管理的系统及方法。
背景技术
谈到大数据,首先想到的是Hadoop、Hive、Spark等新兴技术,这些新型的大数据中间件虽然在存储与计算方面增强了很多,但是在权限管理、多租户管理方向比较薄弱,客户端身份基本都是由主机的操作系统决定,这就带来了新的问题,在新型的大数据技术体系下的数据仓库的权限该如何管理?大数据一般使用分布式存储作为数据底座,使用多种分布式计算引擎作为计算方案,例如:Apache Hive、Apache Spark、Impala等,这样复杂的环境该如何一站式解决权限和多租户问题?
Hadoop社区版本是没有安全认证的,因此只要随意export HADOOP_USER_NAME=Anyone,就可以伪装为任意用户操作集群上的数据了,存在非常大的安全隐患。大数据环境存在多种复杂计算引擎混合使用的场景,例如:Apache Hive、Apache Spark、Impala混合使用等,需要有一站式的权限解决方案。
发明内容
针对上述存在的技术不足,本发明的目的是提供一种大数据数仓多租户管理的系统及方法。
为解决上述技术问题,本发明采用如下技术方案:
Hadoop支持两种不同的用户身份判别方法,分别为Simple和Kerberos。
(1)Simple模式下,客户端身份由主机的操作系统确定,比如在类Unix系统中,用户名为命令whoami的输出。
(2)Kerberos是一种基于对称密钥的身份认证协议,它作为一个独立的第三方的身份认证服务,可以为其它服务提供身份认证功能,且支持SSO(即客户端身份认证后,可以访问多个服务如HBase/HDFS等)。在kerberos模式下,客户端身份由Kerberos凭证确定,比如在一个Kerberized环境中,用户可能使用kinit工具得到了一个Kerberos ticket-granting-ticket(TGT)且使用klist确定当前的principal。
Kerberos是一种性能比较高的认证和授权,并且能够进行数据加密的安全系统,但是并不是特别适合大规模的Hadoop集群,原因有四点:
(1)Kerberos存在单点故障:依赖的KDC服务宕机时,整个系统有可能瘫痪。
(2)Hadoop集群节点数多,配置和维护一个高性能、高可用的Kerberos系统难度非常高,而且Kerberos带来的用户和用户组的管理更加复杂,权限维护的成本较高。
(3)Hadoop集群上线kerberos后,通常原来的用户和文件,可能都失效导致数据流失。尤其是一些根目录,往往需要格式化整个系统才能使用。
(4)Kerberos只能控制访问或者拒绝访问一个服务,不能控制到很细的粒度,比如HDFS的某一个路径,Hive的某一个表,对用户级别上的认证并没有实现。
综上述Kerberos认证技术在大规模集群以及多租户的环境下存在问题较多,所以本方案在底层存储层仍然采用Simple认证。
本发明提供一种大数据数仓多租户管理的系统,包括:
底层存储层,即分布式存储系统的权限控制,用于主要管理文件系统的权限,该层解决文件系统底层的权限问题,针对超管用户、系统用户做权限控制,尤其是一级目录二级目录的规范使用,采用Simple授权方案,另外针对多租户回收站禁用机制以及重点目录保护机制做二次研发;
计算引擎层,即分布式计算引擎对数据的读写操作权限控制,用于主要管理计算任务的数据访问;
上层应用层,即面向用户的权限控制层,用于管理用户使用各种计算引擎进行数据开发的权限控制。
优选地,所述底层存储层包括文件系统的超管用户、系统用户、根目录、一级目录和保护目录白名单。
优选地,所述计算引擎层包括:
权限管理模块,用于对不同的文件进行授权,包括:数据逻辑层和物理层授权;
插件适配模块,定期从权限管理模块拉取策略,根据策略执行访问决策树判断;
客户端SDK模块,用于定期缓存用户独立的缓存文件;
日志审计模块,针对各个计算引擎访问数据文件,进行标准化收集生产审计日志,异步批量传入检索系统进行归档检索等审计服务。
优选地,所述上层应用层用于解决用户以及组账号分配管理的问题,针对数据类应用进行权限管理,包括但不限于统一采集接入平台、集中处理平台、组织管理平台、全域治理平台、融合共享平台、分析挖掘平台、知识图谱平台、管理平台、可视化平台;
访问权限定义了”用户-数据角色-资源-权限“这四者间的关系,基于策略来抽象这种关系,进而延伸出自己的权限模型。”用户-资源-权限”的含义详解:
用户:由User或Group来表达,User代表访问资源的用户,Group代表用户所属的用户组。
数据角色:一个数据角色可以授权给多个用户,同样一个数据角色可以申请多种资源。
资源:不同的组件对应的业务资源是不一样的,比如:HDFS的FilePath、HBase的Table,Column-family,Column、Hive的Database、Table、Column;Yarn的对应的是Queue等。
权限:由(Allow ACL,Deny ACL)来表达,类似白名单和黑名单机制,Allow ACL用来描述允许访问的情况,Deny ACL用来描述拒绝访问的情况,不同的组件对应的权限也是不一样的。
本发明还提供一种大数据数仓多租户管理方法,其特征在于,采用一种大数据数仓多租户管理的系统,结合双端认证策略,提供一站式解决大数据环境权限问题。
优选地,所述双端认证策略指每一层均会在服务端、客户端进行联合权限认证,双端主要是为了高可用,如果权限控制系统的服务端宕机,可以通过客户端缓存的权限元信息控制数据,不会引发系统级故障。
本发明的有益效果在于:通过三层双端的大数据权限体系的建设,可以支撑在多租户以及多种计算引擎并存的复杂环境下,安全又高效的解决数据安全的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种大数据数仓多租户管理的系统中底层存储层的结构示意图;
图2为本发明实施例提供的一种大数据数仓多租户管理的系统中计算引擎层的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1,一种大数据数仓多租户管理系统,包括:
底层存储层,即分布式存储系统的权限控制,用于主要管理文件系统的权限,所述底层存储层包括文件系统的超管用户、系统用户、根目录、一级目录和保护目录白名单;
计算引擎层,即分布式计算引擎对数据的读写操作权限控制,用于主要管理计算任务的数据访问,所述计算引擎层包括:权限管理模块、插件适配模块、客户端SDK模块、日志审计模块;
上层应用层,即面向用户的权限控制层,用于管理用户使用各种计算引擎进行数据开发的权限控制,用于解决用户以及组账号分配管理的问题,针对数据类应用进行权限管理,包括但不限于统一采集接入平台、集中处理平台、组织管理平台、全域治理平台、融合共享平台、分析挖掘平台、知识图谱平台、管理平台、可视化平台。
实施例2
一种大数据数仓多租户管理方法,构建实施例1所述的一种大数据数仓多租户管理的系统,结合双端认证策略,提供一站式解决大数据环境权限问题。
第一层:分布式文件系统存储层实现方案
该层解决文件系统底层的权限问题,针对超管用户、系统用户做权限控制,尤其是一级目录二级目录的规范使用,采用Simple授权方案,另外针对多租户回收站禁用机制以及重点目录保护机制做二次研发。
(1)制定文件系统的超管用户以及系统用户,创建根目录以及一级目录。
(2)针对HDFS源码二次开发,对非超管用户的SkipTrash命令进行屏蔽,防止用户误删数据;
(3)针对HDFS源码二次开发,增加保护目录白名单,针对系统级目录进行保护操作,防止用户误删数据。
第二层:分布式计算引擎数据访问权限控制的实现方案:
该层主要解决在多种计算引擎并存的复杂场景下如何解决数据权限问题,例如:Apache Hive、Spark、Impala、Hbase、Flink等。
参照图1,该引擎主要分为权限管理模块、插件适配模块、客户端SDK模块、日志审计模块组成。
(1)权限管理模块:管理员可以针对不同的文件进行授权,包括:数据逻辑层和物理层授权,例如:Apache Hive、Hbase等库表可以抽象为数据逻辑层;底层的数据文件,可以抽象为数据物理层。
(2)插件适配模块:插件化设计,可以实现Hive、Spark、HDFS、Hbase等常用组件的支持,定期从权限管理模块拉取策略,根据策略执行访问决策树判断。
(3)客户端SDK模块:每个用户独立的缓存文件,如果远程服务宕机则不影响客户端鉴权,客户端会定时更新缓存;更新缓存文件时,先写入Tmp文件,再进行文件加锁Rename,在客户端并发的情况下,权限也需要保证数据准确。
(4)日志审计模块:针对各个计算引擎访问数据文件,进行标准化收集生产审计日志,异步批量传入检索系统进行归档检索等审计服务。
第三层:数据应用层实现方案
参照图2,该层主要解决用户以及组账号分配管理的问题,针对数据类应用进行权限管理,例如:统一采集接入平台、集中处理平台、组织管理平台、全域治理平台、融合共享平台、分析挖掘平台、知识图谱平台、管理平台、可视化平台等。
访问权限定义了”用户-数据角色-资源-权限“这四者间的关系,基于策略来抽象这种关系,进而延伸出自己的权限模型。”用户-资源-权限”的含义详解:
用户:由User或Group来表达,User代表访问资源的用户,Group代表用户所属的用户组。
数据角色:一个数据角色可以授权给多个用户,同样一个数据角色可以申请多种资源。
资源:不同的组件对应的业务资源是不一样的,比如:HDFS的FilePath、HBase的Table,Column-family,Column、Hive的Database、Table、Column;Yarn的对应的是Queue等。
权限:由(Allow ACL,Deny ACL)来表达,类似白名单和黑名单机制,Allow ACL用来描述允许访问的情况,Deny ACL用来描述拒绝访问的情况,不同的组件对应的权限也是不一样的。
通过对存储、计算、应用三层进行用户-数据角色-资源-权限四种角色联合控制,可以优雅的解决大数据存储、计算多种引擎并存的复杂环境下的权限问题。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (6)
1.一种大数据数仓多租户管理的系统,其特征在于,包括:
底层存储层,即分布式存储系统的权限控制,用于主要管理文件系统的权限;
计算引擎层,即分布式计算引擎对数据的读写操作权限控制,用于主要管理计算任务的数据访问;
上层应用层,即面向用户的权限控制层,用于管理用户使用各种计算引擎进行数据开发的权限控制。
2.如权利要求1所述的一种大数据数仓多租户管理的系统,其特征在于,所述底层存储层包括文件系统的超管用户、系统用户、根目录、一级目录和保护目录白名单。
3.如权利要求1所述的一种大数据数仓多租户管理的系统及方法,其特征在于,所述计算引擎层包括:
权限管理模块,用于对不同的文件进行授权,包括:数据逻辑层和物理层授权;
插件适配模块,定期从权限管理模块拉取策略,根据策略执行访问决策树判断;
客户端SDK模块,用于定期缓存用户独立的缓存文件;
日志审计模块,针对各个计算引擎访问数据文件,进行标准化收集生产审计日志,异步批量传入检索系统进行归档检索等审计服务。
4.如权利要求1所述的一种大数据数仓多租户管理的系统,其特征在于,所述上层应用层用于解决用户以及组账号分配管理的问题,针对数据类应用进行权限管理,包括但不限于统一采集接入平台、集中处理平台、组织管理平台、全域治理平台、融合共享平台、分析挖掘平台、知识图谱平台、管理平台、可视化平台。
5.一种大数据数仓多租户管理方法,其特征在于,采用权利要求1-4任意一项所述的系统,结合双端认证策略,提供一站式解决大数据环境权限问题。
6.如权利要求5所述的一种大数据数仓多租户管理方法,其特征在于,所述双端认证策略指每一层均会在服务端、客户端进行联合权限认证。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111553486.8A CN115248799A (zh) | 2021-12-17 | 2021-12-17 | 一种大数据数仓多租户管理的系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111553486.8A CN115248799A (zh) | 2021-12-17 | 2021-12-17 | 一种大数据数仓多租户管理的系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115248799A true CN115248799A (zh) | 2022-10-28 |
Family
ID=83698883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111553486.8A Pending CN115248799A (zh) | 2021-12-17 | 2021-12-17 | 一种大数据数仓多租户管理的系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115248799A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115952228A (zh) * | 2023-03-09 | 2023-04-11 | 山东浪潮超高清智能科技有限公司 | 一种数据库连接池连接Impala的方法及系统 |
CN117743470A (zh) * | 2024-02-06 | 2024-03-22 | 中科云谷科技有限公司 | 用于异构大数据的处理系统 |
-
2021
- 2021-12-17 CN CN202111553486.8A patent/CN115248799A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115952228A (zh) * | 2023-03-09 | 2023-04-11 | 山东浪潮超高清智能科技有限公司 | 一种数据库连接池连接Impala的方法及系统 |
CN115952228B (zh) * | 2023-03-09 | 2023-06-20 | 山东浪潮超高清智能科技有限公司 | 一种数据库连接池连接Impala的方法及系统 |
CN117743470A (zh) * | 2024-02-06 | 2024-03-22 | 中科云谷科技有限公司 | 用于异构大数据的处理系统 |
CN117743470B (zh) * | 2024-02-06 | 2024-05-07 | 中科云谷科技有限公司 | 用于异构大数据的处理系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109643242B (zh) | 用于多租户hadoop集群的安全设计和架构 | |
CN110543464B (zh) | 一种应用于智慧园区的大数据平台及操作方法 | |
CN103218175B (zh) | 多租户的云存储平台访问控制系统 | |
US9576144B2 (en) | Secured file system management | |
CN115248799A (zh) | 一种大数据数仓多租户管理的系统及方法 | |
CN103607469A (zh) | 一种实现分布式异构数据共享的云平台及其数据共享方法 | |
CN102891840B (zh) | 基于三权分立的信息安全管理系统及信息安全的管理方法 | |
CN102917006B (zh) | 一种实现计算资源和对象权限的统一控制管理方法及装置 | |
CN108092945B (zh) | 访问权限的确定方法和装置、终端 | |
CN103685463A (zh) | 云计算系统中访问控制的方法和系统 | |
US9514325B2 (en) | Secured file system management | |
Shen et al. | Securing data services: a security architecture design for private storage cloud based on HDFS | |
US11153315B2 (en) | Controlling access to secure information resources using rotational datasets and dynamically configurable data containers | |
US11165777B2 (en) | Controlling access to secure information resources using rotational datasets and dynamically configurable data containers | |
Rahul et al. | A novel authentication framework for Hadoop | |
US11782953B2 (en) | Metadata access for distributed data lake users | |
CN110765192A (zh) | 一种基于云平台的gis数据管理及处理方法 | |
US20220129573A1 (en) | Universal file access control system and method | |
Zarei et al. | Past, present and future of Hadoop: A survey | |
Wei et al. | iBigTable: practical data integrity for bigtable in public cloud | |
Balaraju et al. | Innovative secure authentication interface for Hadoop cluster using DNA cryptography: A practical study | |
Chen et al. | Policy-based access control system for delta lake | |
Cao | Design of digital library service platform based on cloud computing | |
CN114201486A (zh) | 一种基于海量数据的分布式数据分析方法 | |
Singh | Study on cloud computing and cloud database |
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 |