单点登录的实现方法、认证中心服务器及存储介质技术

技术编号:38904955 阅读:13 留言:0更新日期:2023-09-22 14:23
本发明专利技术提供一种单点登录的实现方法、认证中心服务器和存储介质,该方法包括:认证中心服务器接收到浏览器或第一应用的后端发送的第一应用的用户登录请求且验证通过后,设置cookie以及将cookie的目标健的值设为为用户生成的用户身份票据;接收到对第二应用的访问请求进行认证的认证请求,且判定用户未登录第二应用后,拒绝访问第二应用;接收到浏览器发送的cookie查询请求且查询到的目标健存在后,反馈携带用户身份票据的应答;接收浏览器或第二应用的后端发送的用于获取第二应用的令牌的访问请求;根据访问请求获取用户信息以及验证第二应用,验证通过后,生成第二应用的令牌,向浏览器发送第二应用的令牌。向浏览器发送第二应用的令牌。向浏览器发送第二应用的令牌。

【技术实现步骤摘要】
单点登录的实现方法、认证中心服务器及存储介质


[0001]本专利技术实施例涉及云平台
,尤其涉及一种单点登录的实现方法、认证中心服务器及存储介质。

技术介绍

[0002]单点登录(SingleSignOn,SSO),指在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。对于浏览器和服务器(B/S)架构的全球广域网(World Wide Web,Web)端应用,单点登录可以狭义的认为是多个网站的互信登录。
[0003]针对微服务和多服务的环境,如何实现单点登录,是亟待解决的技术问题。

技术实现思路

[0004]本专利技术实施例提供一种单点登录的实现方法、认证中心服务器及存储介质,用于解决如何实现微服务和多服务的环境下的单点登录的问题。
[0005]为了解决上述技术问题,本专利技术是这样实现的:
[0006]第一方面,本专利技术实施例提供了一种单点登录的实现方法,包括:
[0007]认证中心服务器接收到浏览器或所述第一应用的后端发送的用于登录第一应用的用户登录请求,且对所述用户登录请求验证通过之后,设置cookie以及将cookie的目标键的值设为为用户生成的用户身份票据;
[0008]所述认证中心服务器在接收到网关发送的对第二应用的访问请求进行认证的第一认证请求,且判定用户未登录所述第二应用之后,向所述浏览器发送拒绝访问所述第二应用的第一指示信息;所述认证中心服务器接收到所述浏览器发送的用于查询cookie的第一查询请求且查询到所述目标键已存在之后,向所述浏览器发送第一应答,所述第一应答中携带所述用户身份票据;所述认证中心服务器接收所述浏览器或所述第二应用的后端发送的第一访问请求,所述第一访问请求用于获取所述第二应用的令牌,所述第一访问请求中包括所述用户身份票据,第二应用的标识和密码;所述认证中心服务器根据所述用户身份票据获取用户信息,并根据所述第二应用的标识和密码验证所述第二应用,当验证通过后,根据所述用户信息和所述第二应用的信息,生成所述第二应用的令牌,并向所述浏览器发送第一重定向请求,所述第一重定向请求中携带所述第二应用的令牌。
[0009]可选的,所述认证中心服务器接收到浏览器或第一应用的后端发送的用于登录第一应用的用户登录请求,且对所述用户登录请求验证通过之后,设置cookie以及将cookie的目标键的值设为为用户生成的用户身份票据包括:
[0010]所述认证中心服务器接收到所述浏览器或所述第一应用的后端发送的用于登录第一应用的用户登录请求之后,对所述用户登录请求中携带的用户登录名和登录密码以及所述第一应用的标识和密码进行验证,如果验证通过,向所述浏览器或所述第一应用的后端发送第二应答,所述第二应答中包括所述第一应用的令牌,用户身份票据和用户信息;
[0011]所述认证中心服务器接收所述浏览器发送的第二访问请求,所述第二访问请求中
携带所述用户身份票据;
[0012]所述认证中心服务器设置cookie以及将cookie的目标键的值设为所述用户身份票据,并向所述浏览器发送第二重定向请求,所述第二重定向请求中携带所述第一应用的首页地址。
[0013]可选的,所述认证中心服务器接收浏览器或第一应用的后端发送的用于登录第一应用的用户登录请求之前还包括:
[0014]所述认证中心服务器在接收到所述网关发送的对所述第一应用的访问请求进行认证的第二认证请求,且判定用户未登录所述第一应用之后,向所述浏览器发送拒绝访问所述第一应用的第二指示信息;
[0015]所述认证中心服务器接收到所述浏览器发送的用于查询cookie的第二查询请求且查询到所述目标键不存在之后,向所述浏览器发送第三应答,所述第三应答用于指示未查询到所述目标键;
[0016]所述认证中心服务器接收所述浏览器或第一应用的后端发送的第三访问请求,所述第三访问请求用于获取所述第一应用的令牌;
[0017]所述认证中心服务器确定出所述第三访问请求中未携带用户身份票据,向所述浏览器发送拒绝提供所述第一应用的令牌的指示信息。
[0018]可选的,所述对所述用户登录请求验证通过之后还包括:
[0019]所述认证中心服务器接收所述网关发送的对请求访问所述第一应用的访问请求进行认证的第三认证请求,所述第三认证请求携带所述第一应用的令牌;
[0020]所述认证中心服务器根据所述第一应用的令牌,判定所述用户已登录所述第一应用;
[0021]所述认证中心服务器向所述网关发送第四应答,所述第四应答应用指示允许访问第一应用的受保护的页面或资源。
[0022]可选的,所述向所述浏览器发送第一重定向请求之后还包括:
[0023]所述认证中心服务器接收所述网关发送的对请求访问所述第二应用的访问请求进行认证的第四认证请求,所述第四认证请求携带所述第二应用的令牌;
[0024]所述认证中心服务器根据所述第二应用的令牌,判定所述用户已登录所述第二应用;
[0025]所述认证中心服务器向所述网关发送第五应答,所述第五应答应用指示允许访问第二应用的受保护的页面或资源。
[0026]可选的,所述方法还包括:
[0027]所述认证中心服务器接收所述网关发送的第一应用或第二应用的登出请求;所述认证中心服务器退出所述第一应用或第二应用的令牌,并查询当前是否存在其他应用的令牌,若查询到存在其他应用的令牌,退出所述其他应用的令牌;所述认证中心服务器删除所述用户身份票据。
[0028]可选的,所述方法还包括:
[0029]所述认证中心服务器接收所述网关发送的对请求访问所述第一应用或第二应用的访问请求进行认证的第三认证请求或第四认证请求,所述第三认证请求携带所述第一应用的令牌,所述第四认证请求携带所述第二应用的令牌;所述认证中心服务器根据所述第
一应用或第二应用的令牌,判定所述用户已登录所述第一应用或第二应用;所述认证中心服务器向所述网关发送第四应答或第五应答,所述第四应答应用指示允许访问所述第一应用的受保护的页面或资源;所述第五应答应用指示允许访问所述第二应用的受保护的页面或资源;所述认证中心服务器为所述第一应用或第二应用的令牌续期,并查询当前是否存在其他应用的令牌,若查询到存在其他应用的令牌,为所述其他应用的令牌续期。
[0030]第二方面,本专利技术实施例提供了一种认证中心服务器,包括:
[0031]第一应用登录模块,用于接收到浏览器或所述第一应用的后端发送的用于登录第一应用的用户登录请求,且对所述用户登录请求验证通过之后,设置cookie以及将cookie的目标键的值设为为用户生成的用户身份票据;
[0032]单点登录模块,用于在接收到网关发送的对第二应用的访问请求进行认证的第一认证请求,且判定用户未登录所述第二应用之后,向所述浏览器发送拒绝访问所述第二应用的第一指示信息;接收到所述浏览器发送的用于查询cookie的第一查询请求且查询到所述目标键已存在之后,向所述浏览器发送第一应本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种单点登录的实现方法,其特征在于,包括:认证中心服务器接收到浏览器或第一应用的后端发送的用于登录第一应用的用户登录请求,且对所述用户登录请求验证通过之后,设置cookie以及将cookie的目标键的值设为为用户生成的用户身份票据;所述认证中心服务器在接收到网关发送的对第二应用的访问请求进行认证的第一认证请求,且判定用户未登录所述第二应用之后,向所述浏览器发送拒绝访问所述第二应用的第一指示信息;所述认证中心服务器接收到所述浏览器发送的用于查询cookie的第一查询请求且查询到所述目标键已存在之后,向所述浏览器发送第一应答,所述第一应答中携带所述用户身份票据;所述认证中心服务器接收所述浏览器或所述第二应用的后端发送的第一访问请求,所述第一访问请求用于获取所述第二应用的令牌,所述第一访问请求中包括所述用户身份票据,第二应用的标识和密码;所述认证中心服务器根据所述用户身份票据获取用户信息,并根据所述第二应用的标识和密码验证所述第二应用,当验证通过后,根据所述用户信息和所述第二应用的信息,生成所述第二应用的令牌,并向所述浏览器发送第一重定向请求,所述第一重定向请求中携带所述第二应用的令牌。2.根据权利要求1所述的方法,其特征在于,所述认证中心服务器接收到浏览器或第一应用的后端发送的用于登录第一应用的用户登录请求,且对所述用户登录请求验证通过之后,设置cookie以及将cookie的目标键的值设为为用户生成的用户身份票据包括:所述认证中心服务器接收到所述浏览器或所述第一应用的后端发送的用于登录第一应用的用户登录请求之后,对所述用户登录请求中携带的用户登录名和登录密码以及所述第一应用的标识和密码进行验证,如果验证通过,向所述浏览器或所述第一应用的后端发送第二应答,所述第二应答中包括所述第一应用的令牌,用户身份票据和用户信息;所述认证中心服务器接收所述浏览器发送的第二访问请求,所述第二访问请求中携带所述用户身份票据;所述认证中心服务器设置cookie以及将cookie的目标键的值设为所述用户身份票据,并向所述浏览器发送第二重定向请求,所述第二重定向请求中携带所述第一应用的首页地址。3.根据权利要求1所述的方法,其特征在于,所述认证中心服务器接收浏览器或第一应用的后端发送的用于登录第一应用的用户登录请求之前还包括:所述认证中心服务器在接收到所述网关发送的对所述第一应用的访问请求进行认证的第二认证请求,且判定用户未登录所述第一应用之后,向所述浏览器发送拒绝访问所述第一应用的第二指示信息;所述认证中心服务器接收到所述浏览器发送的用于查询cookie的第二查询请求且查询到所述目标键不存在之后,向所述浏览器发送第三应答,所述第三应答用于指示未查询到所述目标键;所述认证中心服务器接收所述浏览器或第一应用的后端发送的第三访问请求,所述第三访问请求用于获取所述第一应用的令牌;所述认证中心服务器确定出所述第三访问请求中未携带用户身份票据,向所述浏览器发送拒绝提供所述第一应用的令牌的指示信息。4.根据权利要求1所述的方法,其特征在于,所述对所述用户登录请求验证通过之后还
包括:所述认证中心服务器接收所述网关发送的对请求访问所述第一应用的访问请求进行认证的第三认证请求,所述第三认证请求携带所述第一应用的令牌;所述认证中心服务器根据所述第一应用的令牌,判定所述用户已登录所述第一应用...

【专利技术属性】
技术研发人员:卞雪达
申请(专利权)人:北京京东方技术开发有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1