一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

服务访问方法和装置、系统、设备、介质与流程

2022-07-16 14:10:59 来源:中国专利 TAG:


1.本发明涉及数据传输技术领域,特别涉及一种服务访问方法和装置、系统、设备、介质。


背景技术:

2.在客户端-服务端的架构的应用场景中,很多情况都采用https的传输方式。而使用https的传输方式需要ca机构签发的证书,然后通过域名访问。而有些服务器可以提供至少两种基于客户端-服务端的服务,所以需要至少两个域名进行相应的访问,因而就需要至少两个证书。然而,ca证书由ca机构颁发,每一个证书都需要支付一定的费用,所需要的证书越多,成本也越高。


技术实现要素:

3.本发明提供了一种服务访问方法和装置、系统、设备、介质,能够减少所需的ca证书,降低成本。
4.第一方面,本发明一个实施例提供一种服务访问方法,所述方法由客户端执行,所述方法包括:
5.在接收到用户对应用系统的第一访问请求时,确定对所述用户是否进行过用户认证;其中,所述第一访问请求为对所述应用系统中任一页面的访问请求;
6.若未进行过用户认证或者认证未通过,则获取所述第一访问请求中的域名;
7.根据所述域名,生成第二访问地址;其中,所述第二访问地址不同于所述第一访问请求中的第一访问地址;
8.生成包括所述第二访问地址的第二访问请求,并将所述第二访问请求发送至反向代理服务器,以使所述反向代理服务器根据所述第二访问地址将所述第二访问请求发送至所述应用系统的认证服务器,使得所述认证服务器向所述客户端提供用户认证服务。
9.第二方面,本发明一个实施例提供一种服务访问方法,所述方法由反向代理服务器执行,所述方法包括:
10.确定客户端发送来的访问请求是第二访问请求;
11.根据解析出的所述第二访问请求中的第二访问地址,将所述第二访问请求发送至所述应用系统的认证服务器,使得所述认证服务器向所述客户端提供用户认证服务;
12.其中,所述第二访问地址不同于客户端接收到的第一访问请求中的第一访问地址,且所述第二访问地址是根据第一访问请求中的域名生成的,所述第一访问请求为对所述应用系统中任一页面的访问请求。
13.第三方面,本发明一个实施例提供一种服务访问装置,所述装置为客户端上的装置,所述装置包括:
14.一个认证确定模块,用于在接收到用户对应用系统的第一访问请求时,确定对所述用户是否进行过用户认证;其中,所述第一访问请求为对所述应用系统中任一页面的访
问请求;
15.一个域名获取模块,用于若未进行过用户认证或者认证未通过,则获取所述第一访问请求中的域名;
16.一个地址生成模块,用于根据所述域名,生成第二访问地址;其中,所述第二访问地址不同于所述第一访问请求中的第一访问地址;
17.一个请求生成模块,用于生成包括所述第二访问地址的第二访问请求,并将所述第二访问请求发送至反向代理服务器,以使所述反向代理服务器根据所述第二访问地址将所述第二访问请求发送至所述应用系统的认证服务器,使得所述认证服务器向所述客户端提供用户认证服务。
18.第四方面,本发明一个实施例提供一种服务访问装置,所述装置为反向代理服务器上的装置,所述装置包括:
19.一个请求确定模块,用于确定客户端发送来的访问请求是第二访问请求;
20.一个请求发送模块,用于根据解析出的所述第二访问请求中的第二访问地址,将所述第二访问请求发送至所述应用系统的认证服务器,使得所述认证服务器向所述客户端提供用户认证服务;其中,所述第二访问地址不同于客户端接收到的第一访问请求中的第一访问地址,且所述第二访问地址是根据第一访问请求中的域名生成的,所述第一访问请求为对所述应用系统中任一页面的访问请求。
21.第五方面,本发明一个实施例提供一种服务访问系统,包括至少一个客户端和至少一个反向代理服务器;其中:
22.所述至少一个客户端,用于在接收到用户对应用系统的第一访问请求时,确定对所述用户是否进行过用户认证;其中,所述第一访问请求为对所述应用系统中任一页面的访问请求;若未进行过用户认证或者认证未通过,则获取所述第一访问请求中的域名;根据所述域名,生成第二访问地址;其中,所述第二访问地址不同于所述第一访问请求中的第一访问地址;生成包括所述第二访问地址的第二访问请求,并将所述第二访问请求发送至反向代理服务器;
23.所述至少一个反向代理服务器用于:确定客户端发送来的访问请求是第二访问请求;根据解析出的所述第二访问请求中的第二访问地址,将所述第二访问请求发送至所述应用系统的认证服务器,使得所述认证服务器向所述客户端提供用户认证服务;其中,所述第二访问地址不同于客户端接收到的第一访问请求中的第一访问地址,且所述第二访问地址是根据第一访问请求中的域名生成的,所述第一访问请求为对所述应用系统中任一页面的访问请求。
24.第六方面,本发明一个实施例提供一种计算设备,该装置包括:至少一个存储器和至少一个处理器;
25.所述至少一个存储器,用于存储机器可读程序;
26.所述至少一个处理器,用于调用所述机器可读程序,执行第一方面或第二方面提供的方法。
27.第七方面,本发明实施例提供一种计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行第一方面或第二方面提供的方法。
28.本发明实施例提供的服务访问方法和装置、系统、设备、介质,在接收到用户对应用系统的第一访问请求时,确定对所述用户是否进行过用户认证;若未进行过用户认证或者认证未通过,则获取所述第一访问请求中的域名;根据所述域名,生成第二访问地址;生成包括所述第二访问地址的第二访问请求,并将所述第二访问请求发送至反向代理服务器,这样所述反向代理服务器根据所述第二访问地址将所述第二访问请求发送至所述应用系统的认证服务器,使得所述认证服务器向所述客户端提供用户认证服务。由于本发明实施例中第二访问请求中的第二访问地址也是基于第一访问请求中的域名而成的,即基于同一个域名而生成两个不同的访问地址,即在需要访问两个提供不同服务的服务器时,仅需要一个域名就可以,不需要申请两个域名,这样可以减少ca证书的费用,也减少了由于ca证书的配置、运维成本。
附图说明
29.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以基于这些附图获得其他的附图。
30.图1是本发明一个实施例中的服务访问方法适用的系统架构图;
31.图2是本发明一个实施例中服务访问方法的流程示意图;
32.图3是本发明另一个实施例中服务访问方法的流程示意图;
33.图4是本发明一个实施例中服务访问装置的结构框图;
34.图5是本发明另一个实施例中服务访问装置的结构框图。
35.附图标记说明:
36.10客户端20反向代理服务器30认证服务器40前端服务器s110~s140步骤s210~s220步骤100客户端上的服务访问装置110认证确定模块120域名获取模块130地址生成模块140请求生成模块200反向代理服务器上的服务访问装置210请求确定模块220请求发送模块
具体实施方式
37.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例
中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
38.为了方便对本说明书提供的方法进行理解,首先对本说明书所涉及和适用的系统架构进行描述。如图1中所示,该系统架构中主要包括四个网络节点:客户端10、反向代理服务器20、认证服务器30以及前端服务器40。
39.其中,客户端10安装并运行于终端设备中,终端设备可以包括但不限于诸如:智能移动终端、pc(个人计算机)等。其中,智能移动设备可以包括诸如手机、平板电脑、笔记本电脑、pda(个人数字助理)等。客户端可以是网页版的客户端,例如,浏览器,也可以是app,本发明实施例提供的方案尤其适合网页版的客户端。用户可以通过客户端访问认证服务器、前端服务器,以使认证服务器提供相应的认证服务,前端服务器提供相应的前端业务服务。该客户端与下文中的应用系统相对应,即客户端为该应用系统的客户端。
40.其中,反向代理服务器20的作用是区分不同的访问请求,进而将不同的访问请求转发至不同的服务器上,例如,认证服务器和前端服务器。反向代理服务器可以是单一服务器,也可以是多个服务器构成的服务器群组。反向代理服务器除了进行访问请求区分和转发之外,还可以判断访问请求是否符合预设要求,例如,访问请求是http请求还是https请求,如果是http请求的话需要将http请求重写为https请求,重写之后再进行转发,以增加数据传输的安全性。
41.其中,认证服务器30的作用是提供用户认证服务,所谓的用户认证是对用户的身份进行验证,只有用户认证通过的用户才能访问应用系统中的数据。当然不同的用户还可以有不同的权限,例如,有的用户的权限比较高,这样该用户可以在应用系统中执行较多的操作,而有的用户的权限比较低,这样该用户可以在应用系统中执行较少的操作。
42.其中,前端服务器40的作用是提供数据的展示、操作等服务,用户能够在应用系统的客户端进行各种操作,客户端能够根据用户的操作在页面中进行对应的反馈,这都是由前端服务器实现的。
43.可理解的是,认证服务器、前端服务器可以是单一服务器,也可以是多个服务器构成的服务器群组。而且,认证服务器、前端服务器为应用系统中提供两种不同服务的服务器。
44.第一方面,基于以上系统架构,本发明一个实施例提供一种服务访问方法,所述方法由客户端执行,例如,由浏览器执行。参见图2,本实施例提供的服务访问方法包括如下步骤s110~s140:
45.s110、在接收到用户对应用系统的第一访问请求时,确定对所述用户是否进行过用户认证;其中,所述第一访问请求为对所述应用系统中任一页面的访问请求;
46.举例来说,一个用户在浏览器上输入需要访问网站的域名,即产生了用户对该网站的主页面的第一访问请求,此时浏览器会对该用户是否进行过用户认证进行判断,如果没有进行过用户认证,则此时浏览器的页面会跳转到认证页面,即浏览器重定向到认证页面,以使用户输入相关的认证信息。如果经过判断发现用户进行了认证,则不需要再进行用户认证,而是直接在浏览器上展示用户想要访问的网站的主页面。
47.可理解的是,一个网站会有很多的页面,用户可以在不同的页面上浏览到不同的
信息、进行不同的操作处理等,用户可以输入网站的域名,进而访问网站的主页面,也可以输入网站中某一页面的地址,进而访问该页面。其中,网站中任一页面的地址中均包括该网站的域名。
48.其中,上述第一访问请求可以是对应用系统的任一页面的访问请求。其中应用系统可以但不限于是siemens predictive analysis系统,简称为siepa系统,中文为是西门子预测性运维系统。该系统基于工业人工智能技术和西门子深耕工业积淀的行业知识,通过预测预警模块和智能排查诊断模块,对设备运行风险、故障诊断及维护策略进行判断,并给出推荐方案。可以理解为该系统为客户提供了一个分析模板,客户将工厂的实际状态和行业知识映射到该分析模板中固化成模型,进而应用到具体业务场景中。同时,该系统还可以随着新需求不断升级迭代,实现对人工智能模型的全生命周期管理,形成持续的闭环。
49.进一步的,siepa系统有两个独立的应用服务:认证服务keycloak和前端业务服务pd-angular2。认证服务keycloak可以为用户提供认证服务,当然也可以进行授权服务,认证服务keycloak基于oauth2协议实现。前端业务服务pd-angular2可以为用户提供在浏览器上的各种数据的展示、操作等服务,即前端业务服务。
50.针对认证服务keycloak,用户在访问siepa系统时,该系统要先对用户做一些认证(例如,用户名、密码等),认证通过之后才能进入到系统里面。登录之后会显示用户的个人信息和系统的数据。如果别人不知道某个用户的用户名、密码,那么别人是无法看到这个用户的个人信息的和相应的系统数据的。此外,siepa系统分为多种权限,不同权限的用户可以看到不同的数据以及可以进行不同的页面操作(查看、修改、删除等),这种服务称之为授权。认证服务keycloak除了提供认证服务之外,还可以提供授权服务。
51.针对前端业务服务pd-angular2,是基于angular技术或者typescript技术的做前端展示的服务。在angular技术中集成了typescript技术。由于siepa系统最终在客户端设备上呈现的是一个网页版的应用程序,可以通过具体的网址访问到siepa系统,在页面上展现各种数据以及在页面上的各种操作(例如,鼠标点击某个按钮),数据的展示和页面的操作都是通过angular技术来实现的。
52.目前,在浏览器和万维网服务器之间一般采用http协议进行数据传输,http协议即hyper text transfer protocol,中文为超文本传输协议。http协议工作于客户端-服务端架构上。浏览器作为http客户端通过url向http服务器即web服务器发送所有请求。web服务器根据接收到的请求后,向客户端发送响应信息。http协议虽然使用极为广泛,但是却存在不小的安全缺陷,主要是其数据采用明文传送,且缺乏对消息完整性的检测,而这两点恰好是网络支付、网络交易等新兴应用中安全方面最需要关注的。https协议是由http加上tls/ssl协议构建的可进行加密传输、身份认证的网络协议,主要通过数字证书、加密算法、非对称密钥等技术完成互联网数据传输加密,实现互联网传输安全保护。siepa系统开始时采用http的方式进行数据传输,后面为了保证数据传输的安全修改为https的方式。而使用https的方式需要数字证书机构(即ca机构)签发的证书,然后通过域名访问。由于siepa系统提供了两个服务angular和keycloak,这两个服务都可以通过前端的浏览器进行访问,即需要两个域名,两个域名则需要两个ca证书,每一个ca证书都需要一定的费用,而且在使用ca证书时需要专业的人员进行相关的配置,因此数字证书的数量越多,证书支付费用越高、运维成本也越高。
53.故,本发明实施例所提供的方法所针对的应用系统为能够至少提供认证服务和前端业务服务的系统,而且目前不同的服务需要不同的ca证书这一现状。
54.在具体实施时,s110中确定对所述用户是否进行过用户认证的过程可以包括:查找在接收到第一访问请求前的预设时间段内的日志信息,通过日志信息判断是否进行过用户认证操作以及认证是否通过。其中,预设时间段,例如,在接收到第一访问请求前的5分钟之内。
55.也就是说,,s110中所述确定对所述用户是否进行过用户认证,可以包括:获取在接收到所述第一访问请求的时刻之前的预设时间段内的客户端操作日志信息;根据所述客户端操作日志信息,确定对所述用户是否进行过认证;若进行过认证则确定认证是否通过。
56.s120、若未进行过用户认证或者认证未通过,则获取所述第一访问请求中的域名;
57.可理解的是,如果经过判断用户没有进行过用户认证,则此时需要进行用户认证。所以在s120中获取第一访问请求中的域名。
58.其中,在第一访问请求中包含待访问页面的地址,该地址称为第一访问地址,在第一访问地址中包含应用系统的域名。例如,针对某个应用系统的主页面的第一访问请求中的第一访问地址为:https://domainnamea,domainnamea为该应用系统的域名。
59.其中,应用系统的认证服务和前端业务服务可以由同一个服务器设备提供,也可以由不同的服务器设备提供,当然也可以由相同或不同的服务器集群提供。即,认证服务器为提供认证服务的服务器,前端服务器为提供前端业务服务的服务器,认证服务器和前端服务器可以为同一个服务器或不同的服务器,也可以是相同的服务器集群或者不同的服务器集群。
60.s130、根据所述域名,生成第二访问地址;其中,所述第二访问地址不同于所述第一访问请求中的第一访问地址;
61.在s130中,根据在第一访问请求的第一访问地址中的域名生成第二访问地址,由于此时需要进行用户认证,则第二访问地址是认证服务器的地址,第二访问地址不同于上述第一访问地址,但是由于第二访问地址也是基于域名生成的,即第二访问地址和第一访问地址均是基于同一个域名而生成的两个不同的地址。
62.可见,由于本发明实施例中基于同一个域名而生成两个不同的访问地址,即在需要访问两个提供不同服务的服务器时,仅需要一个域名就可以,不需要申请两个域名,这样可以减少ca证书的费用,也减少了由于ca证书的配置、运维成本。
63.在具体实施时,s130具体可以包括:根据所述域名和预设标记,生成包含所述域名和所述预设标记的第二访问地址;其中,所述预设标记用于使所述反向代理服务器根据所述预设标记对接收到的访问请求进行区分。
64.也就是说,在第二访问地址中除了应用系统的域名之外,还包括预设标记。该预设标记可以保存在反向代理服务器中,这样反向代理服务器在接收到访问请求时,可以通过访问地址中是否包含预设标记而判断访问请求是第一访问请求还是第二访问请求。具体的,如果在访问请求的访问地址中包含预设标记,则说明该访问请求为第二访问请求,访问请求中的访问地址为第二访问地址,此时反向代理服务器会将第二访问请求发送给认证服务器。而如果在访问请求的访问地址中不包括预设标记,则说明该访问请求为第一访问请求,该访问请求中的访问地址为第一访问地址,此时反向代理服务器会将第一访问请求发
送给前端服务器。可见,反向代理服务器会根据访问请求中是否包含预设标记而进行不同的路由转发。
65.进一步的,还可以规定预设标记在访问地址中的位置以及具体采用何种预设标记。例如,所述预设标记可以包括设置在所述域名之后且与所述域名相邻的预设字符串。
66.举例来说,在接收到第一访问地址为https://domainnamea/xx的第一访问请求后,可知用户想要访问域名为domainnamea的应用系统中的某个页面。由于经过判断发现用户没有进行过认证,此时生成的第二访问地址可以为https://domainnamea/auth,进而依据该第二访问地址生成第二访问请求发送给反向代理服务器,当反向代理服务器接收到第二访问请求时,经过分析得知,在域名domainnamea之后且与该域名相邻的位置上具有预设字符串auth,则直接将第二访问请求发送给认证服务器。其中,https://domainnamea为应用系统的主页面,https://domainnamea/xx为应用系统中的某个页面。
67.s140、生成包括所述第二访问地址的第二访问请求,并将所述第二访问请求发送至反向代理服务器,以使所述反向代理服务器根据所述第二访问地址将所述第二访问请求发送至所述应用系统的认证服务器,使得所述认证服务器向所述客户端提供用户认证服务。
68.可理解的是,在s140中,基于s130生成的第二访问地址生成第二访问请求,进而将第二访问请求发送给反向代理服务器,这样反向代理服务器会将第二访问请求发送给认证服务器,这样认证服务器会提供用户认证服务,即将浏览器重定向到认证页面,以便用户在认证页面输入认证信息,进而实现对用户的身份认证。
69.在现有技术中除了采用至少两个ca证书之外,在浏览器和后台提供服务的服务器之间没有设置反向代理服务器,即将反向代理服务器和后台提供服务的服务器的功能混合在一起,分工不明确,难以维护,在出现问题时也不好定位。
70.然而,本发明实施例中将反向代理服务器和后台提供服务的服务器的功能分开来,利用反向代理服务器区分不同的访问请求,进而将不同的访问请求转发给不同的服务器,具有分工明确、易于维护、在出现问题时便于定位的优点。
71.在具体实施时,本发明实施例提供的方法还可以包括:
72.若进行过用户认证且认证通过,则将所述第一访问请求发送至所述反向代理服务器,以使所述反向代理服务器根据所述第一访问地址将所述第一访问请求发送至所述应用系统的前端服务器,使得所述前端服务器向所述客户端提供前端业务服务。
73.也就是说,如果用户进行过认证,则不需要浏览器进行重定向,浏览器直接将第一访问请求发送给反向代理服务器,而反向代理服务器经过判断,在第一访问请求的第一访问地址中不包含预设标记,此时反向代理服务器会直接将第一访问请求发送给前端服务器。
74.可理解的是,在现有技术中,如果想通过域名进行访问两个不同的服务,则需要配置两个域名和端口,进而需要两套数字证书来实现。而在本发明实施例中只需要一个域名和端口就可以实现对两个不同服务的访问,即需要一套数字证书。即本发明实施例通过一个域名可以实现对两个服务的访问。
75.可理解的是,本发明实施例中的客户端不仅限于上述浏览器,还可以是app,即本发明实施例中的客户端为各种形式的客户端。
76.本发明实施例提供的服务访问方法,在接收到用户对应用系统的第一访问请求时,确定对所述用户是否进行过用户认证;若未进行过用户认证或者认证未通过,则获取所述第一访问请求中的域名;根据所述域名,生成第二访问地址;生成包括所述第二访问地址的第二访问请求,并将所述第二访问请求发送至反向代理服务器,这样所述反向代理服务器根据所述第二访问地址将所述第二访问请求发送至所述应用系统的认证服务器,使得所述认证服务器向所述客户端提供用户认证服务。由于本发明实施例中第二访问请求中的第二访问地址也是基于第一访问请求中的域名而成的,即基于同一个域名而生成两个不同的访问地址,即在需要访问两个提供不同服务的服务器时,仅需要一个域名就可以,不需要申请两个域名,这样可以减少ca证书的费用,也减少了由于ca证书的配置、运维成本。
77.第二方面,本发明实施例提供一种服务访问方法,参见图3,该方法由反向代理服务器执行,所述方法包括如下步骤s210~s220:
78.s210、确定客户端发送来的访问请求是第二访问请求;
79.s220、根据解析出的所述第二访问请求中的第二访问地址,将所述第二访问请求发送至所述应用系统的认证服务器,使得所述认证服务器向所述客户端提供用户认证服务;
80.其中,所述第二访问地址不同于客户端接收到的第一访问请求中的第一访问地址,且所述第二访问地址是根据第一访问请求中的域名生成的,所述第一访问请求为对所述应用系统中任一页面的访问请求。
81.举例来说,接收到网页版客户端发送来的访问请求后,经过判断,所接收到的访问请求为第二访问请求,此时将第二访问请求发送至认证服务器,当认证服务器接收到第二访问请求后,会进行反馈,进而使得网页版客户端重定向到认证页面。
82.进一步的,在s210中,反向代理服务器确定客户端发送来的访问请求是第二访问请求,具体可以包括:若所述访问请求中的访问地址包括预设标记,则所述访问请求为所述第二访问请求。
83.也就是说,在反向代理服务器中预先存储有预设标记,当反向代理服务器在接收到访问请求时,可以判断访问请求的访问地址中是否包含预设标记,从而区分第一访问请求和第二访问请求。
84.在具体实施时,可以对预设标记进行进一步限定,防止出现区分错误的情况,例如,规定预设标记在第二访问地址中的位置为域名之后,且为预设字符串。
85.当然,针对接收到的访问请求为第一访问请求的情况,此时上述方法可以进一步包括:当确定客户端发送来的访问请求是第一访问请求时,根据所述第一访问请求中的第一访问地址将所述第一访问请求发送至所述应用系统的前端服务器,使得所述前端服务器向所述客户端提供前端业务服务。
86.也就是说,如果接收到的是第一访问请求,则将第一访问请求发送给前端服务器,这样前端服务器在接收到第一访问请求时会提供对应的前端业务服务。
87.在具体实施时,反向代理服务器在将访问请求在将所述第二访问请求发送至所述应用系统的认证服务器之前,还可以判断所述访问请求是否为http请求;若是,则将所述访问请求重写为https请求。
88.也就是说,在将第二访问请求发送至认证服务器之前,对第二访问请求是否为
http请求进行判断,如果属于http请求,则将第二访问请求重写为https请求,这样可以提高数据传输的安全性。
89.实际上,不仅是针对第二访问请求进行如上判断和处理,针对第一访问请求也进行如上的判断和处理,即,反向代理服务器在将访问请求发送至对应的服务器之前,需要判断访问请求是否为http请求,如果是,则重写为https请求,进而将重写的请求发送至对应的服务器。
90.举例来说,反向代理服务器为了实现其区分不同的访问请求进行转发的功能,可以在反向代理服务器上进行相关的配置。例如,在反向代理服务器中对认证服务器的地址进行配置,例如,将认证服务器的地址设置为https://service-iam-keycloak:8080/auth,也就是说,如果接收到第二访问请求时,反向代理服务器会将第二访问请求转发到地址为该地址对应的认证服务器中。除此之外,还会配置客户端的所有ip地址集合,这样反向代理服务器只接受该集合内的ip地址的客户端发送来的访问请求。还可以配置端口、缓存区的大小等信息。再例如,配置前端服务器的地址,例如,将前端服务器的地址配置为https://pd-angular2:80,如果反向代理服务器发现在访问请求中不含有预设标记,则将访问请求发送到前端服务器的地址。还会对所支持的http版本进行配置,例如支持http1.1。还可以配置服务器向客户端推信息的技术进行配置,例如,配置为采用websocket技术等。
91.可理解的是,本实施例提供的方法中,将反向代理服务器和后台的服务器分离开来,由反向代理服务器区分接收到的访问请求是第一访问请求还是第二访问请求,进而根据不同的请求进行不同的路由转发,从而将不同的访问请求转发到不同的服务器,具有分工明确、易于维护、在出现问题时便于定位的优点。
92.第三方面,本发明实施例提供一种服务访问装置,所述装置为客户端上的装置,该装置与第一方面提供的方法相对应。参见图4,该装置100包括:
93.一个认证确定模块110,用于在接收到用户对应用系统的第一访问请求时,确定对所述用户是否进行过用户认证;其中,所述第一访问请求为对所述应用系统中任一页面的访问请求;
94.一个域名获取模块120,用于若未进行过用户认证或者认证未通过,则获取所述第一访问请求中的域名;
95.一个地址生成模块130,用于根据所述域名,生成第二访问地址;其中,所述第二访问地址不同于所述第一访问请求中的第一访问地址;
96.一个请求生成模块140,用于生成包括所述第二访问地址的第二访问请求,并将所述第二访问请求发送至反向代理服务器,以使所述反向代理服务器根据所述第二访问地址将所述第二访问请求发送至所述应用系统的认证服务器,使得所述认证服务器向所述客户端提供用户认证服务。
97.在一些实施例中,地址生成模块具体用于:根据所述域名和预设标记,生成包含所述域名和所述预设标记的第二访问地址;其中,所述预设标记用于使所述反向代理服务器根据所述预设标记对接收到的访问请求进行区分。
98.进一步的,所述预设标记包括设置在所述域名之后且与所述域名相邻的预设字符串。
99.在一些实施例中,认证确定模块具体用于:获取在接收到所述第一访问请求的时
刻之前的预设时间段内的客户端操作日志信息;根据所述客户端操作日志信息,确定对所述用户是否进行过认证;若进行过认证则确定认证是否通过。
100.在一些实施例中,该装置还可以包括:
101.一个第一发送模块,用于:若进行过用户认证且认证通过,则将所述第一访问请求发送至所述反向代理服务器,以使所述反向代理服务器根据所述第一访问地址将所述第一访问请求发送至所述应用系统的前端服务器,使得所述前端服务器向所述客户端提供前端业务服务。
102.可理解的是,本发明实施例提供的装置中有关内容的解释、具体实施方式、有益效果、举例等内容可以参见第一方面提供的方法中的相应部分,此处不再赘述。
103.第四方面,本发明实施例提供一种服务访问装置,所述装置为反向代理服务器上的装置,该装置与第二方面提供的方法相对应,参见图5,所述装置200包括:
104.一个请求确定模块210,用于确定客户端发送来的访问请求是第二访问请求;
105.一个请求发送模块220,用于根据解析出的所述第二访问请求中的第二访问地址,将所述第二访问请求发送至所述应用系统的认证服务器,使得所述认证服务器向所述客户端提供用户认证服务;其中,所述第二访问地址不同于客户端接收到的第一访问请求中的第一访问地址,且所述第二访问地址是根据第一访问请求中的域名生成的,所述第一访问请求为对所述应用系统中任一页面的访问请求。
106.在一些实施例中,请求确定模块具体用于:若所述访问请求中的访问地址包括预设标记,则所述访问请求为所述第二访问请求。
107.在一些实施例中,所述装置还包括:
108.一个第二发送模块,用于当确定客户端发送来的访问请求是第一访问请求时,根据所述第一访问请求中的第一访问地址将所述第一访问请求发送至所述应用系统的前端服务器,使得所述前端服务器向所述客户端提供前端业务服务。
109.在一些实施例中,所述装置还包括:
110.一个请求判断模块,用于在请求发送模块将所述第二访问请求发送至所述应用系统的认证服务器之前,判断所述访问请求是否为http请求;若是,则将所述访问请求重写为https请求。
111.可理解的是,本发明实施例提供的装置中有关内容的解释、具体实施方式、有益效果、举例等内容可以参见第二方面提供的方法中的相应部分,此处不再赘述。
112.第五方面,本发明实施例提供一种访问服务系统,包括至少一个客户端和至少一个反向代理服务器;其中:
113.所述至少一个客户端,用于在接收到用户对应用系统的第一访问请求时,确定对所述用户是否进行过用户认证;其中,所述第一访问请求为对所述应用系统中任一页面的访问请求;若未进行过用户认证或者认证未通过,则获取所述第一访问请求中的域名;根据所述域名,生成第二访问地址;其中,所述第二访问地址不同于所述第一访问请求中的第一访问地址;生成包括所述第二访问地址的第二访问请求,并将所述第二访问请求发送至反向代理服务器;
114.所述至少一个反向代理服务器用于:确定客户端发送来的访问请求是第二访问请求;根据解析出的所述第二访问请求中的第二访问地址,将所述第二访问请求发送至所述
应用系统的认证服务器,使得所述认证服务器向所述客户端提供用户认证服务;其中,所述第二访问地址不同于客户端接收到的第一访问请求中的第一访问地址,且所述第二访问地址是根据第一访问请求中的域名生成的,所述第一访问请求为对所述应用系统中任一页面的访问请求。
115.可理解的是,本发明实施例提供的系统中有关内容的解释、具体实施方式、有益效果、举例等内容可以参见第一方面和第二方面提供的方法中的相应部分,此处不再赘述。
116.第六方面,本发明一个实施例提供一种计算设备,该计算设备包括:至少一个存储器和至少一个处理器;所述至少一个存储器,用于存储机器可读程序;所述至少一个处理器,用于调用所述机器可读程序,执行第一方面或第二方面提供的方法。
117.可理解的是,本发明实施例提供的装置中有关内容的解释、具体实施方式、有益效果、举例等内容可以参见第一方面或第二方面提供的方法中的相应部分,此处不再赘述。
118.第七方面,本发明实施例提供一种计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行第一方面或第二方面提供的方法。
119.具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或cpu或mpu)读出并执行存储在存储介质中的程序代码。
120.在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
121.用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如cd-rom、cd-r、cd-rw、dvd-rom、dvd-ram、dvd-rw、dvd rw)、磁带、非易失性存储卡和rom。可选择地,可以由通信网络从服务器计算机上下载程序代码。
122.此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
123.此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展模块中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展模块上的cpu等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
124.可理解的是,本发明实施例提供的计算机可读介质中有关内容的解释、具体实施方式、有益效果、举例等内容可以参见第一方面或第二方面提供的方法中的相应部分,此处不再赘述。
125.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
126.本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、挂件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
127.以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献