CN107370604A - 一种大数据环境下的多粒度访问控制方法 - Google Patents
一种大数据环境下的多粒度访问控制方法 Download PDFInfo
- Publication number
- CN107370604A CN107370604A CN201710548645.2A CN201710548645A CN107370604A CN 107370604 A CN107370604 A CN 107370604A CN 201710548645 A CN201710548645 A CN 201710548645A CN 107370604 A CN107370604 A CN 107370604A
- Authority
- CN
- China
- Prior art keywords
- request
- type
- file
- user
- granularity
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- 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/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- 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)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种大数据环境下的多粒度访问控制方法,其通过将文件层次的访问控制丰富成文件夹、文件、文件元数据三个层次的访问控制,实现多粒度的访问控制,从多个层面保障了大数据环境下的数据安全。在用户创建文件夹时指定基于文件夹的访问控制策略,上传文件时指定基于文件和文件元数据的访问控制策略,并且可选择对文件进行CPABE加密方式进行加密,使其以密文的形式存储在云端,适应了云端的半可信特性。当用户请求数据时,会依次判断文件夹的访问权限和文件的访问权限,只有同时满足条件时才能得到密文,并用自己的密钥进行解密。由于增加了策略冲突检测和策略合并模块,使整个系统的运行更加高效。
Description
技术领域
本发明属于计算机存储安全技术领域,更具体地,涉及一种大数据环境下的多粒度访问控制方法。
背景技术
大数据时代的到来,使得数据成为公司有价值的财产、重要的经济投入和新型商业模式的基石。用户数据的使用与共享,给企业带来商机的同时,也带来了前所未有的数据安全风险。
随着大数据使用规模的逐渐增大,实现对数据的受控共享也是亟待解决的问题,访问控制技术是一种能够有效防止未授权用户获取机密和隐私信息的重要安全保护技术。
针对现有的单一粒度访问控制方法而言,由于大数据应用场景复杂、需求多样,不同应用的访问粒度也不尽同,因此难以用传统的单一粒度的访问控制策略进行有效防控。例如:一个由兴趣而构建的用户群,群里一些目录下都是公开文件,所有人都可以查看,而另一些目录下含有部分成员所共享的私密文件,可能只需求部分人查看,并且,针对一些特殊的文件,文件的一些附属信息只能由特定的用户(例如管理员、群主等)查看,此时针对目录、文件、附加字段应该实施不同粒度的访问控制。因此,现有的单一粒度访问控制方法无法满足不同应用的多样化访问需求,进而无法有效保障大数据环境下数据的安全访问。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种大数据环境下的多粒度访问控制方法,其目的在于,解决现有的单一粒度访问控制方法无法满足不同应用的多样化访问需求,进而无法有效保障大数据环境下数据的安全访问的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种大数据环境下的多粒度访问控制方法,包括以下步骤:
(1)客户端接收来自用户的请求,在接收到的该请求中添加用户令牌信息,并将添加了用户令牌信息以后的该请求转发到服务端;
(2)服务端判断接收到的请求的类型,是策略类型请求,还是文件数据类型请求,如果是策略类型请求,则转入步骤(3),否则转入步骤(4);
(3)服务端针对读类型的策略类型请求,直接读取其本地存储的与该策略类型请求对应的策略;针对写类型的策略类型请求,根据该策略类型请求对应的粒度进行策略冲突检测以及策略合并操作,并将成功操作的结果存储在服务端本地,然后转入步骤(5);
(4)服务端根据请求类型参数读取其本地存储的策略,根据该策略以及用户的身份令牌判断该用户是否具有访问权限,并在该用户具有访问权限时执行与该文件数据类型请求对应的数据操作,以得到操作结果,然后转入步骤(5);
(5)服务端将操作结果反馈给客户端。
优选地,用户令牌信息包括用户的身份令牌、以及请求类型参数。
优选地,在接收到的该请求中添加用户令牌信息的过程具体包括以下子步骤:
(1-1)验证该用户是否合法,如果合法则构造该用户的身份令牌,然后转入步骤(1-2),否则过程结束;
(1-2)判断接收到的请求的类型,是文件夹粒度类型请求、文件粒度类型请求、以及元数据粒度类型请求,如果是文件夹粒度类型请求,则转入子步骤(1-3),如果是文件粒度类型请求,则转入子步骤(1-6),如果是元数据粒度类型请求,则转入子步骤(1-13);
(1-3)获取文件夹粒度类型请求对应的文件夹信息,并将该文件夹信息以及构造的用户的身份令牌发送给服务端;
(1-4)获取文件夹粒度类型请求中用户定义的文件夹访问控制策略,并将该文件夹访问控制策略发送到服务端;
(1-5)等待接收来自于服务端的处理结果,并将该处理结果反馈给用户,过程结束;
(1-6)判断该文件粒度类型请求是上传文件类型请求,还是下载文件类型请求,如果是上传文件类型请求,则转入步骤(1-7),如果是下载文件类型请求,则转入步骤(1-11);
(1-7)获取该上传文件类型请求对应的文件,并将该文件以及构造的用户的身份令牌发送给服务端;
(1-8)获取文件粒度类型请求中用户定义的文件访问控制策略,并将该文件访问控制策略发送到服务端;
(1-9)获取文件粒度类型请求中用户定义的文件元数据访问控制策略,并将该文件元数据访问控制策略发送到服务端;
(1-10)等待接收来自于服务端的处理结果,并将该处理结果反馈给用户,过程结束;
(1-11)获取该下载文件类型请求对应的文件名,并将该文件名作为参数以及构造的用户的身份令牌发送给服务端;
(1-12)等待接收来自于服务端的处理结果,并将该处理结果反馈给用户;
(1-13)获取元数据粒度类型请求对应的元数据请求信息,并将该元数据请求信息作为参数以及构造的用户的身份令牌发送给服务端;
(1-14)等待接收来自于服务端的处理结果,并将该处理结果反馈给用户,过程结束。
优选地,步骤(1-7)还包括在发送过程之前,对该文件进行CP-ABE加密。
优选地,步骤(1-12)还包括在发送处理结果之前,对来自服务端的处理结果进行对应的解密操作,解密结果即为处理结果。
优选地,步骤(3)具体包括以下子步骤:
(3-1)判断策略类型请求是读策略类型请求,还是写策略类型请求,如果是读策略类型请求则转入子步骤(3-2),否则转入子步骤(3-3);
(3-2)直接读取服务端本地存储的与该读策略类型请求对应的策略,过程结束;
(3-3)判断该写策略类型请求是写文件夹策略类型请求、写文件策略类型请求、还是写元数据策略类型请求,如果是写文件夹策略类型请求或写元数据策略类型请求,则直接将请求对应的策略写入服务端本地存储,过程结束;如果是写文件策略类型请求,则转入子步骤(3-4);
(3-4)从服务端本地取出写文件策略类型请求对应的文件所在文件夹的策略,并将其与写文件策略类型请求对应的文件的策略进行策略冲突与合并检测,如果存在策略冲突,则将写失败信息反馈给用户,如果不存在策略冲突,则对这两个策略进行策略合并处理,并将处理后的结果写入服务端本地存储,过程结束。
优选地,步骤(4)具体包括以下子步骤:
(4-1)判断请求类型参数是文件夹粒度请求类型参数,文件粒度请求类型参数,还是元数据粒度请求类型参数,如果是文件夹粒度请求类型参数则转入子步骤(4-2),如果是文件粒度请求类型参数,则转入子步骤(4-3),如果是元数据粒度请求类型参数,则转入子步骤(4-5);
(4-2)从服务端本地读取该文件夹粒度请求类型参数对应的文件夹的访问控制策略,根据用户的身份令牌执行基于属性的访问控制以判断用户是否有访问权限,如果有访问权限,则将文件夹粒度请求类型参数对应的文件夹信息发送到客户端,过程结束;否则向客户端发送拒绝访问的提示,过程结束;
(4-3)从服务端本地读取该文件粒度请求类型参数对应的文件所在文件夹的访问控制策略,根据用户的身份令牌执行基于属性的访问控制以判断用户是否有访问该文件夹的权限,如果有访问权限,则转入步骤(4-4),否则向客户端发送拒绝访问的提示,过程结束;
(4-4)从服务端本地读取该文件粒度请求类型参数对应的文件的访问控制策略,根据用户的身份令牌执行基于属性的访问控制以判断用户是否有访问该文件的权限,如果有则从服务端本地获取该文件粒度请求类型参数对应的文件,并将其发送到客户端,过程结束;否则向客户端发送拒绝访问的提示,过程结束;
(4-5)从服务端本地读取该元数据粒度请求类型参数对应的文件的元数据的元数据访问控制策略,根据用户的身份令牌执行基于属性的访问控制以判断用户是否有访问该元数据的权限,如果有则从服务端本地获取该元数据粒度请求类型参数对应的文件,并将其发送到客户端,过程结束;否则向客户端发送拒绝访问的提示,过程结束。
按照本发明的另一方面,提供了一种大数据环境下的多粒度访问控制系统,其特征在于,包括:
第一模块,其设置于客户端,用于接收来自用户的请求,在接收到的该请求中添加用户令牌信息,并将添加了用户令牌信息以后的该请求转发到服务端;
第二模块,其设置于服务端,用于判断接收到的请求的类型,是策略类型请求,还是文件数据类型请求,如果是策略类型请求,则转入第三模块,否则转入第四模块;
第三模块,其设置于服务端,用于针对读类型的策略类型请求,直接读取其本地存储的与该策略类型请求对应的策略;针对写类型的策略类型请求,根据该策略类型请求对应的粒度进行策略冲突检测以及策略合并操作,并将成功操作的结果存储在服务端本地,然后转入第五模块;
第四模块,其设置于服务端,用于根据请求类型参数读取其本地存储的策略,根据该策略以及用户的身份令牌判断该用户是否具有访问权限,并在该用户具有访问权限时执行与该文件数据类型请求对应的数据操作,以得到操作结果,然后转入第五模块;
第五模块,其设置于服务端,用于将操作结果反馈给客户端。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
(1)由于本发明采用了步骤(1)到(4),将文件层次的访问控制丰富成文件夹、文件、文件元数据三个层次的访问控制,使得访问控制不再局限于文件层次,因此能够满足不同应用的多样化访问需求,从而能够有效保障大数据环境下数据的安全访问。
(2)本发明在步骤(1)中引入了属性基加密功能,数据是以密文的形式保存在云端,即使入侵者从云端获取了数据也提取不了有效的内容,给数据的安全加上了双重保险。
(3)本发明在步骤(4)中先进行文件夹访问控制判断,再进行文件访问控制判断,当不具备文件夹的访问控制权限时,无需再执行文件访问控制,从而加快了访问控制的速度。
(4)本发明在步骤(4)中通过对文件元数据实行访问控制,有效保护了文件的一些敏感信息。并且文件元数据的访问控制不依赖于上层访问控制,是独立存在的,满足了医疗大数据下的一些特殊的权限管理需求。
(5)本发明将加解密部分放在客户端执行,缓解了服务端压力,加快了文件访问的速度。
附图说明
图1是访问控制策略树示意图。
图2是策略冲突示意图。
图3是策略合并示意图。
图4是本发明大数据环境下的多粒度访问控制方法的流程图。
图5是本发明步骤(1)中在接收到的该请求中添加用户令牌信息的过程的细化流程图。
图6是本发明方法中步骤(3)的细化流程图。
图7是本发明方法中步骤(4)的细化流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
以下首先对本发明中出现的技术术语进行解释和说明:
粒度:权限管理的层次,具体有粗粒度与细粒度;粗粒度指的是对资源类型的管理,细粒度指的是对资源实例的管理。
多粒度:在权限管理模式中,包含了粗粒度与细粒度不同粒度的管理方式。
属性(Attribute):用户的特征描述,由属性名和属性值的二元组构成。
元数据(Metadata):文件元数据信息,如:文件大小、创建者…,设置第三层访问控制。
访问控制策略树:文件属主规定的描述文件访问条件的树,树由叶子节点、非叶子节点以及连接非叶子节点或连接非叶子节点和叶子节点的边构成,非叶子节点为运算符,运算符包括“AND”和“OR”;叶子节点为用户属性值,如图1所示。
访问控制策略:由访问控制树转换而成的字符串。
策略冲突:高级别的访问控制策略和低级别的访问控制策略可能存在矛盾的情况,如图2所示。例如:文件夹男生可以访问,该文件夹下的文件就不能设置女生可以访问;
策略合并:低级别的策略中可以去掉高级别策略以达到策略化简的目的,如图3所示。例如:文件夹男生才能访问,那么该文件夹里面的文件就不用再设置男生可以访问;
如图4所示,本发明大数据环境下的多粒度访问控制方法包括以下步骤:
(1)客户端接收来自用户的请求,在接收到的该请求中添加用户令牌(Token)信息,并将添加了用户令牌信息以后的该请求转发到服务端;
具体而言,用户令牌信息包括用户的身份令牌、以及请求类型参数(例如读写文件策略相关参数、新建文件夹相关参数、上传文件相关参数等)。
如图5所示,本步骤中在接收到的该请求中添加用户令牌信息的过程具体包括以下子步骤:
(1-1)验证该用户是否合法,如果合法则构造该用户的身份令牌,然后转入步骤(1-2),否则过程结束;
具体而言,验证用户的合法性是根据用户输入的用户名和密码进行判断的,如果输入的用户名和密码正确,则该用户是合法用户,否则该用户是非法用户。
(1-2)判断接收到的请求的类型,是文件夹粒度类型请求、文件粒度类型请求、以及元数据粒度类型请求,如果是文件夹粒度类型请求,则转入子步骤(1-3),如果是文件粒度类型请求,则转入子步骤(1-6),如果是元数据粒度类型请求,则转入子步骤(1-13);
(1-3)获取文件夹粒度类型请求对应的文件夹信息,并将该文件夹信息以及构造的用户的身份令牌发送给服务端;
(1-4)获取文件夹粒度类型请求中用户定义的文件夹访问控制策略,并将该文件夹访问控制策略发送到服务端;
(1-5)等待接收来自于服务端的处理结果,并将该处理结果反馈给用户,过程结束;
(1-6)判断该文件粒度类型请求是上传文件类型请求,还是下载文件类型请求,如果是上传文件类型请求,则转入步骤(1-7),如果是下载文件类型请求,则转入步骤(1-11);
(1-7)获取该上传文件类型请求对应的文件,并将该文件以及构造的用户的身份令牌发送给服务端;
可选地,本步骤还可以在发送过程之前,对该文件进行属性基加密(Ciphertextpolicy attribute-based encryption,简称CP-ABE);
(1-8)获取文件粒度类型请求中用户定义的文件访问控制策略,并将该文件访问控制策略发送到服务端;
(1-9)获取文件粒度类型请求中用户定义的文件元数据访问控制策略,并将该文件元数据访问控制策略发送到服务端;
(1-10)等待接收来自于服务端的处理结果,并将该处理结果反馈给用户,过程结束;
(1-11)获取该下载文件类型请求对应的文件名,并将该文件名作为参数以及构造的用户的身份令牌发送给服务端;
(1-12)等待接收来自于服务端的处理结果,并将该处理结果反馈给用户;
可选地,如果上述步骤(1-7)中对文件进行了加密操作,则本步骤中还应对来自服务端的处理结果进行对应的解密操作,并将该解密结果作为处理结果反馈给用户;
(1-13)获取元数据粒度类型请求对应的元数据请求信息,并将该元数据请求信息作为参数以及构造的用户的身份令牌发送给服务端;
(1-14)等待接收来自于服务端的处理结果,并将该处理结果反馈给用户,过程结束。
(2)服务端判断接收到的请求的类型,是策略类型请求,还是文件数据类型请求,如果是策略类型请求,则转入步骤(3),否则转入步骤(4);
具体而言,本步骤中判断请求的类型,是通过读取请求中添加的用户令牌信息中的请求类型参数,如果该请求类型参数是与策略相关(比如读写文件夹策略、读写文件策略等),则该请求类型是策略类型请求,如果该请求类型参数是与文件内容相关(比如上传文件、下载文件等),则该请求类型是文件数据类型。
文件数据类型请求包括文件夹粒度类型请求、文件粒度类型请求、以及元数据粒度类型请求。
(3)服务端针对读类型的策略类型请求,直接读取其本地存储的与该策略类型请求对应的策略;针对写类型的策略类型请求,根据该策略类型请求对应的粒度进行策略冲突检测以及策略合并操作,并将成功操作的结果存储在服务端本地,然后转入步骤(5);
本步骤具体包括以下子步骤:
(3-1)判断策略类型请求是读策略类型请求,还是写策略类型请求,如果是读策略类型请求则转入子步骤(3-2),否则转入子步骤(3-3);
(3-2)直接读取服务端本地存储的与该读策略类型请求对应的策略,过程结束;
(3-3)判断该写策略类型请求是写文件夹策略类型请求、写文件策略类型请求、还是写元数据策略类型请求,如果是写文件夹策略类型请求或写元数据策略类型请求,则直接将请求对应的策略写入服务端本地存储,过程结束;如果是写文件策略类型请求,则转入子步骤(3-4);
(3-4)从服务端本地取出写文件策略类型请求对应的文件所在文件夹的策略,并将其与写文件策略类型请求对应的文件的策略进行策略冲突与合并检测,如果存在策略冲突,则将写失败信息反馈给用户,如果不存在策略冲突,则对这两个策略进行策略合并处理,并将处理后的结果写入服务端本地存储,过程结束。
具体而言,本步骤中的策略冲突检测以及策略合并处理是基于2009年2月出版的《软件学报》杂志中《基于属性的访问控制策略合成代数》一文所采用的方法。
本发明中,解决策略冲突与合并问题时,预先设定冲突属性集,采用经典的访问控制策略合成代数模型,将访问控制策略拆分成各属性算子,然后对这些算子进行交(AND)、并(OR)、差(NOT)运算,将运算结果作为新的访问控制策略(如果发现策略冲突则返回空)。
(4)服务端根据请求类型参数读取其本地存储的策略,根据该策略以及用户的身份令牌判断该用户是否具有访问权限,并在该用户具有访问权限时执行与该文件数据类型请求对应的数据操作,以得到操作结果,然后转入步骤(5);
本步骤具体包括以下子步骤:
(4-1)判断请求类型参数是文件夹粒度请求类型参数,文件粒度请求类型参数,还是元数据粒度请求类型参数,如果是文件夹粒度请求类型参数则转入子步骤(4-2),如果是文件粒度请求类型参数,则转入子步骤(4-3),如果是元数据粒度请求类型参数,则转入子步骤(4-5);
(4-2)从服务端本地读取该文件夹粒度请求类型参数对应的文件夹的访问控制策略,根据用户的身份令牌执行基于属性的访问控制(Attribute-based access control,简称ABAC)以判断用户是否有访问权限,如果有访问权限,则将文件夹粒度请求类型参数对应的文件夹信息发送到客户端,过程结束;否则向客户端发送拒绝访问的提示,过程结束;
(4-3)从服务端本地读取该文件粒度请求类型参数对应的文件所在文件夹的访问控制策略,根据用户的身份令牌执行基于属性的访问控制以判断用户是否有访问该文件夹的权限,如果有访问权限,则转入步骤(4-4),否则向客户端发送拒绝访问的提示,过程结束;
(4-4)从服务端本地读取该文件粒度请求类型参数对应的文件的访问控制策略,根据用户的身份令牌执行基于属性的访问控制以判断用户是否有访问该文件的权限,如果有则从服务端本地获取该文件粒度请求类型参数对应的文件,并将其发送到客户端,过程结束;否则向客户端发送拒绝访问的提示,过程结束;
(4-5)从服务端本地读取该元数据粒度请求类型参数对应的文件的元数据的元数据访问控制策略,根据用户的身份令牌执行基于属性的访问控制以判断用户是否有访问该元数据的权限,如果有则从服务端本地获取该元数据粒度请求类型参数对应的文件,并将其发送到客户端,过程结束;否则向客户端发送拒绝访问的提示,过程结束;
具体而言,由于文件的元数据的访问和文件的访问是相互独立的,所以在访问元数据时,不需要执行文件的访问控制。
(5)服务端将操作结果反馈给客户端。
本发明针对目前大数据环境中单粒度访问控制无法满足不同应用的多样化访问需求,对其进行了改进。通过将文件层次的访问控制丰富成文件夹、文件、文件元数据三个层次的访问控制,实现多粒度的访问控制,从多个层面保障了大数据环境下的数据安全。在用户创建文件夹时指定基于文件夹的访问控制策略,上传文件时指定基于文件和文件元数据的访问控制策略,并且可选择对文件进行CPABE加密方式进行加密,使其以密文的形式存储在云端,适应了云端的半可信特性。当用户请求数据时,会依次判断文件夹的访问权限和文件的访问权限,只有同时满足条件时才能得到密文,并用自己的密钥进行解密。由于系统是从三个层面进行访问控制,为避免策略冲突和策略冗余,系统中增加了策略冲突检测和策略合并模块,使整个系统的运行更加高效。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种大数据环境下的多粒度访问控制方法,其特征在于,包括以下步骤:
(1)客户端接收来自用户的请求,在接收到的该请求中添加用户令牌信息,并将添加了用户令牌信息以后的该请求转发到服务端;
(2)服务端判断接收到的请求的类型,是策略类型请求,还是文件数据类型请求,如果是策略类型请求,则转入步骤(3),否则转入步骤(4);
(3)服务端针对读类型的策略类型请求,直接读取其本地存储的与该策略类型请求对应的策略;针对写类型的策略类型请求,根据该策略类型请求对应的粒度进行策略冲突检测以及策略合并操作,并将成功操作的结果存储在服务端本地,然后转入步骤(5);
(4)服务端根据请求类型参数读取其本地存储的策略,根据该策略以及用户的身份令牌判断该用户是否具有访问权限,并在该用户具有访问权限时执行与该文件数据类型请求对应的数据操作,以得到操作结果,然后转入步骤(5);
(5)服务端将操作结果反馈给客户端。
2.根据权利要求1所述的多粒度访问控制方法,其特征在于,用户令牌信息包括用户的身份令牌、以及请求类型参数。
3.根据权利要求1所述的多粒度访问控制方法,其特征在于,在接收到的该请求中添加用户令牌信息的过程具体包括以下子步骤:
(1-1)验证该用户是否合法,如果合法则构造该用户的身份令牌,然后转入步骤(1-2),否则过程结束;
(1-2)判断接收到的请求的类型,是文件夹粒度类型请求、文件粒度类型请求、以及元数据粒度类型请求,如果是文件夹粒度类型请求,则转入子步骤(1-3),如果是文件粒度类型请求,则转入子步骤(1-6),如果是元数据粒度类型请求,则转入子步骤(1-13);
(1-3)获取文件夹粒度类型请求对应的文件夹信息,并将该文件夹信息以及构造的用户的身份令牌发送给服务端;
(1-4)获取文件夹粒度类型请求中用户定义的文件夹访问控制策略,并将该文件夹访问控制策略发送到服务端;
(1-5)等待接收来自于服务端的处理结果,并将该处理结果反馈给用户,过程结束;
(1-6)判断该文件粒度类型请求是上传文件类型请求,还是下载文件类型请求,如果是上传文件类型请求,则转入步骤(1-7),如果是下载文件类型请求,则转入步骤(1-11);
(1-7)获取该上传文件类型请求对应的文件,并将该文件以及构造的用户的身份令牌发送给服务端;
(1-8)获取文件粒度类型请求中用户定义的文件访问控制策略,并将该文件访问控制策略发送到服务端;
(1-9)获取文件粒度类型请求中用户定义的文件元数据访问控制策略,并将该文件元数据访问控制策略发送到服务端;
(1-10)等待接收来自于服务端的处理结果,并将该处理结果反馈给用户,过程结束;
(1-11)获取该下载文件类型请求对应的文件名,并将该文件名作为参数以及构造的用户的身份令牌发送给服务端;
(1-12)等待接收来自于服务端的处理结果,并将该处理结果反馈给用户;
(1-13)获取元数据粒度类型请求对应的元数据请求信息,并将该元数据请求信息作为参数以及构造的用户的身份令牌发送给服务端;
(1-14)等待接收来自于服务端的处理结果,并将该处理结果反馈给用户,过程结束。
4.根据权利要求3所述的多粒度访问控制方法,其特征在于,步骤(1-7)还包括在发送过程之前,对该文件进行CP-ABE加密。
5.根据权利要求4所述的多粒度访问控制方法,其特征在于,步骤(1-12)还包括在发送处理结果之前,对来自服务端的处理结果进行对应的解密操作,解密结果即为处理结果。
6.根据权利要求1所述的多粒度访问控制方法,其特征在于,步骤(3)具体包括以下子步骤:
(3-1)判断策略类型请求是读策略类型请求,还是写策略类型请求,如果是读策略类型请求则转入子步骤(3-2),否则转入子步骤(3-3);
(3-2)直接读取服务端本地存储的与该读策略类型请求对应的策略,过程结束;
(3-3)判断该写策略类型请求是写文件夹策略类型请求、写文件策略类型请求、还是写元数据策略类型请求,如果是写文件夹策略类型请求或写元数据策略类型请求,则直接将请求对应的策略写入服务端本地存储,过程结束;如果是写文件策略类型请求,则转入子步骤(3-4);
(3-4)从服务端本地取出写文件策略类型请求对应的文件所在文件夹的策略,并将其与写文件策略类型请求对应的文件的策略进行策略冲突与合并检测,如果存在策略冲突,则将写失败信息反馈给用户,如果不存在策略冲突,则对这两个策略进行策略合并处理,并将处理后的结果写入服务端本地存储,过程结束。
7.根据权利要求1所述的多粒度访问控制方法,其特征在于,步骤(4)具体包括以下子步骤:
(4-1)判断请求类型参数是文件夹粒度请求类型参数,文件粒度请求类型参数,还是元数据粒度请求类型参数,如果是文件夹粒度请求类型参数则转入子步骤(4-2),如果是文件粒度请求类型参数,则转入子步骤(4-3),如果是元数据粒度请求类型参数,则转入子步骤(4-5);
(4-2)从服务端本地读取该文件夹粒度请求类型参数对应的文件夹的访问控制策略,根据用户的身份令牌执行基于属性的访问控制以判断用户是否有访问权限,如果有访问权限,则将文件夹粒度请求类型参数对应的文件夹信息发送到客户端,过程结束;否则向客户端发送拒绝访问的提示,过程结束;
(4-3)从服务端本地读取该文件粒度请求类型参数对应的文件所在文件夹的访问控制策略,根据用户的身份令牌执行基于属性的访问控制以判断用户是否有访问该文件夹的权限,如果有访问权限,则转入步骤(4-4),否则向客户端发送拒绝访问的提示,过程结束;
(4-4)从服务端本地读取该文件粒度请求类型参数对应的文件的访问控制策略,根据用户的身份令牌执行基于属性的访问控制以判断用户是否有访问该文件的权限,如果有则从服务端本地获取该文件粒度请求类型参数对应的文件,并将其发送到客户端,过程结束;否则向客户端发送拒绝访问的提示,过程结束;
(4-5)从服务端本地读取该元数据粒度请求类型参数对应的文件的元数据的元数据访问控制策略,根据用户的身份令牌执行基于属性的访问控制以判断用户是否有访问该元数据的权限,如果有则从服务端本地获取该元数据粒度请求类型参数对应的文件,并将其发送到客户端,过程结束;否则向客户端发送拒绝访问的提示,过程结束。
8.一种大数据环境下的多粒度访问控制系统,其特征在于,包括:
第一模块,其设置于客户端,用于接收来自用户的请求,在接收到的该请求中添加用户令牌信息,并将添加了用户令牌信息以后的该请求转发到服务端;
第二模块,其设置于服务端,用于判断接收到的请求的类型,是策略类型请求,还是文件数据类型请求,如果是策略类型请求,则转入第三模块,否则转入第四模块;
第三模块,其设置于服务端,用于针对读类型的策略类型请求,直接读取其本地存储的与该策略类型请求对应的策略;针对写类型的策略类型请求,根据该策略类型请求对应的粒度进行策略冲突检测以及策略合并操作,并将成功操作的结果存储在服务端本地,然后转入第五模块;
第四模块,其设置于服务端,用于根据请求类型参数读取其本地存储的策略,根据该策略以及用户的身份令牌判断该用户是否具有访问权限,并在该用户具有访问权限时执行与该文件数据类型请求对应的数据操作,以得到操作结果,然后转入第五模块;
第五模块,其设置于服务端,用于将操作结果反馈给客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710548645.2A CN107370604B (zh) | 2017-07-07 | 2017-07-07 | 一种大数据环境下的多粒度访问控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710548645.2A CN107370604B (zh) | 2017-07-07 | 2017-07-07 | 一种大数据环境下的多粒度访问控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107370604A true CN107370604A (zh) | 2017-11-21 |
CN107370604B CN107370604B (zh) | 2019-05-31 |
Family
ID=60305132
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710548645.2A Active CN107370604B (zh) | 2017-07-07 | 2017-07-07 | 一种大数据环境下的多粒度访问控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107370604B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107359990A (zh) * | 2017-08-03 | 2017-11-17 | 北京奇艺世纪科技有限公司 | 一种秘密信息处理方法、装置及系统 |
CN108959955A (zh) * | 2018-06-06 | 2018-12-07 | Oppo广东移动通信有限公司 | 文件处理方法及装置 |
WO2020082692A1 (zh) * | 2018-10-22 | 2020-04-30 | 深圳技术大学 | 基于cp-abe的策略更新方法与系统 |
CN111130757A (zh) * | 2019-12-31 | 2020-05-08 | 华中科技大学 | 一种基于区块链的多云cp-abe访问控制方法 |
CN112583732A (zh) * | 2020-12-03 | 2021-03-30 | 中国人寿保险股份有限公司 | 基于控制粒度池对接口调用的流量控制方法及相关设备 |
CN108830102B (zh) * | 2018-06-14 | 2021-07-02 | 平安科技(深圳)有限公司 | 文件安全管理方法、装置、计算机设备及存储介质 |
WO2021232193A1 (zh) * | 2020-05-18 | 2021-11-25 | 深圳技术大学 | 雾计算下基于cp-abe的密文搜索方法、装置、设备及存储介质 |
CN113780789A (zh) * | 2021-09-02 | 2021-12-10 | 科大国创云网科技有限公司 | 一种统一数据访问服务型的细粒度权限控制方法及系统 |
CN116450745A (zh) * | 2023-04-26 | 2023-07-18 | 深圳市英唐数码科技有限公司 | 基于多设备的笔记文件操作方法、系统和可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103763355A (zh) * | 2014-01-07 | 2014-04-30 | 天地融科技股份有限公司 | 一种云数据的上传、访问控制方法 |
CN106598966A (zh) * | 2015-10-14 | 2017-04-26 | 阿里巴巴集团控股有限公司 | 一种网页处理方法和装置 |
US20170180458A1 (en) * | 2015-12-21 | 2017-06-22 | International Business Machines Corporation | Collaborative multi-media, multi-channel cognitive visual analytics rationale authoring and playback |
-
2017
- 2017-07-07 CN CN201710548645.2A patent/CN107370604B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103763355A (zh) * | 2014-01-07 | 2014-04-30 | 天地融科技股份有限公司 | 一种云数据的上传、访问控制方法 |
CN106598966A (zh) * | 2015-10-14 | 2017-04-26 | 阿里巴巴集团控股有限公司 | 一种网页处理方法和装置 |
US20170180458A1 (en) * | 2015-12-21 | 2017-06-22 | International Business Machines Corporation | Collaborative multi-media, multi-channel cognitive visual analytics rationale authoring and playback |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107359990A (zh) * | 2017-08-03 | 2017-11-17 | 北京奇艺世纪科技有限公司 | 一种秘密信息处理方法、装置及系统 |
CN108959955A (zh) * | 2018-06-06 | 2018-12-07 | Oppo广东移动通信有限公司 | 文件处理方法及装置 |
CN108830102B (zh) * | 2018-06-14 | 2021-07-02 | 平安科技(深圳)有限公司 | 文件安全管理方法、装置、计算机设备及存储介质 |
WO2020082692A1 (zh) * | 2018-10-22 | 2020-04-30 | 深圳技术大学 | 基于cp-abe的策略更新方法与系统 |
CN111130757A (zh) * | 2019-12-31 | 2020-05-08 | 华中科技大学 | 一种基于区块链的多云cp-abe访问控制方法 |
CN111130757B (zh) * | 2019-12-31 | 2020-12-25 | 华中科技大学 | 一种基于区块链的多云cp-abe访问控制方法 |
WO2021232193A1 (zh) * | 2020-05-18 | 2021-11-25 | 深圳技术大学 | 雾计算下基于cp-abe的密文搜索方法、装置、设备及存储介质 |
CN112583732A (zh) * | 2020-12-03 | 2021-03-30 | 中国人寿保险股份有限公司 | 基于控制粒度池对接口调用的流量控制方法及相关设备 |
CN112583732B (zh) * | 2020-12-03 | 2023-04-28 | 中国人寿保险股份有限公司 | 基于控制粒度池对接口调用的流量控制方法及相关设备 |
CN113780789A (zh) * | 2021-09-02 | 2021-12-10 | 科大国创云网科技有限公司 | 一种统一数据访问服务型的细粒度权限控制方法及系统 |
CN116450745A (zh) * | 2023-04-26 | 2023-07-18 | 深圳市英唐数码科技有限公司 | 基于多设备的笔记文件操作方法、系统和可读存储介质 |
CN116450745B (zh) * | 2023-04-26 | 2024-02-02 | 深圳市英唐数码科技有限公司 | 基于多设备的笔记文件操作方法、系统和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107370604B (zh) | 2019-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107370604B (zh) | 一种大数据环境下的多粒度访问控制方法 | |
US20200228574A1 (en) | Policy management for data migration | |
US9825925B2 (en) | Method and apparatus for securing sensitive data in a cloud storage system | |
JP4575721B2 (ja) | ドキュメント・コンポーネント用セキュリティ・コンテナ | |
CN101547199B (zh) | 电子文档安全保障系统及方法 | |
US11290446B2 (en) | Access to data stored in a cloud | |
CN109923548A (zh) | 通过监管进程访问加密数据实现数据保护的方法、系统及计算机程序产品 | |
CN102394894A (zh) | 一种基于云计算的网络虚拟磁盘文件安全管理方法 | |
CN201682524U (zh) | 一种基于文件过滤驱动的文件流转权限控制系统 | |
CN102281141B (zh) | 一种文档权限管理方法、装置及系统 | |
US11061999B2 (en) | Systems and methods for dynamically enforcing digital rights management via embedded browser | |
CN107612910A (zh) | 一种分布式文件数据访问方法及系统 | |
CN108228353A (zh) | 资源访问控制方法、装置及相应终端 | |
US8611544B1 (en) | Systems and methods for controlling electronic document use | |
US20220092193A1 (en) | Encrypted file control | |
CN105095693A (zh) | 一种基于互联网的数字资产安全共享的方法及其系统 | |
Chandersekaran et al. | Assured content delivery in the enterprise | |
CN106575341B (zh) | 复合文档访问 | |
CN104200173B (zh) | 一种电子文档信任与安全控制方法和系统 | |
US11507686B2 (en) | System and method for encrypting electronic documents containing confidential information | |
Shivanna et al. | Privacy preservation in cloud computing with double encryption method | |
CN105205403A (zh) | 基于文件过滤的管控局域网文件数据的方法、系统 | |
CN109033882A (zh) | 一种可追溯的大数据安全发布方法及系统 | |
CN115514523A (zh) | 一种基于零信任体系的数据安全访问系统、方法、装置及介质 | |
Raje | Security and Microservice Architecture on AWS |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |