一种用于提供数据库访问控制的方法、装置与系统制造方法及图纸

技术编号:12929960 阅读:142 留言:0更新日期:2016-02-29 01:12
根据本发明专利技术的方法与装置提供了一种针对NoSQL数据库或类似数据库的数据访问请求进行访问控制的方案。具体地,根据本发明专利技术,在METADATA节点2对客户端的存储位置及授权请求进行认证并为其生成授权访问令牌标识、授权访问令牌与授权访问令牌的验证码,并将授权访问令牌标识、授权访问令牌,可选地,还有授权访问令牌的验证码作为访问控制信息提供给客户端,从而当客户端向USERDATA节点2请求进行数据访问时,USERDATA节点2可以根据该数据访问请求中的访问控制信息执行数据访问控制。本发明专利技术解决了目前NoSQL数据库或类似数据库存在的无法对数据访问请求进行访问控制的问题,提高来数据库的安全性。

【技术实现步骤摘要】
【专利摘要】根据本专利技术的方法与装置提供了一种针对NoSQL数据库或类似数据库的数据访问请求进行访问控制的方案。具体地,根据本专利技术,在METADATA节点2对客户端的存储位置及授权请求进行认证并为其生成授权访问令牌标识、授权访问令牌与授权访问令牌的验证码,并将授权访问令牌标识、授权访问令牌,可选地,还有授权访问令牌的验证码作为访问控制信息提供给客户端,从而当客户端向USffiDATA节点2请求进行数据访问时,USffiDATA节点2可以根据该数据访问请求中的访问控制信息执行数据访问控制。本专利技术解决了目前NoSQL数据库或类似数据库存在的无法对数据访问请求进行访问控制的问题,提高来数据库的安全性。【专利说明】一种用于提供数据库访问控制的方法、装置与系统
本专利技术涉及数据库领域,尤其涉及一种提供数据库访问控制的技术。
技术介绍
当前的很多数据库,例如NoSQL数据库,几乎没有内置的安全保护机制。即使可以 在数据管理层(如元数据管理)执行如认证和授权的安全机制,在物理数据存储器中仍无 法进行访问控制信息的传递和执行。 现有的关系数据库的安全性能不能适用于NoSQL数据库。其原因在于NoSQL缺少 数据库表的组织和定义以及数据库表同其它表的关系以及它们所包含的列(schema),访问 控制无法在一个表格,一列或一行中单独执行。 图1示出NoSQL数据库的架构图。如图1所示示出客户端与NoSQL数据库系统, 其中,客户端可以为用户设备(User_Agent)或第三方应用(3rd Party Application), 在 NoSQL 数据库系统包括 USERDATA 节点 USERDAT_1,USERDATA_2, USERDATA_3,及多级别 METADATA 节点 METADATA_1,METADATA_2, METADATA_3, SUPER_METADATA,本领域技术人应理 解图1中所示的各部分的数量、级别数仅为示例。 在NoSQL数据库系统中,单个文件可以被分成若干分布在集群中的块,其中, USERDATA节点存储文件数据块的;METADATA节点包含元数据,和数据块的管理信息,还有 集群中其所管理的USERDATA节点的列表。一个METADATA节点管理一个或多个USERDATA节 点。实施时,可能有几个级别的METADATA节点,比如SUPER_METADATA节点和METADATA节 点。当用户设备或第三方应用通过NoSQL数据库访问某个文件的时候,它们会寻找构成一 个METADTA节点中的文件的数据块的位置,然后在USERDATA节点上访问数据块。若用户设 备或第三方应用若已经知道数据块的位置,则可以直接访问USERDATA节点上的数据块。 当用户或第三方应用向METADATA节点中请求授权访问文件时,METADATA会在认 证用户或第三方应用身份后,根据安全策略,检查对文件的访问控制权限(如读,写和删除 等)。 然而,当涉及到USERDATA节点上的后续数据块访问时,USERDATA节点无法进行是 否授权的判断,从而无法执行访问控制。USERDATA节点无法检查访问的权限并独立对此做 出判断的原因在于,USERDATA节点仅能管理那些没有文件概念的数据块。另外,一些NoSQL 数据库,比如Google BigTable,并不对其数据库的访问进行任何访问控制。一个未经授权 的用户只要知道数据块的位置或者block ID,就有可能访问该数据块。
技术实现思路
本专利技术的目的是为NoSQL数据库或类似数据库提供访问控制的方案。具体地,通 过在外部数据管理层或相关应用层执行数据访问的授权验证,可以为NoSQL数据库或类似 数据提供数据访问控制的安全机制,从而可以拒绝未经授权用户的访问。 根据本专利技术的第一实施例,提供了一种用于对数据访问进行管理的方法,其中,包 括以下步骤: -接收来自客户端的存储位置及授权请求,用于请求待访问文件的数据块的存储 位置和相应的授权访问控制信息; -基于所述存储位置及授权请求确定待访问数据块的存储位置; -基于所述存储位置与授权请求对该存储位置及授权请求进行认证; -当对该存储位置及授权请求的认证通过,生成基于该存储位置及授权请求的授 权访问控制信息; -将所请求的数据块的存储位置以及所述对应的授权访问控制信息提供给所述客 户端。 优选地,该方法还包括: -接收来自数据存储装置的验证请求,其中,该验证请求用于请求对来自客户端的 数据访问请求进行验证; -根据从所述验证请求中提取出的来自该客户端的授权访问控制信息,对该验证 请求进行验证; -当验证通过,向所述数据存储装置发送验证通过消息。 根据本专利技术的第二实施例,提供了 -接收来自客户端的数据访问请求,该数据访 问请求包括待访问的数据块的存储位置以及对应的授权访问控制信息; -从来自客户端的数据访问请求中获取待访问数据块的存储位置信息、授权访问 控制信息及访问控制权限; -根据从所述数据访问请求中提取出的授权访问控制信息,对该数据访问请求进 行验证; -当验证通过,根据该数据访问请求中的待访问数据块的存储位置与访问控制权 限来对所述待访问的数据块执行相应的访问操作。 根据本专利技术的第三实施例,提供了一种用于对数据访问进行管理的数据库管理装 置,其中,包括: 第一接收装置(201),用于接收来自客户端的存储位置及授权请求,用于请求待访 问文件的数据块的存储位置和相应的授权访问控制信息; 确定装置,用于基于所述存储位置及授权请求来确定待访问数据块的存储位置; 认证装置(202),用于基于所述存储位置与授权请求对该存储位置及授权请求进 行认证; 授权生成装置(203),用于当对该存储位置与授权请求的认证通过,生成基于该存 储位置及授权请求的授权访问控制信息; 第一响应装置(204),用于将所请求的数据块的存储位置以及所述对应的授权访 问控制信息提供给所述客户端。 优选地,该数据库管理装置还包括: 第二接收装置,用于接收来自数据存储装置的验证请求,其中,该验证请求用于请 求对来自客户端的数据访问请求进行验证; 第一验证装置,用于根据从所述验证请求中提取出的来自该客户端的授权访问控 制信息,对该验证请求进行验证; 第三响应装置,用于当验证通过,向所述数据存储装置发送验证通过消息。 根据本专利技术的第四实施例,提供了一种用于提供数据访问的数据存储装置,其中, 该方法包括 第二接收装置,用于接收来自客户端的数据访问请求,该数据访问请求包括待访 问的数据块的存储位置以及对应的授权访问控制信息; 获取装置,用于从来自客户端的数据访问请求中获取待访问数据块的存储位置信 息、授权访问控制信息及访问控制权限; 第二验证装置,用于根据从所述数据访问请求中提取出的授权访问控制信息,对 该数据访问请求进行验证; 访问操作装置,用于当验证通过,根据该数据访问请求中的待访问数据块的存储 位置与访问控制权限来对所述待访问的数据块执行相应的访问操作。 根据本专利技术的第五实施例,提供了一种用于本文档来自技高网
...

【技术保护点】
一种用于对数据访问进行管理的方法,其中,包括以下步骤:‑接收来自客户端的存储位置及授权请求,用于请求待访问文件的数据块的存储位置和相应的授权访问控制信息;‑基于所述存储位置及授权请求确定待访问数据块的存储位置;‑基于所述存储位置与授权请求对该存储位置及授权请求进行认证;‑当对该存储位置及授权请求的认证通过,生成基于该存储位置及授权请求的授权访问控制信息,并确定待访问数据块的存储位置;‑将所请求的数据块的存储位置以及所述对应的授权访问控制信息提供给所述客户端。

【技术特征摘要】

【专利技术属性】
技术研发人员:胡志远孙群英骆志刚万永根
申请(专利权)人:上海贝尔股份有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1