一种单点登录认证方法及装置制造方法及图纸

技术编号:17413808 阅读:23 留言:0更新日期:2018-03-07 09:32
本发明专利技术公开了一种单点登录认证方法及装置,该方法包括:检测用户端发送的业务系统访问请求是否携带用户登录标识;当检测到时,根据缓存系统中存储的用户登录标识与用户身份标识的映射关系对业务系统访问请求中的用户登录标识进行验证,当验证通过后,基于用户登录标识对应的用户身份标识与用户端建立会话;其中,映射关系由SSO认证系统对用户端的登录请求认证通过后,将用户端发送的用户身份标识以及生成的用户登录标识建立映射关系并存储于缓存系统中。本发明专利技术可以有效减少业务系统与SSO认证系统的交互次数,降低SSO认证系统的负荷,同时提升业务系统的响应效率,高效率实现单点登录功能。

A single sign on authentication method and device

The invention discloses a device and a single sign on authentication method, the method includes: detecting the user service system sends the access request carrying user login ID; when detected, to verify the business system request user login identification based on mapping between user login identification and user identification system in memory cache when, after authentication, session establishment based on user identification and user identification corresponding to the end user login; the mapping request by SSO authentication system on the client login after authentication, the user sends the user ID and the generated user login identification mapping and stored in the cache system. The invention can effectively reduce the interaction times between the business system and the SSO authentication system, reduce the load of the SSO authentication system, improve the response efficiency of the business system at the same time, and achieve the single sign on function efficiently.

【技术实现步骤摘要】
一种单点登录认证方法及装置
本专利技术涉及通信
,尤其涉及一种单点登录认证方法及装置。
技术介绍
SSO(SingleSignOn,单点登录)就是在一个多业务系统共存的环境下,用户在一处登录后,就不用在其他业务系统中登录,也就是说,用户的一次登录能得到其他所有系统的信任。单点登录在大型网站里使用得非常频繁,例如像阿里巴巴这样的网站,在网站的背后是成百上千的子业务系统,用户一次操作或交易可能涉及到几十个子业务系统的协作,如果每个子业务系统都需要用户认证,不仅用户使用体验差,同时各子系统的重复认证授权的逻辑也会是非常复杂的。目前的单点登录方法,参见图1,是通过SSO认证系统对用户的登录信息进行合法性校验后,向用户端发送token信息;用户端在访问其他业务系统时,携带token信息,业务系统将该token信息交由SSO认证系统进行认证。然而,对于上述的方法,用户每次访问业务系统,对业务系统都会经过SSO认证系统的服务器进行合法性校验。因此在应用于高并发访问的场景,会致使SSO认证系统服务器的负荷过高,同时会致使业务系统服务器的响应速度大大降低,导致用户的使用体验非常差。因此,有必要提供一种新型的单点登录方法,提升单点登录的验证效率及业务服务器的访问速度。
技术实现思路
本专利技术提供一种单点登录认证方法及装置,用以解决现有技术中单点登录导致SSO认证系统负荷高,影响业务系统服务器响应速度的问题。为实现上述专利技术目的,本专利技术采用下述的技术方案:依据本专利技术的一个方面,提供一种单点登录认证方法,包括:检测用户端发送的业务系统访问请求是否携带用户登录标识;其中,所述用户登录标识由单点登录SSO认证系统对所述用户端发送的携带用户身份标识的登录请求认证通过后,生成并反馈至所述用户端;当检测到携带所述用户登录标识时,根据缓存系统中存储的用户登录标识与用户身份标识的映射关系对所述业务系统访问请求中的用户登录标识进行验证,当验证通过后,基于所述用户登录标识对应的用户身份标识与所述用户端建立会话;其中,所述映射关系由SSO认证系统对所述用户端的登录请求认证通过后,将所述用户端发送的用户身份标识以及生成的用户登录标识建立映射关系并存储于所述缓存系统中。进一步地,所述检测用户端发送的业务系统访问请求是否携带用户登录标识前,所述方法还包括:检测用户端发送的所述业务系统访问请求是否携带用户身份标识;若未检测,则检测用户端发送的业务系统访问请求中是否携带用户登录标识;若检测到,则基于所述用户身份标识与所述用户端进行会话。进一步地,所述方法还包括:若未检测到所述业务系统访问请求中携带用户登录标识时,则将所述用户端重定向所述SSO认证系统,由所述SSO认证系统对所述用户端发送的携带用户身份标识的登录请求进行认证。进一步地,所述根据缓存系统中存储的用户登录标识与用户身份标识的映射关系对所述业务系统访问请求中的用户登录标识进行验证,具体包括:判断所述映射关系中是否存在所述用户登录标识;当存在时,获取所述用户登录标识对应的用户身份标识以及时间戳信息;根据所述时间戳信息验证所述用户登录标识是否超时,若未超时,则根据所述用户身份标识与所述用户端建立会话,同时更新所述时间戳信息为当前时间;其中,所述时间戳信息的初始时间由所述SSO认证系统对所述用户端的登录请求认证通过后,将认证通过的时间作为初始时间存储于所述缓存系统。进一步地,所述方法还包括:与所述用户端建立会话后,将所述业务系统对应的系统标识存储于所述缓存系统中相应的映射关系中;检测所述业务系统与所述用户端的会话情况以及所述业务系统重启情况;当检测到与所述用户端会话超时、关闭或者检测到所述业务系统重新启动时,则将所述映射关系中所述业务系统对应的系统标识删除。进一步地,所述将所述映射关系中所述业务系统对应的系统标识删除后,所述方法还包括:检测所述映射关系是否还存在其他业务系统的系统标识,当不存在时,则将所述映射关系从所述缓存系统中删除。进一步地,所述缓存系统为分布式缓存系统。依据本专利技术的一个方面,提供一种单点登录认证装置,用于业务系统中,所述装置包括:第一检测单元,用于检测用户端发送的业务系统访问请求是否携带用户登录标识;其中,所述用户登录标识由单点登录SSO认证系统对所述用户端发送的携带用户身份标识的登录请求认证通过后,生成并反馈至所述用户端;处理单元,用于当检测到所述用户登录标识时,根据缓存系统中存储的用户登录标识与用户身份标识的映射关系对所述业务系统访问请求中的用户登录标识进行验证,当验证通过后,基于所述用户登录标识对应的用户身份标识与所述用户端建立会话;其中,所述映射关系由SSO认证系统对所述用户端的登录请求认证通过后,将所述用户端发送的用户身份标识以及生成的用户登录标识建立映射关系并存储于所述缓存系统中。进一步地,所述装置还包括第二检测单元,用于所述第一检测单元检测用户端发送的业务系统访问请求是否携带用户登录标识前,检测用户端发送的所述业务系统访问请求是否携带用户身份标识;若未检测,则检测用户端发送的业务系统访问请求中是否携带用户登录标识;若检测到,则基于所述用户身份标识与所述用户端进行会话。进一步地,所述处理单元,还用于当未检测到所述业务系统访问请求中携带用户登录标识时,则将所述用户端重定向所述SSO认证系统,由所述SSO认证系统对所述用户端发送的携带用户身份标识的登录请求进行认证。进一步地,所述处理单元具体用于,判断所述映射关系中是否存在所述业务系统访问请求中的用户登录标识;当存在时,获取所述用户登录标识对应的用户身份标识以及时间戳信息;根据所述时间戳信息验证所述用户登录标识是否超时,若未超时,根据所述用户身份标识与所述用户端建立会话,并更新所述时间戳信息为当前时间;其中,所述时间戳信息的初始时间由所述SSO认证系统对所述用户端的登录请求认证通过后,将认证通过的时间作为初始时间存储于所述缓存系统。进一步地,所述处理单元还用于,与所述用户端建立会话后,将所述业务系统对应的系统标识存储于所述缓存系统中相应的映射关系中;所述装置还包括第三检测单元,用于检测所述业务系统与所述用户端的会话情况以及所述业务系统重启情况;所述处理单元,还用于当所述第三检测单元检测到与所述用户端会话超时、关闭或者检测到所述业务系统重新启动时,则将所述映射关系中所述业务系统对应的系统标识删除。进一步地,所述处理单元还用于,将所述映射关系中所述业务系统对应的系统标识删除,检测所述映射关系是否还存在其他业务系统的系统标识,当不存在时,则将所述映射关系从所述缓存系统中删除。本专利技术有益效果如下:本专利技术所提供的单点登录认证方法及装置,通过将用户登录标识以及用户身份标识等验证信息存放在缓存系统中,当业务系统需要验证用户端的信息时,直接访问缓存系统,即可实现用户端信息的合法性验证;同时缓存系统保存业务服务器的登录状态,根据该登录状态信息,可以判断验证信息的有效性。因此,针对高并发访问的多业务系统单点登录场景,本专利技术可以有效减少业务系统与SSO认证系统的交互次数,降低SSO认证系统的负荷,同时提升业务系统的响应效率,高效率实现单点登录功能。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予本文档来自技高网...
一种单点登录认证方法及装置

【技术保护点】
一种单点登录认证方法,其特征在于,用于业务系统中,所述方法包括:检测用户端发送的业务系统访问请求是否携带用户登录标识;其中,所述用户登录标识由单点登录SSO认证系统对所述用户端发送的携带用户身份标识的登录请求认证通过后,生成并反馈至所述用户端;当检测到携带所述用户登录标识时,根据缓存系统中存储的用户登录标识与用户身份标识的映射关系对所述业务系统访问请求中的用户登录标识进行验证,当验证通过后,基于所述用户登录标识对应的用户身份标识与所述用户端建立会话;其中,所述映射关系由SSO认证系统对所述用户端的登录请求认证通过后,将所述用户端发送的用户身份标识以及生成的用户登录标识建立映射关系并存储于所述缓存系统中。

【技术特征摘要】
1.一种单点登录认证方法,其特征在于,用于业务系统中,所述方法包括:检测用户端发送的业务系统访问请求是否携带用户登录标识;其中,所述用户登录标识由单点登录SSO认证系统对所述用户端发送的携带用户身份标识的登录请求认证通过后,生成并反馈至所述用户端;当检测到携带所述用户登录标识时,根据缓存系统中存储的用户登录标识与用户身份标识的映射关系对所述业务系统访问请求中的用户登录标识进行验证,当验证通过后,基于所述用户登录标识对应的用户身份标识与所述用户端建立会话;其中,所述映射关系由SSO认证系统对所述用户端的登录请求认证通过后,将所述用户端发送的用户身份标识以及生成的用户登录标识建立映射关系并存储于所述缓存系统中。2.如权利要求1所述的方法,其特征在于,所述检测用户端发送的业务系统访问请求是否携带用户登录标识前,所述方法还包括:检测用户端发送的所述业务系统访问请求是否携带用户身份标识;若未检测,则检测用户端发送的业务系统访问请求中是否携带用户登录标识;若检测到,则基于所述用户身份标识与所述用户端进行会话。3.如权利要求2所述的方法,其特征在于,所述方法还包括:若未检测到所述业务系统访问请求中携带用户登录标识时,则将所述用户端重定向所述SSO认证系统,由所述SSO认证系统对所述用户端发送的携带用户身份标识的登录请求进行认证。4.如权利要求1所述的方法,其特征在于,所述根据缓存系统中存储的用户登录标识与用户身份标识的映射关系对所述业务系统访问请求中的用户登录标识进行验证,具体包括:判断所述映射关系中是否存在所述用户登录标识;当存在时,获取所述用户登录标识对应的用户身份标识以及时间戳信息;根据所述时间戳信息验证所述用户登录标识是否超时,若未超时,则根据所述用户身份标识与所述用户端建立会话,同时更新所述时间戳信息为当前时间;其中,所述时间戳信息的初始时间由所述SSO认证系统对所述用户端的登录请求认证通过后,将认证通过的时间作为初始时间存储于所述缓存系统。5.如权利要求1或4所述的方法,其特征在于,所述方法还包括:与所述用户端建立会话后,将所述业务系统对应的系统标识存储于所述缓存系统中相应的映射关系中;检测所述业务系统与所述用户端的会话情况以及所述业务系统重启情况;当检测到与所述用户端会话超时、关闭或者检测到所述业务系统重新启动时,则将所述映射关系中所述业务系统对应的系统标识删除。6.如权利要求5所述的方法,其特征在于,所述将所述映射关系中所述业务系统对应的系统标识删除后,所述方法还包括:检测所述映射关系是否还存在其他业务系统的系统标识,当不存在时,则将所述映射关系从所述缓存系统中删除。7.如权利要求1所述的方法,其特征在于,所述缓存系统为分布式缓存系...

【专利技术属性】
技术研发人员:陈波
申请(专利权)人:南京中兴软件有限责任公司
类型:发明
国别省市:江苏,32

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

1