基于多客户端独立安全体系场景下的单点互通方法及装置与流程

摘要: 本发明涉及应用系统登录认证,尤其涉及到一种基于多客户端独立安全体系场景下的单点互通方法及装置。背景技术:1、在大型组织内部,多个业务系统(即多个客户端)通常已分...
基于多客户端独立安全体系场景下的单点互通方法及装置与流程

本发明涉及应用系统登录认证,尤其涉及到一种基于多客户端独立安全体系场景下的单点互通方法及装置。

背景技术:

1、在大型组织内部,多个业务系统(即多个客户端)通常已分别建设并固化各自的认证与会话体系。为了统一身份源与授权,行业普遍采用以oauth2.0/oidc为基础的中心化认证授权服务来实现单点登录。

2、传统单点登录能够让用户在浏览器中与登录中心建立一次认证会话后,访问多个已注册客户端时免重复登录。但应用间互跳一般依赖用户自行导航或中心门户ui的二次选择,缺乏一套由任一客户端直接发起、直达另一客户端,无需回到中心门户ui进行二次选择且不改变各自认证边界的工程化方法。

技术实现思路

1、有鉴于此,本发明提供了一种基于多客户端独立安全体系场景下的单点互通方法及装置,实现了由一客户端直达另一客户端,无需回到中心门户ui进行二次选择且不改变各自认证边界。

2、其中一个方面,提供了一种基于多客户端独立安全体系场景下的单点互通方法,应用于源客户端,所述方法包括:

3、源客户端响应于当前用户对目标客户端的登录请求,生成互通凭证,其中,所述当前用户已登录所述源客户端,所述互通凭证包括所述源客户端、所述当前用户对应的token与所述目标客户端;

4、所述源客户端将所述互通凭证发送至登录中心,以使所述登录中心根据所述互通凭证,生成与所述目标客户端以及所述当前用户对应的授权码,并将所述授权码发送至所述源客户端;

5、所述源客户端接收所述授权码,将所述授权码发送至所述目标客户端,以使所述目标客户端将所述授权码发送至所述登录中心,由所述登录中心根据所述授权码,生成令牌,并发送至所述目标客户端,由所述目标客户端将所述令牌发送至所述登录中心,由所述登录中心根据所述令牌,提取所述当前用户对应的用户信息,并发送至所述目标客户端,由所述目标客户端根据所述用户信息进行自登录。

6、优选地,所述源客户端响应于当前用户对目标客户端的登录请求,生成互通凭证,其中,所述当前用户已登录所述源客户端,包括:

7、源客户端响应于当前用户对所述源客户端的登录请求,所述当前用户完成对所述源客户端的登录;

8、所述源客户端向登录中心发送合法客户端清单获取请求,接收所述登录中心发送的所述合法客户端清单,在所述源客户端的前端渲染所述合法客户端清单,响应于所述当前用户对所述合法客户端清单中的任一个目标客户端的登录请求,所述源客户端生成互通凭证。

9、另一个方面,提供了一种基于多客户端独立安全体系场景下的单点互通方法,应用于登录中心,所述方法包括:

10、登录中心接收互通凭证,其中,所述互通凭证是源客户端响应于当前用户对目标客户端的登录请求生成的,所述当前用户已登录所述源客户端,所述互通凭证包括所述源客户端、所述当前用户对应的token与所述目标客户端;

11、所述登录中心根据所述互通凭证,生成与所述目标客户端以及所述当前用户对应的授权码,并将所述授权码发送至所述源客户端,以使所述源客户端将所述授权码发送至所述目标客户端,由所述目标客户端将所述授权码发送至所述登录中心;

12、所述登录中心接收所述目标客户端发送的授权码,根据所述授权码,生成令牌,并发送至所述目标客户端,以使所述目标客户端将所述令牌发送至所述登录中心;

13、所述登录中心接收所述令牌,根据所述令牌,提取所述当前用户对应的用户信息,并发送至所述目标客户端,以使所述目标客户端根据所述用户信息进行自登录。

14、优选地,所述所述登录中心根据所述互通凭证,生成与所述目标客户端以及所述当前用户对应的授权码,包括:

15、所述登录中心获取合法客户端清单,判断所述源客户端是否在所述合法客户端清单中,若是,则通过验证;

16、向所述源客户端发送验证请求,所述验证请求包括所述当前用户对应的token,以使所述源客户端接收登录中心发送的验证请求,验证所述当前用户对应的token是否有效,若是,则由源客户端将所述当前用户的用户身份发送至登录中心;

17、所述登录中心接收所述当前用户的用户身份,根据所述当前用户的用户身份,判断所述当前用户是否在所述登录中心登录,若否,则所述登录中心向所述源客户端的后端发送登录用户检索请求,接收所述源客户端发送的所述当前用户的用户信息,根据所述用户信息进行自登录,以实现所述当前用户在所述登录中心登录,生成与所述目标客户端以及所述当前用户对应的授权码。

18、另一个方面,提供了一种基于多客户端独立安全体系场景下的单点互通方法,应用于任一目标客户端,所述方法包括:

19、目标客户端接收所述源客户端发送的授权码,其中,所述授权码是登录中心根据互通凭证生成的,所述授权码与所述目标客户端以及所述当前用户对应,所述互通凭证是源客户端响应于当前用户对目标客户端的登录请求生成的,所述当前用户已登录所述源客户端,所述互通凭证包括所述源客户端、所述当前用户对应的token与所述目标客户端;

20、所述目标客户端向登录中心发送所述授权码,以使所述登录中心根据所述授权码,生成令牌,并将所述令牌发送至所述目标客户端;

21、所述目标客户端接收所述令牌,将所述令牌发送至所述登录中心,以使所述登录中心根据所述令牌,提取所述当前用户对应的用户信息,并发送至所述目标客户端;

22、所述目标客户端接收所述用户信息,根据所述用户信息进行自登录。

23、另一个方面,提供了一种基于多客户端独立安全体系场景下的单点互通装置,应用于源客户端,所述装置包括:

24、互通凭证生成模块,用于源客户端响应于当前用户对目标客户端的登录请求,生成互通凭证,其中,所述当前用户已登录所述源客户端,所述互通凭证包括所述源客户端、所述当前用户对应的token与所述目标客户端;

25、互通凭证发送模块,用于所述源客户端将所述互通凭证发送至登录中心,以使所述登录中心根据所述互通凭证,生成与所述目标客户端以及所述当前用户对应的授权码,并将所述授权码发送至所述源客户端;

26、第一授权码接收模块,用于所述源客户端接收所述授权码,将所述授权码发送至所述目标客户端,以使所述目标客户端将所述授权码发送至所述登录中心,由所述登录中心根据所述授权码,生成令牌,并发送至所述目标客户端,由所述目标客户端将所述令牌发送至所述登录中心,由所述登录中心根据所述令牌,提取所述当前用户对应的用户信息,并发送至所述目标客户端,由所述目标客户端根据所述用户信息进行自登录。

27、另一个方面,提供了一种基于多客户端独立安全体系场景下的单点互通装置,应用于登录中心,所述装置包括:

28、互通凭证接收模块,用于登录中心接收互通凭证,其中,所述互通凭证是源客户端响应于当前用户对目标客户端的登录请求生成的,所述当前用户已登录所述源客户端,所述互通凭证包括所述源客户端、所述当前用户对应的token与所述目标客户端;

29、授权码生成模块,用于所述登录中心根据所述互通凭证,生成与所述目标客户端以及所述当前用户对应的授权码,并将所述授权码发送至所述源客户端,以使所述源客户端将所述授权码发送至所述目标客户端,由所述目标客户端将所述授权码发送至所述登录中心;

30、令牌生成模块,用于所述登录中心接收所述目标客户端发送的授权码,根据所述授权码,生成令牌,并发送至所述目标客户端,以使所述目标客户端将所述令牌发送至所述登录中心;

31、第一令牌接收模块,用于所述登录中心接收所述令牌,根据所述令牌,提取所述当前用户对应的用户信息,并发送至所述目标客户端,以使所述目标客户端根据所述用户信息进行自登录。

32、另一个方面,提供了一种基于多客户端独立安全体系场景下的单点互通装置,应用于任一目标客户端,所述装置包括:

33、第二授权码接收模块,用于目标客户端接收所述源客户端发送的授权码,其中,所述授权码是登录中心根据互通凭证生成的,所述授权码与所述目标客户端以及所述当前用户对应,所述互通凭证是源客户端响应于当前用户对目标客户端的登录请求生成的,所述当前用户已登录所述源客户端,所述互通凭证包括所述源客户端、所述当前用户对应的token与所述目标客户端;

34、授权码发送模块,用于所述目标客户端向登录中心发送所述授权码,以使所述登录中心根据所述授权码,生成令牌,并将所述令牌发送至所述目标客户端;

35、第二令牌接收模块,用于所述目标客户端接收所述令牌,将所述令牌发送至所述登录中心,以使所述登录中心根据所述令牌,提取所述当前用户对应的用户信息,并发送至所述目标客户端;

36、用户信息接收模块,用于所述目标客户端接收所述用户信息,根据所述用户信息进行自登录。

37、另一个方面,提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述基于多客户端独立安全体系场景下的单点互通方法。

38、另一个方面,提供了一种计算机设备,包括存储介质、处理器以及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述基于多客户端独立安全体系场景下的单点互通方法。

39、上述基于多客户端独立安全体系场景下的单点互通方法,受众绑定与最小权限:为目标客户端单独申请令牌,杜绝跨系统令牌复用,降低越权与横向移动风险。不改造各自认证体系:在不改变各自客户端既有安全框架的前提下完成互通,实施成本低、风险小。可插拔编排:责任链/事件委派(delegator/listener/way)将校验、授权码、换取令牌、会话建立拆分为可独立演进的步骤,便于治理与扩展。全链路安全与可审计:互通凭证、授权码均是一次性且短时效的,防止重放攻击,登录中心保存有合法客户端清单,以防止非法系统攻击。不依赖中心门户ui的二次选择:在不改变各客户端既有认证体系的前提下,通过源客户端发起,登录中心生成授权码,生成专属的令牌,目标客户端根据其专属的令牌拉取当前用户的用户信息,从而实现目标客户端的自登录,建立本地会话,实现了当前用户直接从源客户端跳转到目标客户端,无需回到中心门户的页面进行二次选择。用户体验好:如果当前用户在登录中心未登录,登录中心不会展示登录页,而是主动向源客户端的后端发送登录用户检索请求,以完成自身侧自登录,即不会将登录中心的自登录过程展示给当前用户,更不会让当前用户人为登录过源客户端后,还要再人为登录该登录中心,实现静默授权,提高用户从源客户端一键跳至目标客户端的体验。

40、上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。