一种基于逻辑分类和数据角色控制的数据访问方法
未命名
10-09
阅读:127
评论:0
1.本发明属于数据访问技术领域,具体涉及一种基于逻辑分类和数据角色控制的数据访问方法。
背景技术:
2.各类科学数据中心,存储有大量源数据,例如,某气象站2017年水文气象观测网源数据,某区域2019年逐日地表蒸散发源数据,某地区2013年上游植被源数据等。在数据访问权限控制上,采用用户注册登录,根据用户权限获取相关源数据的方式。由于源数据的数据量较大,因此,具有源数据申请访问维护管理工作量大,以及用户申请访问源数据过程复杂,等待批复时间长等问题,难以使用户快速访问到相关的源数据。
技术实现要素:
3.针对现有技术存在的缺陷,本发明提供一种基于逻辑分类和数据角色控制的数据访问方法,可有效解决上述问题。
4.本发明采用的技术方案如下:
5.本发明提供一种基于逻辑分类和数据角色控制的数据访问方法,包括以下步骤:
6.步骤1,通过源数据存储模块,存储多条源数据;
7.步骤2,构建元数据列表,所述元数据列表存储每条源数据对应的元数据;所述元数据为所述源数据的描述信息,所述元数据的属性包括所述源数据的名称以及所述源数据的存储路径;
8.步骤3,通过逻辑分类管理模块,建立逻辑分类层次树;所述逻辑分类层次树为多个逻辑分类节点形成的树形结构,将任意逻辑分类节点表示为:逻辑分类节点node
ij
,代表逻辑分类层次树中第i层第j个逻辑分类节点;
9.通过逻辑分类节点配置控件,对逻辑分类节点node
ij
进行配置,得到逻辑分类节点node
ij
的配置信息,具体为:定义逻辑分类节点node
ij
的逻辑分类节点名称;配置逻辑分类节点node
ij
的父级逻辑分类节点名称;向该逻辑分类节点node
ij
绑定元数据,所绑定的元数据属于该逻辑分类节点node
ij
,但不属于该逻辑分类节点node
ij
的子节点;因此,所述逻辑分类节点node
ij
的配置信息包括逻辑分类节点名称、父级逻辑分类节点名称和绑定的元数据;
10.步骤4,通过数据角色管理模块,建立数据角色列表;所述数据角色列表包括多条数据角色;
11.通过数据角色配置控件,对每条数据角色进行配置,具体为:定义数据角色的名称;定义数据角色的说明描述信息;定义数据角色的操作权限;所述操作权限包括:元数据访问权限、元数据对应的源数据预览权限、元数据对应的源数据下载权限;向每条数据角色绑定一个或多个逻辑分类节点;向每条数据角色绑定一个或多个用户id;
12.步骤5,当接收到用户的数据访问请求时,从所述数据访问请求中获取用户id;
13.基于用户id检索所述数据角色列表,获得与所述用户id绑定的每条数据角色,再从获得的每条数据角色中获得操作权限以及对应的逻辑分类节点;
14.对于获得的每个逻辑分类节点,执行以下操作:
15.基于获得的逻辑分类节点,在所述逻辑分类层次树中定位到所述逻辑分类节点,遍历所述逻辑分类节点及其所有子孙节点,获得遍历到的各个逻辑分类节点绑定的元数据,得到元数据集合,并将所述元数据集合与对应的操作权限绑定;
16.然后,将获得的元数据集合作为当前用户被允许访问的范围,推送给用户界面;
17.对于某条元数据,如果其操作权限为元数据访问权限,则仅允许访问该元数据;如果其操作权限为元数据对应的源数据预览权限,则:当该元数据被点击时,根据所述元数据属性中的源数据的存储路径,从所述源数据存储模块中读取到对应的源数据,并将所述源数据预览到界面;如果其操作权限为元数据对应的源数据下载权限,则:当该元数据被点击时,根据所述元数据属性中的源数据的存储路径,从所述源数据存储模块中读取到对应的源数据,并将所述源数据下载给用户。
18.优选的,通过逻辑分类节点配置控件,对逻辑分类节点node
ij
进行配置,还包括:
19.所述逻辑分类节点配置控件,包括新建逻辑分类节点子控件、编辑逻辑分类节点子控件、删除逻辑分类节点子控件和翻译逻辑分类节点子控件;
20.所述新建逻辑分类节点子控件,用于在所述逻辑分类层次树中新建立逻辑分类节点,方法为:设定新建立的逻辑分类节点的属性,包括:设定新建立的逻辑分类节点的名称、父级逻辑分类节点名称、绑定的元数据、在同一层的兄弟逻辑分类节点的次序号,该新建立的逻辑分类节点的缩略图;同时,更新同一层的其他兄弟逻辑分类节点的次序号;
21.编辑逻辑分类节点子控件,用于对已建立的逻辑分类节点的属性进行编辑;
22.删除逻辑分类节点子控件,用于删除已建立的逻辑分类节点及其子孙节点,同时更新同一层的兄弟逻辑分类节点的次序号;
23.翻译逻辑分类节点子控件,用于向已建立的逻辑分类节点添加翻译信息。
24.优选的,向该逻辑分类节点node
ij
绑定元数据,具体为:
25.所述逻辑分类节点配置控件包括元数据绑定子控件,当针对逻辑分类节点node
ij
触发元数据绑定子控件时,所述元数据绑定子控件,向所述逻辑分类节点node
ij
绑定元数据,方法为:
26.所述元数据绑定子控件,调用并打开元数据绑定界面;读取所述元数据列表中的各条元数据,并将各条所述元数据显示到所述元数据绑定界面;当接收到用户通过元数据绑定界面输入的关键词时,过滤所述元数据,得到与所述关键词关联的多条元数据,并将与所述关键词关联的多条元数据绑定到所述逻辑分类节点node
ij
。
27.优选的,还包括:
28.设置缓存服务器,所述缓存服务器将所述元数据列表、所述逻辑分类层次树和所述数据角色列表加载到缓存池中;
29.当接收到用户的数据访问请求时,从所述数据访问请求中获取用户id;将用户id作为请求参数发送给所述缓存服务器;所述缓存服务器从所述缓存池中检索到对应的数据角色,再获得操作权限以及对应的逻辑分类节点;再根据获得的逻辑分类节点,得到元数据集合,然后,将获得的元数据集合作为当前用户被允许访问的范围,推送给用户界面。
30.优选的,还包括:
31.特殊元数据绑定控件,用于向用户id直接绑定选定的多条元数据,赋与用户id对绑定的元数据的访问权限。
32.本发明提供的一种基于逻辑分类和数据角色控制的数据访问方法具有以下优点:
33.本发明建立逻辑分类层次树和数据角色列表,并且,数据角色列表中的数据角色,与逻辑分类层次树中的逻辑分类节点具有映射关系,从而能够加快查找到用户可访问的源数据范围,提高了用户对源数据访问的效率。另外,具有逻辑分类层次树和数据角色列表易更新维护的优点。
附图说明
34.图1为本发明提供的一种基于逻辑分类和数据角色控制的数据访问方法的流程示意图;
35.图2为本发明实施例提供的逻辑分类层次树的一种示意图;
36.图3为本发明实施例提供的元数据绑定界面图。
具体实施方式
37.为了使本发明所解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
38.本发明提供一种基于逻辑分类和数据角色控制的数据访问方法,参考图1,包括以下步骤:
39.步骤1,通过源数据存储模块,存储多条源数据;
40.步骤2,构建元数据列表,所述元数据列表存储每条源数据对应的元数据;所述元数据为所述源数据的描述信息,所述元数据的属性包括所述源数据的名称以及所述源数据的存储路径;
41.因此,一条源数据唯一对应一条元数据,元数据的属性包括但不限于源数据的名称以及源数据的存储路径,也可以包括其他描述信息,本技术对此并不限制。
42.步骤3,通过逻辑分类管理模块,建立逻辑分类层次树;所述逻辑分类层次树为多个逻辑分类节点形成的树形结构,将任意逻辑分类节点表示为:逻辑分类节点node
ij
,代表逻辑分类层次树中第i层第j个逻辑分类节点;如图2所示,为逻辑分类层次树的一种具体示例示意图,在图2中,逻辑分类节点为根节点;专题分类节点和基金类型管理节点为第1层逻辑分类节点;专题分类节点作为第1层逻辑分类节点,进一步包括多个第2层逻辑分类节点,作为其子节点。
43.通过逻辑分类节点配置控件,对逻辑分类节点node
ij
进行配置,得到逻辑分类节点node
ij
的配置信息,具体为:定义逻辑分类节点node
ij
的逻辑分类节点名称;配置逻辑分类节点node
ij
的父级逻辑分类节点名称;向该逻辑分类节点node
ij
绑定元数据,所绑定的元数据属于该逻辑分类节点node
ij
,但不属于该逻辑分类节点node
ij
的子节点;因此,所述逻辑分类节点node
ij
的配置信息包括逻辑分类节点名称、父级逻辑分类节点名称和绑定的元数据;
44.本发明中,通过逻辑分类节点配置控件,对逻辑分类节点node
ij
进行配置,还包括:
45.所述逻辑分类节点配置控件,包括新建逻辑分类节点子控件、编辑逻辑分类节点子控件、删除逻辑分类节点子控件和翻译逻辑分类节点子控件;
46.所述新建逻辑分类节点子控件,用于在所述逻辑分类层次树中新建立逻辑分类节点,方法为:设定新建立的逻辑分类节点的属性,包括:设定新建立的逻辑分类节点的名称、父级逻辑分类节点名称、绑定的元数据、在同一层的兄弟逻辑分类节点的次序号,该新建立的逻辑分类节点的缩略图;同时,更新同一层的其他兄弟逻辑分类节点的次序号;
47.编辑逻辑分类节点子控件,用于对已建立的逻辑分类节点的属性进行编辑;
48.删除逻辑分类节点子控件,用于删除已建立的逻辑分类节点及其子孙节点,同时更新同一层的兄弟逻辑分类节点的次序号;
49.翻译逻辑分类节点子控件,用于向已建立的逻辑分类节点添加翻译信息。
50.作为一种具体实施方式,向该逻辑分类节点node
ij
绑定元数据,具体为:
51.所述逻辑分类节点配置控件包括元数据绑定子控件,当针对逻辑分类节点node
ij
触发元数据绑定子控件时,所述元数据绑定子控件,向所述逻辑分类节点node
ij
绑定元数据,方法为:如图3所示,为元数据绑定界面图,所述元数据绑定子控件,调用并打开元数据绑定界面;读取所述元数据列表中的各条元数据,并将各条所述元数据显示到所述元数据绑定界面;当接收到用户通过元数据绑定界面输入的关键词时,过滤所述元数据,得到与所述关键词关联的多条元数据,并将与所述关键词关联的多条元数据绑定到所述逻辑分类节点node
ij
。
52.本发明中,根据源数据之间的逻辑关系,建立逻辑分类层次树;针对每条源数据,建立对应的一条元数据;逻辑分类层次树中的每个逻辑分类节点,可绑定一条或多条元数据,而通过每条元数据中的源数据存储路径,可访问到对应的源数据。此种设计的优点为:将元数据与逻辑分类节点绑定建立映射关系,通过在逻辑分类层次树中定位到逻辑分类节点后,可快速获得对应的元数据,并根据元数据中的源数据存储路径,直接定位到对应的源数据,因此,加快了源数据定位速度。另外,采用逻辑分类层次树的结构对元数据进行分类分级管理,方便逻辑分类层次树的更新以及元数据相关分类标签的更新。
53.步骤4,通过数据角色管理模块,建立数据角色列表;所述数据角色列表包括多条数据角色;
54.通过数据角色配置控件,对每条数据角色进行配置,具体为:定义数据角色的名称;定义数据角色的说明描述信息;定义数据角色的操作权限;所述操作权限包括:元数据访问权限、元数据对应的源数据预览权限、元数据对应的源数据下载权限;向每条数据角色绑定一个或多个逻辑分类节点;向每条数据角色绑定一个或多个用户id;
55.本发明中,通过数据角色列表,实现数据角色与逻辑分类节点的绑定,以及数据角色与用户id的绑定,并且,数据角色具有操作权限,从而间接实现逻辑分类节点、用户id和操作权限的映射,根据用户id,可快速关联到逻辑分类节点,实现在操作权限的限制下,对逻辑分类节点绑定的元数据对应的数据源的访问。采用数据角色列表的管理方式,方便对数据角色中的每个元素进行更新和维护。
56.步骤5,当接收到用户的数据访问请求时,从所述数据访问请求中获取用户id;
57.基于用户id检索所述数据角色列表,获得与所述用户id绑定的每条数据角色,再
从获得的每条数据角色中获得操作权限以及对应的逻辑分类节点;
58.对于获得的每个逻辑分类节点,执行以下操作:
59.基于获得的逻辑分类节点,在所述逻辑分类层次树中定位到所述逻辑分类节点,遍历所述逻辑分类节点及其所有子孙节点,获得遍历到的各个逻辑分类节点绑定的元数据,得到元数据集合,并将所述元数据集合与对应的操作权限绑定;
60.然后,将获得的元数据集合作为当前用户被允许访问的范围,推送给用户界面;
61.对于某条元数据,如果其操作权限为元数据访问权限,则仅允许访问该元数据;如果其操作权限为元数据对应的源数据预览权限,则:当该元数据被点击时,根据所述元数据属性中的源数据的存储路径,从所述源数据存储模块中读取到对应的源数据,并将所述源数据预览到界面;如果其操作权限为元数据对应的源数据下载权限,则:当该元数据被点击时,根据所述元数据属性中的源数据的存储路径,从所述源数据存储模块中读取到对应的源数据,并将所述源数据下载给用户。
62.作为一种具体实施方式,还包括:设置缓存服务器,所述缓存服务器将所述元数据列表、所述逻辑分类层次树和所述数据角色列表加载到缓存池中,并及时更新相关变量改动;
63.当接收到用户的数据访问请求时,从所述数据访问请求中获取用户id;将用户id作为请求参数发送给所述缓存服务器;所述缓存服务器从所述缓存池中检索到对应的数据角色,再获得操作权限以及对应的逻辑分类节点;再根据获得的逻辑分类节点,得到元数据集合,然后,将获得的元数据集合作为当前用户被允许访问的范围,推送给用户界面。通过设置缓存服务器和缓存池,能够预先组织好相关映射结构,提高数据访问的速度。
64.作为一种具体实施方式,还包括:特殊元数据绑定控件,用于向用户id直接绑定选定的多条元数据,赋与用户id对绑定的元数据的访问权限。
65.本发明提供的一种基于逻辑分类和数据角色控制的数据访问方法具有以下优点:
66.本发明建立逻辑分类层次树和数据角色列表,并且,数据角色列表中的数据角色,与逻辑分类层次树中的逻辑分类节点具有映射关系,从而能够加快查找到用户可访问的源数据范围,提高了用户对源数据访问的效率。另外,具有逻辑分类层次树和数据角色列表易更新维护的优点。
67.以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
技术特征:
1.一种基于逻辑分类和数据角色控制的数据访问方法,其特征在于,包括以下步骤:步骤1,通过源数据存储模块,存储多条源数据;步骤2,构建元数据列表,所述元数据列表存储每条源数据对应的元数据;所述元数据为所述源数据的描述信息,所述元数据的属性包括所述源数据的名称以及所述源数据的存储路径;步骤3,通过逻辑分类管理模块,建立逻辑分类层次树;所述逻辑分类层次树为多个逻辑分类节点形成的树形结构,将任意逻辑分类节点表示为:逻辑分类节点node
ij
,代表逻辑分类层次树中第i层第j个逻辑分类节点;通过逻辑分类节点配置控件,对逻辑分类节点node
ij
进行配置,得到逻辑分类节点node
ij
的配置信息,具体为:定义逻辑分类节点node
ij
的逻辑分类节点名称;配置逻辑分类节点node
ij
的父级逻辑分类节点名称;向该逻辑分类节点node
ij
绑定元数据,所绑定的元数据属于该逻辑分类节点node
ij
,但不属于该逻辑分类节点node
ij
的子节点;因此,所述逻辑分类节点node
ij
的配置信息包括逻辑分类节点名称、父级逻辑分类节点名称和绑定的元数据;步骤4,通过数据角色管理模块,建立数据角色列表;所述数据角色列表包括多条数据角色;通过数据角色配置控件,对每条数据角色进行配置,具体为:定义数据角色的名称;定义数据角色的说明描述信息;定义数据角色的操作权限;所述操作权限包括:元数据访问权限、元数据对应的源数据预览权限、元数据对应的源数据下载权限;向每条数据角色绑定一个或多个逻辑分类节点;向每条数据角色绑定一个或多个用户id;步骤5,当接收到用户的数据访问请求时,从所述数据访问请求中获取用户id;基于用户id检索所述数据角色列表,获得与所述用户id绑定的每条数据角色,再从获得的每条数据角色中获得操作权限以及对应的逻辑分类节点;对于获得的每个逻辑分类节点,执行以下操作:基于获得的逻辑分类节点,在所述逻辑分类层次树中定位到所述逻辑分类节点,遍历所述逻辑分类节点及其所有子孙节点,获得遍历到的各个逻辑分类节点绑定的元数据,得到元数据集合,并将所述元数据集合与对应的操作权限绑定;然后,将获得的元数据集合作为当前用户被允许访问的范围,推送给用户界面;对于某条元数据,如果其操作权限为元数据访问权限,则仅允许访问该元数据;如果其操作权限为元数据对应的源数据预览权限,则:当该元数据被点击时,根据所述元数据属性中的源数据的存储路径,从所述源数据存储模块中读取到对应的源数据,并将所述源数据预览到界面;如果其操作权限为元数据对应的源数据下载权限,则:当该元数据被点击时,根据所述元数据属性中的源数据的存储路径,从所述源数据存储模块中读取到对应的源数据,并将所述源数据下载给用户。2.根据权利要求1所述的一种基于逻辑分类和数据角色控制的数据访问方法,其特征在于,通过逻辑分类节点配置控件,对逻辑分类节点node
ij
进行配置,还包括:所述逻辑分类节点配置控件,包括新建逻辑分类节点子控件、编辑逻辑分类节点子控件、删除逻辑分类节点子控件和翻译逻辑分类节点子控件;所述新建逻辑分类节点子控件,用于在所述逻辑分类层次树中新建立逻辑分类节点,
方法为:设定新建立的逻辑分类节点的属性,包括:设定新建立的逻辑分类节点的名称、父级逻辑分类节点名称、绑定的元数据、在同一层的兄弟逻辑分类节点的次序号,该新建立的逻辑分类节点的缩略图;同时,更新同一层的其他兄弟逻辑分类节点的次序号;编辑逻辑分类节点子控件,用于对已建立的逻辑分类节点的属性进行编辑;删除逻辑分类节点子控件,用于删除已建立的逻辑分类节点及其子孙节点,同时更新同一层的兄弟逻辑分类节点的次序号;翻译逻辑分类节点子控件,用于向已建立的逻辑分类节点添加翻译信息。3.根据权利要求1所述的一种基于逻辑分类和数据角色控制的数据访问方法,其特征在于,向该逻辑分类节点node
ij
绑定元数据,具体为:所述逻辑分类节点配置控件包括元数据绑定子控件,当针对逻辑分类节点node
ij
触发元数据绑定子控件时,所述元数据绑定子控件,向所述逻辑分类节点node
ij
绑定元数据,方法为:所述元数据绑定子控件,调用并打开元数据绑定界面;读取所述元数据列表中的各条元数据,并将各条所述元数据显示到所述元数据绑定界面;当接收到用户通过元数据绑定界面输入的关键词时,过滤所述元数据,得到与所述关键词关联的多条元数据,并将与所述关键词关联的多条元数据绑定到所述逻辑分类节点node
ij
。4.根据权利要求1所述的一种基于逻辑分类和数据角色控制的数据访问方法,其特征在于,还包括:设置缓存服务器,所述缓存服务器将所述元数据列表、所述逻辑分类层次树和所述数据角色列表加载到缓存池中;当接收到用户的数据访问请求时,从所述数据访问请求中获取用户id;将用户id作为请求参数发送给所述缓存服务器;所述缓存服务器从所述缓存池中检索到对应的数据角色,再获得操作权限以及对应的逻辑分类节点;再根据获得的逻辑分类节点,得到元数据集合,然后,将获得的元数据集合作为当前用户被允许访问的范围,推送给用户界面。5.根据权利要求1所述的一种基于逻辑分类和数据角色控制的数据访问方法,其特征在于,还包括:特殊元数据绑定控件,用于向用户id直接绑定选定的多条元数据,赋与用户id对绑定的元数据的访问权限。
技术总结
本发明提供一种基于逻辑分类和数据角色控制的数据访问方法,包括以下步骤:通过源数据存储模块,存储多条源数据;构建元数据列表;建立逻辑分类层次树;建立数据角色列表;处理用户的数据访问请求。本发明建立逻辑分类层次树和数据角色列表,并且,数据角色列表中的数据角色,与逻辑分类层次树中的逻辑分类节点具有映射关系,从而能够加快查找到用户可访问的源数据范围,提高了用户对源数据访问的效率。另外,具有逻辑分类层次树和数据角色列表易更新维护的优点。新维护的优点。新维护的优点。
技术研发人员:杨晓娟 郭学军 李新
受保护的技术使用者:中国科学院青藏高原研究所
技术研发日:2023.07.06
技术公布日:2023/10/7
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
