一种单点登录方法、装置、设备及介质制造方法及图纸

技术编号:28374529 阅读:24 留言:0更新日期:2021-05-08 00:01
本发明专利技术实施例公开了一种单点登录方法、装置、设备及介质。其中,单点登录方法,包括:响应于目标网站针对目标浏览器发起的登录认证请求,获取目标浏览器在CAS中的登录状态;如果目标浏览器在CAS中处于未登录状态,则向目标浏览器返回登录页面,并对目标浏览器针对登录页面反馈的目标登录信息进行身份验证;若通过身份验证,则建立针对目标浏览器的目标会话,且生成包含目标登录信息的JWT,并设置到目标会话中;生成与目标会话对应的目标cookie,并向目标浏览器反馈包含目标cookie的重定向指示。本发明专利技术实施例的技术方案,通过读取浏览器的cookie,在CAS统一管控浏览器在各系统的登录状态,提高接入效率。

【技术实现步骤摘要】
一种单点登录方法、装置、设备及介质
本专利技术实施例涉及计算机技术,尤其涉及一种单点登录方法、装置、设备及介质。
技术介绍
单点登录(SingleSignOn,SSO)是指用户只需要一次登录,就在多个应用中自由切换,无需重复输入用户名和密码来确认身份。现有技术的单点登录方案中,登录状态由各业务系统分别管控,登录状态不集中,一方面各业务系统对接难度大,另一方面对登录状态进行分别管控容易造成串号和登录状态不一致的问题。
技术实现思路
本专利技术实施例提供一种单点登录方法、装置、设备及介质,通过读取浏览器的cookie,在CAS统一管控浏览器在各系统的登录状态,提高接入效率的同时,避免串号或者登录状态不一致的问题。第一方面,本专利技术实施例提供了一种单点登录方法,所述方法应用于CAS,包括:响应于目标网站针对目标浏览器发起的登录认证请求,获取所述目标浏览器在CAS中的登录状态;如果所述目标浏览器在CAS中处于未登录状态,则向所述目标浏览器返回登录页面,并对所述目标浏览器针对所述登录页面反馈的目标登录信息进行身份验证;若通过身份验证,则建立针对所述目标浏览器的目标会话,且生成包含所述目标登录信息的JWT,并设置到所述目标会话中;生成与所述目标会话对应的目标cookie,并向所述目标浏览器反馈包含所述目标cookie的重定向指示,所述目标cookie中包含所述目标会话的标识和JWT。第二方面,本专利技术实施例提供了一种单点登录方法,所述方法应用于目标网站,包括:响应于目标浏览器发起的访问请求,向CAS发起登录认证请求;接收目标浏览器发起的包含JWT的访问请求,并判断是否存储有与所述目标浏览器对应的JWT;如果没有存储与目标浏览器对应的JWT,则判断接收到的JWT是否有效;若是,则建立针对所述目标浏览器的会话,并生成与所述会话对应的cookie,且将所述JWT设置于所述cookie中,并向浏览器发送重定向指示。第三方面,本专利技术实施例提供了一种单点登录装置,所述装置包括:登录状态获取模块,用于响应于目标网站针对目标浏览器发起的登录认证请求,获取所述目标浏览器在CAS中的登录状态;身份验证模块,用于如果所述目标浏览器在CAS中处于未登录状态,则向所述目标浏览器返回登录页面,并对所述目标浏览器针对所述登录页面反馈的目标登录信息进行身份验证;目标会话生成模块,用于若通过身份验证,则建立针对所述目标浏览器的目标会话,且生成包含所述目标登录信息的JWT,并设置到所述目标会话中;重定向指示发送模块,用于生成与所述目标会话对应的目标cookie,并向所述目标浏览器反馈包含所述目标cookie的重定向指示,所述目标cookie中包含所述目标会话的标识和JWT。第四方面,本专利技术实施例提供了一种单点登录装置,所述装置包括:认证请求发起模块,用于响应于目标浏览器发起的访问请求,向CAS发起登录认证请求;访问请求接收模块,用于接收目标浏览器发起的包含JWT的访问请求,并判断是否存储有与所述目标浏览器对应的JWT;会话建立模块,用于如果没有存储与目标浏览器对应的JWT,则判断接收到的JWT是否有效,若是,则建立针对所述目标浏览器的会话,并生成与所述会话对应的cookie,且将所述JWT设置于所述cookie中,并向浏览器发送重定向指示。第五方面,本专利技术实施例提供了一种电子设备,包括一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术任意实施例提供的单点登录方法。第六方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本专利技术任意实施例提供的单点登录方法。本专利技术实施例的技术方案,CAS响应于目标网站针对目标浏览器发起的登录认证请求,获取目标浏览器在CAS中的登录状态,当目标浏览器在CAS中处于未登录状态时,向目标浏览器返回登录页面,并对目标浏览器反馈的目标登录信息进行身份验证,若通过身份验证,则建立针对目标浏览器的目标会话,且生成包含目标登录信息的JWT设置到目标会话中,且生成与目标会话对应的目标cookie,并向目标浏览器反馈包含目标cookie的重定向指示,通过CAS统一管控各相互信任的目标网站的登录状态,降低统一接入的成本,且将包含JWT的cookie反馈至目标浏览器,以使目标网站获取并缓存与当前目标浏览器对应的JWT,避免了串号的情况。附图说明图1是本专利技术实施例一中的一种单点登录方法的流程图;图2是本专利技术实施例二中的一种单点登录方法的流程图;图3是本专利技术实施例三中的一种单点登录方法的流程图;图4a是本专利技术实施例四中第一次访问目标网站的流程图;图4b是本专利技术实施例四中登录后第二次访问目标网站的流程图;图4c是本专利技术实施例四中第一次访问与已登录目标网站相互信任的网站A的流程图;图4d是本专利技术实施例四中在目标网站或者网站A注销的流程图;图5是本专利技术实施例五中的一种单点登录装置的结构示意图;图6是本专利技术实施例六中的一种单点登录装置的结构示意图;图7是本专利技术实施例七中的一种电子设备的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1为本专利技术实施例一中的一种单点登录方法的流程图,本实施例的技术方案适用于通过CAS统一管控各目标网站登录状态的情况,该方法可以由单点登录装置执行,该装置可以由软件和/或硬件来实现,并可以集成在各种通用计算机设备中,单点登录方法具体包括如下步骤:步骤110、响应于目标网站针对目标浏览器发起的登录认证请求,获取目标浏览器在CAS中的登录状态。其中,中央认证服务(CentralAuthenticationService,CAS)是一种单点登录的解决方案,分为服务端(CASServer)和客户端(CASClient),服务端需要独立部署,负责对用户进行身份验证,客户端负责处理对客户端受保护资源的访问请求,需要登录时,重定向到服务端。本实施例中,用户在目标浏览器中输入目标网站的网址,访问目标网站时,目标网站会针对当前发起访问请求的目标浏览器向CAS发起登录认证请求,以使CAS认证目标浏览器是否在CAS中登录,具体的,CAS在接收到目标网站针对目标浏览器发起的登录认证请求后,会根据目标浏览器向目标网站发起的访问请求,去判断目标浏览器在CAS中是否处于登录状态。示例性的,CAS获取目标浏览器访问目标网站时携带的cookie,并读取cookie中包含的会话标识,若读取到的会话标识与CAS中已建立的会话对应,则确定目标浏览器在CAS中本文档来自技高网...

【技术保护点】
1.一种单点登录方法,应用于中央认证服务CAS,其特征在于,包括:/n响应于目标网站针对目标浏览器发起的登录认证请求,获取所述目标浏览器在CAS中的登录状态;/n如果所述目标浏览器在CAS中处于未登录状态,则向所述目标浏览器返回登录页面,并对所述目标浏览器针对所述登录页面反馈的目标登录信息进行身份验证;/n若通过身份验证,则建立针对所述目标浏览器的目标会话,且生成包含所述目标登录信息的JWT,并设置到所述目标会话中;/n生成与所述目标会话对应的目标cookie,并向所述目标浏览器反馈包含所述目标cookie的重定向指示,所述目标cookie中包含所述目标会话的标识和JWT。/n

【技术特征摘要】
1.一种单点登录方法,应用于中央认证服务CAS,其特征在于,包括:
响应于目标网站针对目标浏览器发起的登录认证请求,获取所述目标浏览器在CAS中的登录状态;
如果所述目标浏览器在CAS中处于未登录状态,则向所述目标浏览器返回登录页面,并对所述目标浏览器针对所述登录页面反馈的目标登录信息进行身份验证;
若通过身份验证,则建立针对所述目标浏览器的目标会话,且生成包含所述目标登录信息的JWT,并设置到所述目标会话中;
生成与所述目标会话对应的目标cookie,并向所述目标浏览器反馈包含所述目标cookie的重定向指示,所述目标cookie中包含所述目标会话的标识和JWT。


2.根据权利要求1所述的方法,其特征在于,获取所述目标浏览器在CAS中的登录状态,包括:
获取所述目标浏览器访问所述目标网站时携带的cookie,并提取所述cookie中包含的会话标识;
如果所述会话标识与CAS中已建立会话的会话标识对应,则确定所述目标浏览器在CAS中处于登录状态,否则,所述目标浏览器在CAS中处于未登录状态。


3.根据权利要求1所述的方法,其特征在于,所述目标登录信息包括用户名和密码;
对所述目标浏览器针对所述登录页面反馈的目标登录信息进行身份验证,包括:
将所述目标浏览器反馈的用户名和密码与注册信息列表中的至少一项包含用户名和密码的匹配对进行逐一比对;
如果目标浏览器反馈的用户名和密码与所述注册列表中的匹配对匹配,则通过身份验证。


4.根据权利要求1所述的方法,其特征在于,还包括:
如果所述目标浏览器在CAS中处于登录状态,则获取所述目标浏览器访问所述目标网站时携带的cookie中的JWT;
将所述JWT反馈至所述目标网站,以使所述目标网站根据所述JWT的状态,与所述目标浏览器建立连接。


5.根据权利要求1所述的方法,其特征在于,还包括:
响应于所述目标网站发起的注销请求,获取所述目标浏览器访问所述目标网站时携带的cookie中的JWT,并将所述JWT置为失效;
删除CAS中与所述目标浏览器对应的目标会话,以及与所述目标会话对应的cookie。


6.一种单点登录方法,应用于目标网站,其特征在于,包括:
响应于目标浏览器发起的访问请求,向CAS发起登录认证请求;
接收目标浏览器发起的包含JWT的访问请求,并判断是否存储有与所述目标浏览器对...

【专利技术属性】
技术研发人员:陈善德邓剑锋盛国军吕大鹏
申请(专利权)人:海尔数字科技青岛有限公司青岛海尔工业智能研究院有限公司海尔卡奥斯物联生态科技有限公司
类型:发明
国别省市:山东;37

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

1