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

一种跨域单点登录方法、系统、鉴权服务器和可读介质与流程

2022-02-22 18:57:00 来源:中国专利 TAG:


1.本发明涉及网站登录领域,尤其涉及一种跨域单点登录方法、系统、鉴权服务器和可读介质。


背景技术:

2.现有的单点登录技术可以解决在相同域名下多个系统的问题,使得用户实现一次登录,即可访问多个web系统。
3.但是,绝大多数浏览器已经禁止跨域访问,所以若多个子系统的域名不一致,就会使得即使是同域名下的多个子系统之间也无法使用单点登录进行访问,给客户带来不便,造成体验不佳的结果。


技术实现要素:

4.鉴于上述现有技术的不足之处,本发明的目的之一在于提供一种跨域单点登录方法,能够实现无论两个子系统之间是否为相同域名,只要使用相同的鉴权服务器进行登录校验,就能实现单点登录。
5.本发明的目的之二在于提供一种跨域单点登录系统。
6.本发明的目的之三在于提供一种鉴权服务器。
7.本发明的目的之四在于提供一种计算机可读介质。
8.为了达到上述目的,本发明采取了以下技术方案:
9.一方面,本发明提供一种跨域单点登录方法,应用于鉴权服务器,包括:
10.响应于客户终端的第一请求数据,向所述客户终端发送第一反馈数据,以使客户终端根据所述第一反馈数据登录到第一资源服务器;所述第一请求数据包括用户登录数据和所述第一资源服务器的第一网址;所述第一反馈数据包括用户凭证、第一验证码;所述第一验证码基于所述用户登录数据和所述第一网址生成。
11.进一步的,所述的跨域单点登录方法,在所述客户终端登录到所述第一资源服务器过程中,所述登录方法还包括:
12.响应于第一资源服务器的第一校验请求数据,向所述第一资源服务器发送第一校验结果,以使所述第一资源服务器根据所述第一校验结果实现所述客户终端的登录成功与否;所述第一校验请求数据包括所述验证码,所述验证码为客户终端为实现登录到所述第一资源服务器而发送到所述第一资源服务器。
13.进一步的,所述的跨域单点登录方法,还包括:
14.响应于客户终端的第二请求数据,向所述客户终端发送第二反馈数据,以使客户终端根据所述第二反馈数据登录到第二资源服务器;所述第二请求数据包括所述用户凭证和所述第二资源服务器的第二网址;所述第二反馈数据包括第二验证码;所述第二验证码基于所述用户凭证和所述第二网址生成。
15.进一步的,所述的跨域单点登录方法,在所述客户终端登录到所述第二资源服务
器过程中,所述登录方法还包括:
16.响应于第二资源服务器的第二校验请求数据,向所述第二资源服务器发送第二校验结果,以使所述第二资源服务器根据所述第二校验结果实现所述客户终端的登录成功与否;所述第二校验请求数据包括所述验证码,所述验证码为客户终端为实现登录到所述第二资源服务器而发送到所述第二资源服务器。
17.进一步的,所述的跨域单点登录方法,在接收到所述第二请求数据后,还包括:
18.判定发送所述第一反馈数据与接收到所述第二请求数据之间的时间差值是否小于第一预定时间,若是则向客户终端发送所述第二反馈数据;若否,则向客户终端发送登录界面,所述第二资源服务器作为第一资源服务器。
19.进一步的,所述的跨域单点登录方法,客户终端在发送第二请求数据前,基于用户请求向第二资源服务器发送访问请求,向客户终端返回鉴权服务器的重定向网址,使客户终端收到鉴权服务器的重定向网址后向鉴权服务器发出第二请求数据;
20.所述第二反馈数据还包括第二网址,所述第二验证码拼接在所述第二网址后。
21.进一步的,所述的跨域单点登录方法,客户终端在发送第一请求数据前,基于用户请求向第一资源服务器发送访问请求,第一资源服务器校验用户未登录后,向客户终端返回鉴权服务器的重定向网址,使客户终端收到鉴权服务器的重定向网址后向鉴权服务器发出第一请求数据;
22.所述第一反馈数据还包括第一网址,所述第一验证码拼接在所述第一网址后;
23.所述客户终端在接收到所述第一反馈数据后,将所述用户凭证存储在cookie中。
24.另一方面,本发明提供一种使用前述任一所述的跨域单点登录方法的鉴权服务器,包括:
25.获取模块,用于接收客户终端的第一请求数据;所述第一请求数据包括用户登录数据和所述第一资源服务器的第一网址;
26.反馈模块,用于响应于客户终端的第一请求数据,向所述客户终端发送第一反馈数据,以使客户终端根据所述第一反馈数据登录到第一资源服务器;所述第一反馈数据包括用户凭证、第一验证码;所述第一验证码基于所述用户登录数据和所述第一网址生成。
27.另一方面,本发明提供一种跨域单点登录系统,包括:
28.客户终端;
29.前述所述的鉴权服务器;
30.两个以上资源服务器,其中客户终端首先请求登录的资源服务器为第一资源服务器,其余资源服务器为第二资源服务器;两个以上资源服务器通过所述鉴权服务器进行登录校验。
31.另一方面,本发明提供一种计算机存储介质,存储有计算机程序,所述计算机程序在被处理器执行时实现前述任一所述的跨域单点登录方法。
32.相较于现有技术,本发明提供的一种跨域单点登录方法、系统、鉴权服务器和可读介质,具有以下有益效果:
33.使用本发明提供的跨域单点登录方法,只要接收到客户终端发送的第一请求数据,就向所述客户终端发送第一反馈数据,在校验通过的情况下,客户终端就可以使用第一反馈数据登录第一资源服务器,同时所述第一验证码是基于第一资源服务器的第一网址得
到,仅能用于对第一资源服务器的登录,安全且方便。
34.使用本发明提供的跨域单点登录方法,在登录第二资源服务器时,不需要重新提供用户名和密码等数据,仅提供所述用户凭证和第二网址即可,方便快捷;基于此,本发明能够实现无论两个子系统之间是否为相同域名,只要使用相同的鉴权服务器进行登录校验,就能实现单点登录。
附图说明
35.图1是本发明提供的跨域单点登录方法中关于第一资源服务器登录的流程图;
36.图2是本发明提供的跨域单点登录方法中关于第二资源服务器登录的流程图;
37.图3是本发明提供的跨域单点登录方法的一种实施例的流程图;
38.图4是本发明提供的鉴权服务器的结构框图。
具体实施方式
39.为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
40.本领域技术人员应当理解,前面的一般描述和下面的详细描述是本发明的示例性和说明性的具体实施例,不意图限制本发明。
41.本文中术语“包括”,“包含”或其任何其他变体旨在覆盖非排他性包括,使得包括步骤列表的过程或方法不仅包括那些步骤,而且可以包括未明确列出或此类过程或方法固有的其他步骤。同样,在没有更多限制的情况下,以“包含...一个”开头的一个或多个设备或子系统,元素或结构或组件也不会没有更多限制,排除存在其他设备或其他子系统或其他元素或其他结构或其他组件或其他设备或其他子系统或其他元素或其他结构或其他组件。在整个说明书中,短语“在一个实施例中”,“在另一个实施例中”的出现和类似的语言可以但不一定都指相同的实施例。
42.除非另有定义,否则本文中使用的所有技术和科学术语具有与本发明所属领域的普通技术人员通常所理解的相同含义。
43.本发明提供一种跨域单点登录方法,应用于鉴权服务器,在本实施例中,所述鉴权服务器为同一域名下的多个子系统(即多个资源服务器)提供登录鉴权服务。
44.在其他实施例中,所述鉴权服务器还可以为不同域名的多个子系统(即多个资源服务器)提供登录鉴权服务,即多个资源服务器不属于同一域名,但是均使用所述鉴权服务器进行登录鉴权。
45.当客户终端想要登录某一资源服务器时,若该资源服务器为使用所述鉴权服务器进行登录鉴权的多个资源服务器中第一个接收客户终端登录请求的资源服务器时,该资源服务器作为第一资源服务器。
46.此时,具体流程为:
47.所述第一资源服务器就将鉴权服务器的登录鉴权网址发送到所述客户终端;
48.所述客户终端即可根据所述登录鉴权网址登录所述鉴权服务器,进而接收到鉴权服务器发送的登录界面,通过登录界面输入用户登录数据(包括用户名和密码等);
49.所述鉴权服务器执行本发明提供的跨域单点登录方法,以使客户终端使用第一验证码登录所述第一资源服务器。其中,所述第一验证码仅能校验一次,即所述第一验证码是根据第一资源服务器的网址对应生成,仅能实现客户终端应对第一资源服务器的登录,不能用于其他资源服务器的登录,具有极大的安全性。
50.在进一步的实施例中,客户终端在接收到所述鉴权服务器的第一反馈数据后,将第一反馈数据存储到关于所述鉴权服务器对应的缓存数据中,即实现只要是需要所述鉴权服务器进行登录鉴权时,就可以对第一反馈数据进行调用,实现快速登录其他资源服务器,提升用户体验。
51.所述跨域单点登录方法包括:
52.响应于客户终端的第一请求数据,向所述客户终端发送第一反馈数据,以使客户终端根据所述第一反馈数据登录到第一资源服务器;所述第一请求数据包括用户登录数据和所述第一资源服务器的第一网址;所述第一反馈数据包括用户凭证、第一验证码;所述第一验证码基于所述用户登录数据和所述第一网址生成。其中,所述用户登录数据包括用户名和用户密码和/或短信验证码等。
53.具体的,所述第一验证码的生成步骤包括:
54.所述鉴权服务器接收到所述用户登录数据后,验证是否通过,若是则生成带有用户编码的成功校验码(如succeed),进而将用户唯一标识(即用户名,例如admin)与第一网址整合生成第一验证码;若否,则返回验证不通过的失败校验码,反馈到用户终端。
55.以下,以多个资源服务器均使用鉴权服务器进行登录鉴权为例,进行详细说明,其中,存在两个或以上相同或不同域名下的资源服务器resource_server,每个所述资源服务器resource_server均使用鉴权服务器authorization_server进行登录鉴权,在客户终端准备登录的多个资源服务器resource_server中的第一个资源服务器为第一资源服务器resource1_server,其他资源服务器均为第二资源服务器resource2_server:
56.1)用户终端通过浏览器发送访问第一资源服务器resource1_server的请求,即准备打开第一资源服务器resource1_server的第一网址。
57.在进一步的实施例中,还可以是客户终端点击第一资源服务器resource1_server的网站首页上的登录按钮,则直接进入登录界面,所述登录界面为所述鉴权服务器authorization_server发送到所述客户终端中。
58.2)第一资源服务器resource1_server校验用户没登录后,便将其重定向至所述鉴权服务器authorization_server进行登录校验。即所述第一资源服务器resource1_server向所述客户终端发送所述鉴权服务器authorization_server的鉴权网址,客户终端打开所述鉴权网址,执行步骤3)。
59.3)客户终端向所述鉴权服务器authorization_server发送登录的请求,参数应包含第一资源服务器resource1_server的第一网址url1,以标明是哪个系统转发来的请求。
60.4)所述鉴权服务器authorization_server向所述客户终端返回登录页面。
61.5)客户终端接收用户填写的用户登录数据,即用户名和密码,并将其和第一资源服务器resource1_server的第一网址url1一并发送到所述鉴权服务器authorization_server进行校验。
62.6)所述鉴权服务器authorization_server校验用户名和密码无误后,在服务端存
储中本地创建第一鉴权数据节点session01,并返回浏览器第一反馈数据,第一反馈数据包括一个关于所述鉴权服务器authorization_server的用户凭证authorization_token和第一验证码authcode1。
63.7)客户终端的浏览器收到鉴权服务器authorization_server的反馈的第一反馈数据后,把所述用户凭证authorization_token保存在鉴权服务器authorization_server对应域名下的cookie中,并带上所述第一验证码authcode1访问第一资源服务器resource1_server的第一网址url1,进而实现针对第一资源服务器resource1_server的登录。在本实施例中,所述第一验证码authcode1,仅进行一次校验,极大提高网址登录的安全性。
64.在本实施例中,针对客户终端对于第一资源服务器resource1_server的登录,不做限定,只要鉴权服务器authorization_server通过了,则会向客户终端反馈了所述第一反馈数据,即证明已经鉴权通过,即具有登录第一资源服务器resource1_server的资格,能够实现登录;在鉴权不通过的情况下,鉴权服务器不会向客户终端反馈第一反馈数据。在登录第一资源服务器resource1_server时,本领域的技术人员可以根据需求选择适当的登录方法对第一资源服务器resource1_server进行登录。
65.使用本发明提供的跨域单点登录方法,只要接收到客户终端发送的第一请求数据,就向所述客户终端发送第一反馈数据,在校验通过的情况下,客户终端就可以使用第一反馈数据登录第一资源服务器,同时所述第一验证码是基于第一资源服务器的第一网址得到,仅能用于对第一资源服务器的登录,安全且方便。
66.进一步的,作为优选方案,本实施例中,在所述客户终端登录到所述第一资源服务器过程中,所述登录方法还包括:
67.响应于第一资源服务器的第一校验请求数据,向所述第一资源服务器发送第一校验结果,以使所述第一资源服务器根据所述第一校验结果实现所述客户终端的登录成功与否;所述第一校验请求数据包括所述第一验证码,所述第一验证码为客户终端为实现登录到所述第一资源服务器而发送到所述第一资源服务器。
68.本实施例提供一种客户终端登录所述第一资源服务器的技术方案,具体为:
69.8)所述第一资源服务器resource1_server接受到客户终端发送的第一验证码authcode后,将其发送给鉴权服务器authorization_server进行校验。
70.9)鉴权服务器authorization_server对所述第一验证码authcode进行校验,得到成功的结果后,所述第一资源服务器resource1_server在服务端存储中创建第一资源数据节点session1。
71.10)所述第一资源服务器resource1_server返回给客户终端浏览器想要访问的资源和表征成功登录第一资源服务器resource1_server的第一登录标志resource1_token,浏览器将其保存在对应第一资源服务器resource1_server域名下的cookie中。
72.进一步的,作为优选方案,本实施例中,还包括:
73.响应于客户终端的第二请求数据,向所述客户终端发送第二反馈数据,以使客户终端根据所述第二反馈数据登录到第二资源服务器;所述第二请求数据包括所述用户凭证和所述第二资源服务器的第二网址;所述第二反馈数据包括第二验证码;所述第二验证码基于所述用户凭证和所述第二网址生成。
74.具体的,所述第二验证码的生成步骤包括:
75.所述鉴权服务器接收到所述用户凭证后,验证是否通过,若是则生成带有用户编码的成功校验码(如succeed),进而将用户通过鉴权服务器验证通过后的唯一凭证(即用户凭证authorization_token)与第二网址整合生成第二验证码;若否,则返回验证不通过的失败校验码,反馈到用户终端。
76.本实施例中,用户使用客户终端准备登录第二资源服务器resource2_server,以访问第二资源服务器resource2_server的资源,具体过程如下:
77.11)客户终端通过浏览器发送访问第二资源服务器resource2_server的请求,在实际操作中,开始打开第二资源服务器resource2_server的第二网址url2。
78.在一些实施例中,可以是点击第二资源服务器resource2_server网站上的登录按钮,即触发步骤12)。
79.12)所述第二资源服务器resource2_server校验用户没在第二资源服务器resource2_server登录过后,便进行重定向,使客户终端打开鉴权服务器authorization_server的鉴权网址进行登录校验。
80.13)客户终端向鉴权服务器authorization_server发送登录的第二请求数据,此时,因在登录所述第一资源服务器resource1_server时,已经将所述用户凭证存储在对应鉴权服务器authorization_server的cookie中,在所述第二请求数据中的所述用户凭证authorization_token可以直接调取得到。同时,所述第二请求数据还包括所述第二资源服务器resource2_server的第二网址url2。
81.14)由于鉴权服务器authorization_server根据所述用户凭证authorization_token判断用户已经成功登录过,便直接返回客户终端的浏览器第二反馈数据,第二反馈数据包括一个第二验证码authcode2,客户终端可以根据所述第二验证码authcode2登录所述第二资源服务器resource2_server。
82.15)客户终端带上所述第二验证码authcode2,登录所述第二资源服务器resource2_server。在本实施例中,所述第二验证码authcode2,仅进行一次校验,极大提高网址登录的安全性。
83.在本实施例中,针对客户终端对于第二资源服务器resource2_server的登录,不做限定,只要鉴权服务器authorization_server通过了,则会向客户终端反馈了所述第二反馈数据,即证明已经鉴权通过,即具有登录第二资源服务器resource2_server的资格,能够实现登录;在鉴权不通过的情况下,鉴权服务器不会向客户终端反馈第二反馈数据。在登录第二资源服务器resource2_server时,本领域的技术人员可以根据需求选择适当的登录方法对第二资源服务器resource2_server进行登录。
84.使用本实施例提供的技术方案,在登录第二资源服务器时,不需要重新提供用户名和密码等数据,仅提供所述用户凭证和第二网址即可,方便快捷。
85.进一步的,作为优选方案,本实施例中,在所述客户终端登录到所述第二资源服务器过程中,所述登录方法还包括:
86.响应于第二资源服务器的第二校验请求数据,向所述第二资源服务器发送第二校验结果,以使所述第二资源服务器根据所述第二校验结果实现所述客户终端的登录成功与否;所述第二校验请求数据包括所述第二验证码,所述第二验证码为客户终端为实现登录
到所述第二资源服务器而发送到所述第二资源服务器。
87.本实施例提供一种客户终端登录所述第二资源服务器的技术方案,具体为:
88.16)第二资源服务器resource2_server接受到客户终端发送的第二验证码authcode2后将其发送给鉴权服务器authorization_server进行校验。
89.17)鉴权服务器authorization_server对所述第二验证码authcode2进行校验,等到成功的结果后,第二资源服务器resource12_server在服务端本地创建第二资源数据节点session2。每次都对所述第一/二验证码进行校验,保证登录的客户终端是正确的客户终端。
90.18)第二资源服务器resource2_server返回给客户终端的浏览器请求访问的资源和表征客户终端成功登录第二资源服务器resource2_server的第二登录标志resource2_token,浏览器将其保存在第二资源服务器resource2_server域名下的cookie中。
91.进一步的,作为优选方案,本实施例中,在接收到所述第二请求数据后,还包括:
92.判定发送所述第一反馈数据与接收到所述第二请求数据之间的时间差值是否小于第一预定时间,若是则向客户终端发送所述第二反馈数据;若否,则向客户终端发送登录界面,所述第二资源服务器作为第一资源服务器。优选的,所述第一预定时间为30-600分钟,进一步优选为30分钟,即实现若是在客户终端登录第一资源服务器成功后的第一预定时间内,可以使用所述用户凭证进行针对第二资源服务器的登录,若是超过了所述第一预定时间,则需要重新填写用户登录数据,能够保证用户的数据安全。当然,还可以是其他的时间确定,例如1-30天等,这样就方便用户登录。
93.进一步的,作为优选方案,本实施例中,客户终端在发送第一请求数据前,基于用户请求向第一资源服务器发送访问请求,第一资源服务器校验用户未登录后,向客户终端返回鉴权服务器的重定向网址,使客户终端收到鉴权服务器的重定向网址后向鉴权服务器发出第一请求数据;具体的实施方式可参见前述实施例中步骤1)-4)。
94.所述第一反馈数据还包括第一网址,所述第一验证码拼接在所述第一网址后;
95.所述客户终端在接收到所述第一反馈数据后,将所述用户凭证存储在cookie中。存储在cookie中,只要cookie被删除,就需要重新获取用户凭证,即重新进行登录校验。
96.进一步的,作为优选方案,本实施例中,客户终端在发送第二请求数据前,基于用户请求向第二资源服务器发送访问请求,向客户终端返回鉴权服务器的重定向网址,使客户终端收到鉴权服务器的重定向网址后向鉴权服务器发出第二请求数据;具体实施方式可参见前述实施例中步骤11)-12)。
97.所述第二反馈数据还包括第二网址,所述第二验证码拼接在所述第二网址后。
98.无论客户终端是否能够在接收到所述第一/二反馈数据后直接连接所述第一/二资源服务器,均将所述第一/二网址附加在所述第一/二反馈数据中,可以保证在登录前进行对第一/二资源服务器的网址确认,使登录信息更加安全。
99.本发明还提供一种使用前述任一实施例的所述的跨域单点登录方法的鉴权服务器,包括:
100.获取模块,用于接收客户终端的第一请求数据;所述第一请求数据包括用户登录数据和所述第一资源服务器的第一网址;
101.反馈模块,用于响应于客户终端的第一请求数据,向所述客户终端发送第一反馈
数据,以使客户终端根据所述第一反馈数据登录到第一资源服务器;所述第一反馈数据包括用户凭证、第一验证码;所述第一验证码基于所述用户登录数据和所述第一网址生成。
102.进一步的,作为优选方案,本实施例中,所述获取模块还用于接收第一资源服务器发送的第一校验请求数据;所述反馈模块还用于向所述第一资源服务器反馈第一校验结果;以实现:
103.响应于第一资源服务器的第一校验请求数据,向所述第一资源服务器发送第一校验结果,以使所述第一资源服务器根据所述第一校验结果实现所述客户终端的登录成功与否;所述第一校验请求数据包括所述验证码,所述验证码为客户终端为实现登录到所述第一资源服务器而发送到所述第一资源服务器。
104.进一步的,作为优选方案,本实施例中,所述获取模块还用于接收所述客户终端发送的第二请求数据;所述反馈模块还用于向客户终端反馈所述第二反馈数据;以实现:
105.响应于客户终端的第二请求数据,向所述客户终端发送第二反馈数据,以使客户终端根据所述第二反馈数据登录到第二资源服务器;所述第二请求数据包括所述用户凭证和所述第二资源服务器的第二网址;所述第二反馈数据包括第二验证码;所述第二验证码基于所述用户凭证和所述第二网址生成。
106.进一步的,作为优选方案,本实施例中,所述获取模块还用于接收第二资源服务器发送的第二校验请求数据;所述反馈模块还用于向所述第二资源服务器反馈第二校验结果;以实现:
107.响应于第二资源服务器的第二校验请求数据,向所述第二资源服务器发送第二校验结果,以使所述第二资源服务器根据所述第二校验结果实现所述客户终端的登录成功与否;所述第二校验请求数据包括所述验证码,所述验证码为客户终端为实现登录到所述第二资源服务器而发送到所述第二资源服务器。
108.进一步的,作为优选方案,本实施例中,所述反馈模块在接收到所述第二请求数据后,还包括:
109.判定发送所述第一反馈数据与接收到所述第二请求数据之间的时间差值是否小于第一预定时间,若是则向客户终端发送所述第二反馈数据;若否,则向客户终端发送登录界面,所述第二资源服务器作为第一资源服务器。
110.本发明还提供一种跨域单点登录系统,包括:
111.客户终端;
112.前述实施例中所述的鉴权服务器;
113.两个以上资源服务器,其中客户终端首先请求登录的资源服务器为第一资源服务器,其余资源服务器为第二资源服务器;两个以上资源服务器通过所述鉴权服务器进行登录校验。
114.本发明还提供一种计算机存储介质,存储有计算机程序,所述计算机程序在被处理器执行时实现前述任一实施例的所述的跨域单点登录方法。
115.计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
116.在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。
117.可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。
再多了解一些

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

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

相关文献