1.本公开涉及计算机技术领域,具体涉及一种数据访问管理方法和系统。
背景技术:2.在例如云上展会的数据发布页面平台上,例如参展商或采购商的用户可以在数据发布页面平台中查询到数据信息,例如统计数据信息。用户在获取数据信息时,数据发布页面平台采用例如iframe的传统架构方式,具有数据泄露的风险。
技术实现要素:3.为了解决相关技术中的问题,本公开实施例提供一种数据访问管理方法和系统。
4.第一方面,本公开实施例中提供了一种数据访问管理方法。
5.具体地,所述数据访问管理方法,包括:请求获取步骤,通过第一服务器获取用户请求和用户权限信息并进行鉴权;
6.数据获取步骤,通过第二服务器根据所述用户请求和鉴权结果,从数据库中获取第一数据;
7.数据处理步骤,通过所述第二服务器处理所述第一数据以得到第二数据;
8.数据发布步骤,通过所述第一服务器发布所述第二数据。
9.结合第一方面,本公开在第一方面的第一种实现方式中,
10.所述数据处理步骤包括:通过所述第二服务器向所述第一服务器提供一组应用程序接口api,并且根据页面格式信息将所述第一数据组装成第二数据,发送至所述第一服务器。
11.结合第一方面的第一种实现方式,本公开在第一方面的第二种实现方式中,
12.所述数据发布步骤包括:通过所述第一服务器,根据所述鉴权结果和预设的发布配置信息,利用所述应用程序接口api发送所述用户请求并接收根据所述用户请求查询到的第二数据,发布所述查询到的第二数据。
13.结合第一方面、第一方面的第一种实现方式和第二种实现方式中的任一项,本公开在第一方面的第三种实现方式中,还包括:
14.显示步骤,根据显示配置信息,显示所述第一服务器发布的第二数据。
15.结合第一方面的第三种实现方式,本公开在第一方面的第四种实现方式中,
16.所述显示步骤包括:通过浏览器根据所述显示配置信息对所述第二数据进行渲染,显示渲染后的第二数据。
17.第二方面,本公开实施例中提供了一种数据访问管理系统。
18.具体地,所述数据访问管理系统,包括:第一服务器,第二服务器和数据库,其中,第一服务器获取用户请求和用户权限信息并进行鉴权;
19.第二服务器根据所述用户请求和鉴权结果,从数据库中获取第一数据;
20.所述第二服务器处理所述第一数据以得到第二数据;
21.所述第一服务器发布所述第二数据。
22.结合第二方面,本公开在第二方面的第一种实现方式中,
23.所述第二服务器处理所述第一数据以得到第二数据包括:
24.所述第二服务器向所述第一服务器提供一组应用程序接口api,并且根据页面格式信息将所述第一数据组装成第二数据,发送至所述第一服务器。
25.结合第二方面的第一种实现方式,本公开在第二方面的第二种实现方式中,
26.所述第一服务器发布所述第二数据包括:
27.所述第一服务器根据所述鉴权结果和预设的发布配置信息,利用所述应用程序接口api发送所述用户请求并接收根据所述用户请求查询到的第二数据,发布所述查询到的第二数据。
28.结合第二方面、第二方面的第一种实现方式和第二种实现方式中的任一项,本公开在第二方面的第三种实现方式中,还包括:
29.显示装置,用于根据显示配置信息,显示所述第一服务器发布的第二数据。
30.结合第二方面的第三种实现方式,本公开在第二方面的第四种实现方式中,
31.所述显示装置用于:通过浏览器根据所述显示配置信息对所述第二数据进行渲染,显示渲染后的第二数据。
32.根据本公开实施例提供的技术方案,通过数据访问管理方法,包括:请求获取步骤,通过第一服务器获取用户请求和用户权限信息并进行鉴权;数据获取步骤,通过第二服务器根据用户请求和鉴权结果,从数据库中获取第一数据;数据处理步骤,通过第二服务器处理第一数据以得到第二数据;数据发布步骤,通过第一服务器发布第二数据,从而对数据访问进行安全管控,防止数据泄露。
33.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
34.结合附图,通过以下非限制性实施方式的详细描述,本公开的其它特征、目的和优点将变得更加明显。在附图中:
35.图1a示出根据本公开实施例的传统页面发布方法的实施场景的示例性示意图;
36.图1b示出根据本公开实施例的传统页面发布方法的显示页面的示例性示意图;
37.图2a示出根据本公开实施例的数据访问管理方法的实施场景的示例性示意图;
38.图2b示出根据本公开另一实施例的数据访问管理方法的实施场景的示例性示意图;
39.图2c示出根据本公开实施例的数据访问管理方法的显示页面的示例性示意图;
40.图3示出根据本公开实施例的数据访问管理方法的流程图;
41.图4示出根据本公开另一实施例的数据访问管理方法的流程图;
42.图5示出根据本公开实施例的数据访问管理系统的结构框图;
43.图6示出根据本公开另一实施例的数据访问管理系统的结构框图。
具体实施方式
44.下文中,将参考附图详细描述本公开的示例性实施例,以使本领域技术人员可容易地实现它们。此外,为了清楚起见,在附图中省略了与描述示例性实施例无关的部分。
45.在本公开中,应理解,诸如“包括”或“具有”等的术语旨在指示本说明书中所公开的特征、数字、步骤、行为、部件、部分或其组合的存在,并且不欲排除一个或多个其他特征、数字、步骤、行为、部件、部分或其组合存在或被添加的可能性。
46.另外还需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
47.在本公开中,对用户信息或用户数据的获取均为经用户授权、确认,或由用户主动选择的操作。
48.例如糖酒会、婚纱会之类的云上展会可以帮助商家、企业在云上举办展览。在例如云上展会的数据发布页面平台上,例如参展商或采购商之类的用户可以关注数据发布页面平台中的数据信息,例如今天有多少人浏览了网页,页面浏览量等统计数据信息。这些数据信息可以生成统计表或图形,在页面显示出来,以供用户获取信息。传统数据发布页面平台采用例如iframe的架构方式,具有数据泄露的风险。
49.图1a示出根据本公开实施例的传统页面发布方法的实施场景的示例性示意图。
50.本领域普通技术人员可以理解,图1a示例性示出了数据访问管理方法的实施场景,而不构成对本公开的限制。
51.如图1a所示,在传统发布页面的实施场景中,采用iframe架构。当用户101获取数据信息时,通过浏览器102访问例如java服务器的发布服务器103。发布服务器103对用户101鉴权后,将页面服务器104的统一资源定位符(uniform resource locator,url)发送给浏览器102。浏览器102发送用户请求至页面服务器104,页面服务器104对数据库105进行查询,获取用户需要的数据信息。页面服务器104不鉴权,会造成页面服务器104的url直接暴露给浏览器102,导致数据泄露的风险。而如果页面服务器104也鉴权,则会导致发布服务器103和页面服务器104两次鉴权,增加用户访问延时,影响用户体验。
52.图1b示出根据本公开实施例的传统页面发布方法的显示页面的示例性示意图。
53.本领域普通技术人员可以理解,图1b示例性示出传统页面发布方法的显示页面的示意图,而不构成对本公开的限制。
54.如图1b所示,可以对观众数量进行统计,例如累积注册用户数、本周注册用户数、上周注册用户数、多展会观众数量等,但是图1a的架构会导致图1b所示页面上存在数据泄露。
55.因此,需要开发新的方案,在保证用户高效访问数据库,获取数据的同时,进行高效鉴权,防止数据泄露。
56.为了解决上述问题,本公开提出了一种数据访问管理方法和系统。
57.根据本公开的实施方式,通过一种数据访问管理方法,包括:请求获取步骤,通过第一服务器获取用户请求和用户权限信息并进行鉴权;数据获取步骤,通过第二服务器根据所述用户请求和鉴权结果,从数据库中获取第一数据;数据处理步骤,通过所述第二服务器处理所述第一数据以得到第二数据;数据发布步骤,通过所述第一服务器发布所述第二数据,从而对数据访问进行安全管控,防止数据泄露。
58.图2a示出根据本公开实施例的数据访问管理方法的实施场景的示例性示意图。
59.本领域普通技术人员可以理解,图2a示例性示出了数据访问管理方法的实施场景,而不构成对本公开的限制。
60.如图2a所示,在根据本公开实施例的数据访问管理方法的实施场景中,用户201通过浏览器202发送用户请求和用户权限信息至例如java服务器之类的第一服务器203。第一服务器203获取用户请求和用户权限信息并对用户权限信息鉴权后,将用户请求信息和鉴权结果通过第二服务器204的一组应用程序接口api发送至第二服务器204中的页面控制器2041。页面控制器2041根据用户请求信息和鉴权结果,通过api网关2042查询数据库205,获取第一数据。页面控制器2041根据页面组件206中的页面格式信息处理第一数据,例如对第一数据进行重组和格式调整,得到第二数据,并通过第二服务器204的应用程序接口api发送至第一服务器203。页面组件206可以是第二服务器204的一部分或独立于第二服务器204之外。第二数据还可以是根据用户请求,从第一数据中选择部分数据,再进行重组和格式调整而得到的数据。第一服务器203根据鉴权结果和例如js/css/html/api配置信息之类的发布配置信息发布第二数据。发布配置信息可以用于对第二数据的发布方式进行配置,例如根据需要,采用表格方式,或者直方图方式,或饼图方式,或其它方式对数据进行发布。浏览器202从第一服务器203得到第二数据后,根据显示配置信息进行渲染,将渲染后的页面向用户201显示出来。
61.在本公开的实施例中,与图1所示的传统架构中浏览器102同时访问发布服务器103和页面服务器104,从而在页面服务器104出可能产生数据泄露不同,图2中的浏览器202仅访问例如java服务器的第一服务器203,第一服务器203单次高效鉴权。而第二服务器204处于第一服务器203后端,仅可以通过第一服务器203鉴权后才能访问第二服务器204,第二服务器204的url并不直接暴露给浏览器202。这种方式同时实现了数据安全和仅使用单次鉴权的高效处理,在控制用户时延的前提下,提高数据安全性。
62.本领域普通技术人员可以理解,第一服务器203除了是java服务器,还可以是internet信息服务器(internet information server,iis),nginx等其它用于页面发布的服务器。浏览器202可以是ie浏览器、chrome浏览器等浏览器,本公开对此不作限定。
63.图2b示出根据本公开另一实施例的数据访问管理方法的实施场景的示例性示意图。
64.本领域普通技术人员可以理解,图2b示例性示出了数据访问管理方法的实施场景,而不构成对本公开的限制。
65.在图2b所示的数据访问管理方法的实施场景中,开发人员通过页面开发环境211设定例如js/css/html/api配置信息之类的发布配置信息212,并将发布配置信息212存储于发布配置存储器213中。对应于图2a,发布配置存储器213可以位于第二服务器204中(图2a中未示出发布配置存储213)。例如java服务器的第一服务器203从发布配置存储器213中获取发布配置信息212后,应用于第二数据并发布第二数据。浏览器202在渲染器2021中对第二数据进行渲染,并在用户页面2022中显示出来。
66.在本公开的实施例中,图2b中的第一服务器203、浏览器202可以分别与图2a中的第一服务器203、浏览器202相同。
67.图2c示出根据本公开实施例的数据访问管理方法的显示页面的示例性示意图。
68.本领域普通技术人员可以理解,图2c示例性示出了数据访问管理方法的显示页面,而不构成对本公开的限制。
69.如图2c所示,开发人员可以用柱形图、折线图等方式进行页面设置,从而方便地显示第二数据。而且采用图2a、图2b中的架构,有效避免了数据泄露。
70.图3示出根据本公开实施例的数据访问管理方法的流程图。
71.如图3所示,数据访问管理方法包括:步骤s301、s302、s303、s304。
72.在步骤s301中,通过第一服务器获取用户请求和用户权限信息并进行鉴权。
73.在步骤s302中,通过第二服务器根据用户请求和鉴权结果,从数据库中获取第一数据。
74.在步骤s303中,通过第二服务器处理第一数据以得到第二数据。
75.在步骤s304中,通过第一服务器发布第二数据。
76.在本公开的实施例中,步骤s301是请求获取步骤,步骤s302是数据获取步骤,步骤s303是数据处理步骤,步骤s304是数据发布步骤。
77.在本公开的实施例中,如图2a所示,第一服务器203获取用户请求和用户权限信息并对用户权限信息鉴权后,将用户请求信息和鉴权结果发送至第二服务器204中的页面控制器2041。第二服务器204根据用户请求信息和鉴权结果查询数据库205,获取第一数据。第二服务器204处理第一数据得到第二数据,并通过第一服务器203发布第一数据。在本公开的实施例中,第二服务器204根据页面格式信息处理第一数据得到第二数据,并通过第一服务器203发布第一数据。在本公开的实施例中,页面格式信息描述第二服务器将要提供至第一服务器的第二数据的页面格式,第一服务器将第二服务器提供的具有按照页面格式信息描述的页面格式的第二数据发布到浏览器。
78.根据本公开的实施方式,通过请求获取步骤,通过第一服务器获取用户请求和用户权限信息并进行鉴权;数据获取步骤,通过第二服务器根据用户请求和鉴权结果,从数据库中获取第一数据;数据处理步骤,通过第二服务器处理第一数据以得到第二数据;数据发布步骤,通过第一服务器发布第二数据,从而对数据访问进行安全管控,防止数据泄露。
79.在本公开的实施例中,数据处理步骤包括:通过第二服务器向第一服务器提供一组应用程序接口api,并且根据页面格式信息将第一数据组装成第二数据,发送至第一服务器。
80.在本公开的实施例中,如前所述,第二服务器204向第一服务器提供一组应用程序接口api。第二服务器204根据页面格式信息将第一数据组装成第二数据后,可以通过应用程序接口api将第二数据发送至第一服务器。
81.根据本公开的实施方式,通过处理步骤包括:通过第二服务器向第一服务器提供一组应用程序接口api,并且根据页面格式信息将第一数据组装成第二数据,发送至第一服务器,从而通过统一的应用程序接口api实现第一服务器203和第二服务器204的连接,防止第二服务器204的url直接暴露给浏览器202,防止数据泄露。
82.在本公开的实施例中,数据发布步骤包括:通过第一服务器,根据鉴权结果和预设的发布配置信息,利用应用程序接口api发送用户请求并接收根据用户请求查询到的第二数据,发布查询到的第二数据。
83.在本公开的实施例中,如图2a和图2b所示,例如java服务器的第一服务器203利用
鉴权结果和在发布配置存储213中存储的预设的例如js/css/html/api配置信息之类的发布配置信息212,利用应用程序接口api发送用户请求并接收根据用户请求查询到的第二数据,发布查询到的第二数据。
84.根据本公开的实施方式,通过数据发布步骤包括:通过第一服务器,根据鉴权结果和预设的发布配置信息,利用应用程序接口api发送用户请求并接收根据用户请求查询到的第二数据,发布查询到的第二数据,从而灵活配置第二数据的发布方式,实现良好的可视化效果。
85.图4示出根据本公开另一实施例的数据访问管理方法的流程图。
86.如图4所示,数据访问管理方法除了包括和图3相同的步骤s301、s302、s303、s304,还包括步骤s401。
87.在步骤s401中,根据显示配置信息,显示第一服务器发布的第二数据。
88.步骤s401是显示步骤。
89.如图2a和图2b所示,第二信息通过浏览器202显示给用户201。
90.根据本公开的实施方式,通过显示步骤,根据显示配置信息,显示第一服务器发布的第二数据,从而以可视化方式向用户显示第二信息。
91.在本公开的实施例中,显示步骤包括:通过浏览器根据显示配置信息对第二数据进行渲染,显示渲染后的第二数据。
92.在本公开的实施例中,如图2b所示,在浏览器202中,第二数据通过渲染器2021的渲染,在用户界面2022中显示。
93.根据本公开的实施方式,通过显示步骤包括:通过浏览器根据显示配置信息对第二数据进行渲染,显示渲染后的第二数据,从而获得良好的可视化效果。
94.图5示出根据本公开实施例的数据访问管理系统的结构框图。
95.如图5所示,数据访问管理系统500包括:第一服务器501、第二服务器502、数据库503。
96.在本公开的实施例中,第一服务器501获取用户请求和用户权限信息并进行鉴权;第二服务器502根据用户请求和鉴权结果,从数据库中获取第一数据;第二服务器502处理所述第一数据以得到第二数据;第一服务器501发布第二数据。
97.根据本公开的实施方式,通过数据访问管理系统,包括第一服务器,第二服务器和数据库,其中,第一服务器获取用户请求和用户权限信息并进行鉴权;第二服务器根据用户请求和鉴权结果,从数据库中获取第一数据;第二服务器处理所述第一数据以得到第二数据;第一服务器发布第二数据,从而对数据访问进行安全管控,防止数据泄露。
98.在本公开的实施例中,第二服务器处理第一数据以得到第二数据包括:第二服务器向第一服务器提供一组应用程序接口api,并且根据页面格式信息将第一数据组装成第二数据,发送至第一服务器。
99.根据本公开的实施方式,通过第二服务器处理第一数据以得到第二数据包括:第二服务器向第一服务器提供一组应用程序接口api,并且根据页面格式信息将第一数据组装成第二数据,发送至第一服务器,从而通过统一的应用程序接口api实现第一服务器和第二服务器的连接,防止第二服务器的url直接暴露给浏览器,防止数据泄露。
100.在本公开的实施例中,第一服务器发布第二数据包括:第一服务器根据鉴权结果
和预设的发布配置信息,利用应用程序接口api发送用户请求并接收根据用户请求查询到的第二数据,发布查询到的第二数据。
101.根据本公开的实施方式,通过第一服务器发布第二数据包括:第一服务器根据鉴权结果和预设的发布配置信息,利用应用程序接口api发送用户请求并接收根据用户请求查询到的第二数据,发布查询到的第二数据,从而灵活配置第二数据的发布方式,实现良好的可视化效果。
102.图6示出根据本公开另一实施例的数据访问管理系统的结构框图。
103.如图6所示,数据访问管理系统600除了包括和图5中相同的第一服务器501、第二服务器502、数据库503,还包括:显示装置601。
104.显示装置601,用于根据显示配置信息,显示第一服务器发布的第二数据。
105.根据本公开的实施方式,通过显示装置,用于根据显示配置信息,显示第一服务器发布的第二数据,从而以可视化方式向用户显示第二信息。
106.在本公开的实施例中,显示装置用于:通过浏览器根据显示配置信息对第二数据进行渲染,显示渲染后的第二数据。
107.根据本公开的实施方式,通过显示装置用于:通过浏览器根据显示配置信息对第二数据进行渲染,显示渲染后的第二数据,从而获得良好的可视化效果。
108.附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
109.描述于本公开实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过可编程硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
110.作为另一方面,本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中电子设备或计算机系统中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本公开的方法。
111.以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。