租户对自定义数据库访问的控制方法、装置和系统的制作方法

文档序号:8223836阅读:317来源:国知局
租户对自定义数据库访问的控制方法、装置和系统的制作方法
【技术领域】
[0001]本发明属于云计算机技术领域,尤其是一种多租户结构中对自定义数据库访问的控制方法和装置。
【背景技术】
[0002]多租户架构可以将数据采用共享数据库共享表的方式高度共享的存储,其架构在数据存储中对资源进行共享。多租户架构应用不仅仅能以共享的方式提供服务,还可以为租户的个性化需求服务。其中,租户个性化需求对应的数据库称为自定义数据库。为了满足拥有数据存储的高度共享性,又能极大程度的满足租户灵活的个性化需求,常常采用扩展表数据模型、键值对数据模型等类似数据模型。这类存储模型是将租户自定义数据的元数据,如表名、字段名、字段长度等,与租户自定义数据的值数据分离存储。元数据和值数据均以数据记录的形式存放在多租户数据库中。
[0003]然而,现有的数据库管理系统的访问控制体系不能对以数据记录形式存储在租户自定义数据库中的数据的操作请求不能进行安全判断,这是租户自定义数据库面临的安全冋题。

【发明内容】

[0004]本发明的目的在于提供一种租户对自定义数据访问的控制方法、装置和系统,以解决现有的多租户结构中对自定义数据库的操作缺乏安全控制的技术缺陷。
[0005]为此,本发明一方面提供了一种租户对自定义数据库访问的控制方法,包括:
[0006]根据租户上传的包含元数据的数据存储需求,配置租户自定义数据库中对元数据的访问控制策略;
[0007]接收租户发送的包含元数据的操作请求,根据所述访问控制策略判断操作请求是否合法:如果合法,则将该操作请求提交至租户数据库中执行并将结果返回给租户;否则,不允许提交操作请求。
[0008]在一个实施方式中,所述租户通过租户数据库服务提交所述数据存储需求。
[0009]在一个实施方式中,所述数据存储需求还包含租户信息,以及对所述租户信息标记是否需要进行访问控制的标记信息;
[0010]在所述根据所述访问控制策略判断操作请求是否合法的步骤之前,还包括根据所述标记信息判断是否需要进行访问控制,如果是,则根据所述访问控制策略判断操作请求是否合法。
[0011]在一个实施方式中,所述元数据包含自定义数据的表名、表属性、字段名、字段属性、取值范围、有效期和访问权限中的一种或多种。
[0012]在一个实施方式中,所述根据所述访问控制策略判断操作请求是否合法的步骤包括:
[0013]从所述操作请求中获取对应的元数据和操作要求;
[0014]查询该元数据对应的操作权限;
[0015]判断所述操作要求是否位于所述操作权限内,如果是,则判断该操作请求合法,否贝1J,判断该操作请求不合法。
[0016]一种租户对自定义数据库访问的控制装置,包括:
[0017]元数据库权限池,用于根据租户上传的包含自定义表信息、字段信息、有效期中一种或多种的数据存储需求,配置自定义数据库中对元数据的访问控制策略;
[0018]判断模块,用于接收租户的操作请求,根据所述访问控制策略判断操作请求是否合法;如果合法,则将该操作请求提交至租户数据库中执行并将结果返回给租户;否则,不允许提交操作请求。
[0019]在一个实施方式中,所述租户通过租户数据库服务提交所述数据存储需求。
[0020]在一个实施方式中,还包括:
[0021]租户管理模块用于存储租户信息,以及对所述租户信息标记是否需要进行访问控制进行标记;
[0022]访问控制模块:用于在所述根据所述访问控制策略判断操作请求是否合法的步骤之前,根据所述标记信息判断是否需要进行访问控制,如果是,则根据所述访问控制策略判断操作请求是否合法。
[0023]在一个实施方式中,所述元数据包含自定义数据的表名、表属性、字段名、字段属性、取值范围、有效期和访问权限中的一种或多种。
[0024]一种租户对自定义数据库访问的控制系统,包括租户、租户数据库,以及访问控制模块,所述租户和租户数据库分别与所述访问控制模块连接,其中,所述访问控制模块包括:
[0025]通讯模块,分别与所述租户和租户数据库连接交互;
[0026]元数据库权限池,用于存储需要进行自定义数据库访问控制的租户的元数据;
[0027]访问控制模块,用于根据所述元数据库权限池判断从所述通讯模块接收的操作请求是否合法。
[0028]与现有技术相比,本发明所述的方法、装置和系统通过数据存储需求配置对应的访问控制策略,根据操作请求中的元数据来判断该操作请求是否合法并作出对应的处理,从而使得自定义数据能够得到完善的访问控制,有效保障数据访问控制安全。
【附图说明】
[0029]图1是本发明所述租户对自定义数据库访问的控制系统的一实施方式的结构示意图;
[0030]图2是本发明所述租户对自定义数据库访问的控制系统一实施方式的租户数据库中的数据模型的结构示意图;
[0031]图3是本发明所述租户对自定义数据库访问的控制系统一实施方式的元数据的数据模型的结构示意图;
[0032]图4是本发明所述租户对自定义数据库访问的控制方法的一实施方式的流程图;
[0033]图5是本发明所述租户对自定义数据库访问的控制方法的一实施方式中租户上传数据存储需求的流程图;
[0034]图6是本发明所述租户对自定义数据库访问的控制方法的一实施方式中租户对自定义数据库查询操作的流程图;
[0035]图7是本发明所述租户对自定义数据库访问的控制装置的一实施方式的结构示意图;
[0036]图中:
[0037]110:租户;120:访问控制模块;121:通信模块;122:存储需求判断模块;123:租户管理模块;124:元数据权限池;125:访问控制判断模块;126:访问控制执行模块;130:
自定义数据库。
[0038]201:租户信息表;202:元数据表;203:值数据表;204:元数据列;701:元数据库权限池;702:判断模块。
【具体实施方式】
[0039]下面结合附图,对本发明做进一步说明。
[0040]参见图1,图1是本发明所述租户对自定义数据库访问的控制系统的一实施方式的结构示意图。该实施方式的系统中包括租户110,访问控制模块120和自定义数据库130。租户110与访问控制模块120之间通过通信网络(例如,因特网)进行通信,连接方式可以是有线的或者无线的方式。自定义数据库130和访问控制模块120之间通过有线和/或无线链路通信相连。
[0041]租户110可以是具有网络访问功能的用户终端,包括台式电脑、笔记本、平板电脑、上网本等。租户110可以通过输入各种请求信息,包括但不限于数据库存储需求请求和数据库查询操作请求。
[0042]访问控制模块120可以是具有缓存功能的集成电路、包含软件代码的硬件和/或装置。访问控制模块120可以集成在自定义数据库130中,也可以放置在自定义数据库130夕卜。此外,一个访问控制模块120可以为一个租户110对应提供服务,也可以为多个租户110对应提供服务。一个访问控制模块120可以和一个自定义数据库130对应提供服务,也可以为多个自定义数据库130对应服务。
[0043]访问控制模块120包括通信模块121、存储需求分析模块、租户管理模块123、元数据权限池124、访问控制判断模块125和访问控制执行模块126。
[0044]在一个实施方式中,通信模块121用于从租户110接收存储需求请求和查询操作请求并分别按照通信协议解析请求内容,然后将解析结果分别发送给存储需求判断模块122和访问控制判断模块125。另外,通信模块121还用于将访问控制结果转发给自定义数据库130。
[0045]在一实施方式中,存储需求判断模块122用于分析从通信模块121接收的数据存储需求的请求进行解析,提取出其中的元数据。此外,还将租户的自定义数据库130的元数据配置到元数据权限池124。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1