一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于角色的HDFS访问控制方法与流程

2022-11-23 14:05:58 来源:中国专利 TAG:

一种基于角色的hdfs访问控制方法
技术领域:
1.本发明涉及信息安全技术领域,具体涉及一种基于角色的hdfs访问控制方法。


背景技术:

2.近年来,云计算技术变得非常有吸引力,成为当代it产业的新规范,它主要的优势在于服务无所不在,几乎无限的资源,低成本的投入和高回报率,在云计算技术的带动下,各种云服务和云应用不断涌现。云存储作为一种新型的数据存储模型,可以使得用户随时随地的上传下载数据,且用户上传的数据由云存储服务提供商负责管理,减少用户管理的负担和开销,同时用户无需购买存储设备,这极大地节约了用户的投入成本。为了使用户、企业以及组织机构放心地将数据存储到云端,云存储的安全性研究就变得异常重要了,其中建立云存储的访问控制模型是一个非常重要的工作。
3.云存储技术的核心是分布式文件系统,因此对云存储安全性的研究实际上就是对分布式文件系统的安全性研究,hadoop云平台作为当下最流行的云平台之一,已经得到了广泛应用,而hdfs作为hadoop的核心模块,其为hadoop的所有应用程序提供分布式存储服务,因此研究云存储服务的安全性问题实质上就是研究分布式文件系统hdfs的安全性问题。hdfs在设计之初假定其运行在封闭的环境之中,且集群中的所有节点都是可靠的、值得信赖的、无需进行验证的,而hdfs实际的应用环境是一个开放且非安全的复杂环境,若不采取响应的安全措施将面临诸多挑战。访问控制技术对于hdfs来说是一项关键的技术,如何安全高效的对hdfs进行访问控制一直都是人们研究的重点。《hadoop security design》一文中通过为hadoop平台添加安全模块,提出了一种可以有效增加hadoop系统安全性的方案,但是本质上该方案实现的访问控制机制只是一种关口式的控制管理,一旦用户通过认证后其后期操作将不再被限制。《achieve secure,scalable,and fige-grained data access control in cloud computing》一文中提出了一种技术属性的加密方案来对用户存储在云端的信息进行加密,用户在上传数据之前需要利用属性作为公钥对所上传的数据进行加密,其他用户在访问加密数据时需要具备k个属性才能对加密数据进行解密,其中k为能解密用户加密数据的属性个数阈值,但该方案只支持粗粒度的访问控制,在细粒度访问控制方面仍存在局限性。
4.综上,目前对hdfs访问控制技术的研究,虽然有诸多优化改进的方案被提出,但这些方案仍存在一些安全缺陷和不足,不能很好地解决云存储的安全问题。同时由于现有的hdfs采用简单自主访问控制机制,当用户规模庞大时自主访问控制机制存在授权管理复杂、缺乏灵活性等问题。


技术实现要素:

5.针对上述问题,本发明提供了一种基于角色的的hdfs访问控制方法,实现用户和权限的隔离,提高了授权管理的灵活性。
6.一种基于角色的的hdfs访问控制方法,该方法包括:
7.步骤一:数据访问请求者向角色管理服务器申请角色,角色管理服务器为数据访问请求者分配角色,角色管理服务器将角色证书和共享密钥颁发给数据访问请求者,并同时将共享密钥发送给hdfs的namenode节点;
8.步骤二:数据访问请求者持角色证书和共享密钥向hdfs的namenode节点提交操作请求;
9.步骤三:hdfs截获数据访问请求者的操作请求;
10.步骤四:hdfs判断所述数据访问请求者是否具有操作权限;若具有,则执行数据访问请求者的操作请求,若不具有,则不执行;
11.其中,所述步骤四的方法具体包括以下步骤:
12.步骤(a):namenode节点验证数据访问请求者的操作请求消息的完整性,若所述消息完整,则namenode节点向数据访问请求者返回最佳的datanode节点地址,并进入步骤(b);若所述消息不完整,则namenode节点向数据访问请求者返回拒绝访问提示;
13.步骤(b):数据访问请求者向所述最佳的datanode节点提交操作请求,datanode节点验证数据访问请求者的身份和操作请求是否合法,若两者皆合法,则数据访问请求者具有操作权限,反之,数据访问请求者不具有操作权限;一般的,若用户已注册、在有效期内、没有被拉黑,则用户身份合法,若用户有对应的角色则角色合法,操作请求合法就是这个请求符合访问控制规则,即这个请求不是一个错误请求,如手误将put打成putt,则这是一个错误的操作请求。
14.优选的,所述步骤一中角色管理服务器生成角色密钥,通过角色密钥生成角色证书。
15.优选的,在所述步骤一中角色管理服务器为数据访问请求者分配角色之前还包括:管理员设定角色组并分别为每组角色授权;管理员依据场景和需求设计全部角色,一般的,若本方法应用于学校,则管理员对当前教学系统用户设计“学生”、“老师”两种类型的角色,数据有“课表”,对于“学生”角色赋予查看课表的权限,对于“老师”这一角色授予更改、删除、插入、查找“课表”等权限。
16.优选的,将共享密钥和角色证书直接组合成消息验证密钥,通过消息验证密钥验证操作请求消息的完整性。
17.优选的,所述操作请求包括读操作和写操作。
18.优选的,当用户发起读操作时,首先通过namenode节点进行消息完整性验证,并获取到访问目标数据的最佳存储的datanode节点地址,然后namenode直接与最佳datanode节点进行通信获取访问目标数据,并将所述目标数据返回给数据访问请求者。
19.优选的,当数据访问请求者发起写操作时,首先通过namenode节点进行消息完整性验证,并获取到访问目标数据的最佳存储的datanode节点地址,将所述datanode节点地址返回给数据访问请求者,数据访问请求者根据获得的datanode节点位置,将目标数据写入到datanode节点中。
20.优选的,namenode节点与datanode节点通过心跳机制通信。
21.优选的,数据访问请求者将所述目标数据以block块的形式写入datanode节点中。
22.本发明提供了一种基于角色的hdfs访问控制方法,根据数据访问请求者身份分配不同的角色,使数据访问请求者与访问权限相分离,实现更加灵活的访问控制管理;数据访
问请求者持角色管理服务器授予的角色证书和共享密钥访问hdfs获取服务,在实现访问控制的同时也保证了数据的机密性和完整性;同时,通过在hdfs中引入了角色管理服务器的概念,提出了基于角色证书的安全访问控制策略和文件读写机制,实现了对数据访问请求者访问hdfs的灵活动态授权。
附图说明:
23.附图1是本发明实施例中一种基于角色的hdfs访问控制方法的流程图。
24.附图2是本发明实施例中一种基于角色的hdfs的文件读操作流程图。
25.附图3是本发明实施例中一种基于角色的hdfs的文件写操作流程图。
具体实施方式:
26.实施例一:
27.以下结合说明书附图1和附图2对本发明提供的一种基于角色的hdfs的文件读操作进行说明。
28.步骤100:数据访问请求者向角色管理服务器申请角色,角色管理服务器为数据访问请求者分配角色,角色管理服务器将角色证书和共享密钥颁发给数据访问请求者,并同时将共享密钥发送给hdfs的namenode节点;
29.步骤110:数据访问请求者持角色证书和共享密钥向hdfs的namenode节点提交操作请求;
30.步骤120:hdfs截获数据访问请求者的操作请求;
31.步骤130:namenode节点进行消息完整性验证,若完整则进入下一步骤,否则拒绝数据访问请求者的操作请求;
32.步骤140:namenode节点获取到访问目标数据的最佳存储的datanode节点地址;
33.步骤150:namenode直接与最佳datanode节点通过心跳机制通信获取访问目标数据;
34.步骤160:namenode将所述目标数据返回给数据访问请求者。
35.实施例二:
36.以下结合说明书附图1和附图3对本发明提供的一种基于角色的hdfs的文件写操作进行说明。
37.步骤200:数据访问请求者向角色管理服务器申请角色,角色管理服务器为数据访问请求者分配角色,角色管理服务器将角色证书和共享密钥颁发给数据访问请求者,并同时将共享密钥发送给hdfs的namenode节点;
38.步骤210:数据访问请求者持角色证书和共享密钥向hdfs的namenode节点提交操作请求;
39.步骤220:hdfs截获数据访问请求者的操作请求;
40.步骤230:namenode节点进行消息完整性验证,若完整则进入下一步骤,否则拒绝数据访问请求者的操作请求;
41.步骤240:namenode节点获取到访问目标数据的最佳存储的datanode节点地址;
42.步骤250:namenode节点向数据访问请求者返回最佳的datanode节点地址;
43.步骤260:数据访问请求者向所述最佳的datanode节点提交操作请求;
44.步骤270:datanode节点验证数据访问请求者的身份和操作请求是否合法,若合法,进入下一步骤,若不合法,拒绝数据访问请求者的操作请求;
45.步骤280:数据访问请求者将目标数据写入到最佳的datanode节点中。
46.应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理和宗旨的的前提下,还可以做出若干改进、替换、变型和润饰,这些改进、替换、变型和润饰也应视为本发明的保护范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献