掌桥专利:专业的专利平台
掌桥专利
首页

易重构单点登录系统的方法、装置、介质和设备

文献发布时间:2023-06-19 09:43:16


易重构单点登录系统的方法、装置、介质和设备

技术领域

本发明示例性实施例涉及数据处理技术领域,尤其涉及一种易重构单点登录系统的方法、装置、介质和设备。

背景技术

单点登录,其定义为在多个应用系统中,用户只需要登录一次即可得到授权,无需再登录其它系统进而得以访问所有相互信任的应用系统。

随着信息化技术的不断发展,从政府部门到企业以及高校等,都建立了相关的管理系统。在发展的过程中,为了各部门的统一管理及方便用户办理业务,很多公司以及企业都使用了单点登录系统,虽然单点登录系统方便了广大用户,但在如今信息技术更新比较快,系统在使用过程中也会经常的更新,很多情况下会出现登录系统无法进入子系统,而造成这种问题的主要原因就是登录系统与子系统之间存在兼容性的问题。

兼容问题无法忽视,因为子系统和用户登录系统可能采用不同的程序语言以及系统可能由不同公司所提供,因此常出现无法单点登录的问题,如何提高单点登录过程中的兼容问题是业内亟需解决的重要问题之一。

发明内容

有鉴于此,本发明示例性实施例的目的在于提出一种易重构单点登录系统的方法、装置、介质和设备,以解决目前由于系统不兼容时出现的单点登录异常的问题。

基于上述目的,第一方面,本发明示例性实施例提供了一种易重构单点登录系统的方法,所述方法包括:

当用户通过授权的统一认证信息登录子系统失败时,获取所述子系统的程序语言,根据所述程序语言在所述统一认证信息的认证端口对所述统一认证信息进行重构,以生成重构认证信息;

向所述子系统的认证端口发送所述重构认证信息,以使所述用户再次登录所述子系统时根据所述重构认证信息与认证中心进行交互。

结合上述说明,在本发明实施例另一种可能的实施方式中,所述方法还包括:

在用户通过授权的统一认证信息登录子系统失败之前,在单点登录系统的认证中心以及各子系统预先设置的重构模块,所述重构模块用于监测登录操作是否成功,并且在登录不成功时对已生成的统一认证信息进行重构以得到重构认证信息,以使登录能够根据所述重构认证信息成功登录所述子系统。

结合上述说明,在本发明实施例另一种可能的实施方式中,所述向所述子系统的认证端口发送所述重构认证信息,以使所述用户再次登录所述子系统时根据所述重构认证信息与认证中心进行交互,包括:

对所述用户的全局会话进行监听;

当所述全局会话中的一个局部会话失败时,向所述子系统的认证端口发送所述重构认证信息,在所述子系统中生成新的局部会话取代之前的局部会话;

根据所述新的局部会话向所述用户返回对应的反馈信息。

结合上述说明,在本发明实施例另一种可能的实施方式中,所述方法还包括:

当所述用户退出所述子系统时,建立所述用户与所述重构认证信息之间的重构标记,以使所述用户下次登录所述子系统时能够调用保存的所述重构认证信息。

结合上述说明,在本发明实施例另一种可能的实施方式中,所述方法还包括:

响应于所述用户发起的销毁请求,以将所述用户在登录所述子系统时使用的统一认证信息进行销毁;

当所述用户下次登录所述子系统时,直接向所述用户发送重构认证信息,以使所述用户根据所述重构认证信息成功登录所述子系统。

第二方面,本发明还提供了一种易重构单点登录系统的装置,所述装置包括:

重构模块,用于当用户通过授权的统一认证信息登录子系统失败时,获取所述子系统的程序语言,根据所述程序语言在所述统一认证信息的认证端口对所述统一认证信息进行重构,以生成重构认证信息;

交互模块,用于向所述子系统的认证端口发送所述重构认证信息,以使所述用户再次登录所述子系统时根据所述重构认证信息与认证中心进行交互。

上述的装置,所述装置还包括:

预设置模块,用于在用户通过授权的统一认证信息登录子系统失败之前,在单点登录系统的认证中心以及各子系统预先设置的重构模块,所述重构模块用于监测登录操作是否成功,并且在登录不成功时对已生成的统一认证信息进行重构以得到重构认证信息,以使登录能够根据所述重构认证信息成功登录所述子系统。

上述的装置,所述交互模块还用于:

对所述用户的全局会话进行监听;

当所述全局会话中的一个局部会话失败时,向所述子系统的认证端口发送所述重构认证信息,在所述子系统中生成新的局部会话取代之前的局部会话;

根据所述新的局部会话向所述用户返回对应的反馈信息。

第三方面,本发明还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的易重构单点登录系统的方法。

第四方面,本发明还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行上述的易重构单点登录系统的方法。

从上面所述可以看出,本发明示例性实施例提供的易重构单点登录系统的方法、装置、介质和设备,通过获取所述子系统的程序语言,根据所述程序语言在所述统一认证信息的认证端口对所述统一认证信息进行重构以生成重构认证信息,并且使用户在单点登录过程中能够通过重构认证信息成功登录更新或升级后的子系统,以解决单点登录系统由于兼容性问题导致的登录失败问题。

附图说明

为了更清楚地说明本发明示例性实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明示例性实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明示例性实施例单点登录系统组成示意图;

图2为本发明示例性实施例的方法流程基本示意图;

图3为本发明示例性实施例易重构单点登录系统模块组成结构示意图;

图4为本发明示例性实施例的装置结构示意图;

图5为本发明示例性实施例的设备示意图。

具体实施方式

为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。

需要说明的是,除非另外定义,本发明示例性实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本发明示例性实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。

图1为单点登录系统的结构示意图,单点登录(Single Sign On,简称SSO)是指在多系统应用群中存在一个认证中心,只有认证中心能够接受用户的登录用户名和密码等安全信息,其它系统不提供登录入口,只接受认证中心的间接授权,间接授权通过统一认证信息(统一令牌)实现,SSO中心认证用户名和密码没有问题时,创建授权令牌,在接下来的跳转过程中,授权令牌作为参数发送给各个子系统,子系统收到了授权令牌即得到了授权,可以基于此创建局部会话,局部会话登录方式和单系统的登录方式相同,上述为单点登录的原理。

用户登录成功之后,会与sso认证中心及各个子系统建立会话,用户与sso认证中心建立的会话称为全局会话,用户与各个子系统建立的会话称为局部会话,局部会话建立之后,用户访问子系统受保护资源将不再通过sso认证中心,全局会话与局部会话存在一定的约束关系。

本发明涉及一种易重构单点登录系统的方法、装置、介质和设备,其主要运用于单点登录系统的子系统由于兼容性问题导致的无法登录的场景中,其基本思想是:预设置重构模块,以获取所述子系统的程序语言,根据所述程序语言在所述统一认证信息的认证端口对所述统一认证信息进行重构以生成重构认证信息,使用户在单点登录过程中能够通过重构认证信息成功登录更新或升级后的子系统,解决目前的子系统兼容性导致的登录失败问题。

本实施例可适用于带有认证中心模块的智能型终端中以进行易重构单点登录系统的情况中,该方法可以由认证中心的装置来执行,其中该装置可以由软件和/或硬件来实现,一般地可集成于智能终端中,或者终端中的中心控制模块来控制,如图2所示,为本发明示例性实施例的易重构单点登录系统的基本流程示意图,所述方法具体包括如下步骤:

在步骤110中,当用户通过授权的统一认证信息登录子系统失败时,获取所述子系统的程序语言,根据所述程序语言在所述统一认证信息的认证端口对所述统一认证信息进行重构,以生成重构认证信息;

接入SSO单点登录系统的各子系统,其采用的程序语言可能是不同的,而且在其各自的升级或维护过程中,其程序语言也可能发生改变,因此,在初接入时设置的端口生成的统一认证信息,由于系统环境的改变,可能出现兼容以及无法登录的问题。

获取子系统的程序语言,根据所述子系统对应的程序语言对所述统一认证信息进行重构,包括:在SSO单点登录系统的认证中心与各子系统预先设置的重构模块,所述重构模块用于监测登录操作是否成功,并且在登录不成功时对已生成的统一认证信息进行重构以得到重构认证信息,以使登录能够根据所述重构认证信息成功登录所述子系统。

所述重构模块包括在认证中心与各子系统的对应接口设置的语言模块,其能够根据语言模块识别到的各子系统的程序语言进行匹配,当用户使用统一认证信息登录子系统失败时,此时由重构模块监测到此失败行为,由其语言模块识别该子系统的程序语言,并根据该程序语言匹配并重新构造一个新的重构认证信息,该重构认证信息是在原统一认证信息的基础上进行改造而重新构成,也可以是由认证中心根据检测到的当前子系统的程序语言,或根据用户登录失败原因而针对性地重新构造以生成所述重构认证信息,实现了认证中心与各子系统之间的登录失败机制。

在步骤120中,向所述子系统的认证端口发送所述重构认证信息,以使所述用户再次登录所述子系统时根据所述重构认证信息与认证中心进行交互。

各子系统与所述认证中心在信息交互时均通过各自的认证端口进行,向所述子系统的认证端口发送修改后的重构认证信息,使得用户能够根据该重构认证信息成功登录所述子系统。

本发明的方法,通过获取所述子系统的程序语言,根据所述程序语言在所述统一认证信息的认证端口对所述统一认证信息进行重构以生成重构认证信息,并且使用户在单点登录过程中能够通过重构认证信息成功登录更新或升级后的子系统,以解决单点登录系统由于兼容性问题导致的登录失败问题。

所述向所述子系统的认证端口发送所述重构认证信息,以使所述用户再次登录所述子系统时根据所述重构认证信息与认证中心进行交互,包括:

对所述用户的全局会话进行监听;监听可查看所述用户是否在开启多线的局部会话,用户是否经授权,等。

当所述全局会话中的一个局部会话失败时,向所述子系统的认证端口发送所述重构认证信息,在所述子系统中生成新的局部会话取代之前的局部会话;

用户访问其中一个子系统的受保护资源时,所述子系统发送所述用户未登录时,则将跳转至SSO单点登录系统的认证中心,认证中心将引导用户至登录界面,用户输入相应的用户名和密码申请登录,认证中心检验用户信息,创建用户与SSO的局部会话,获取统一认证信息,当认证中心的统一认证信息失效时,此时通过认证中心预设的重构模块向所述子系统发送一个重构认证信息,并根据所述重构认证信息重新引导登录界面,用户根据该新的登录界面即可通过认证,成功登录所述子系统。

本发明示例性实施例的方法中,用户登录的步骤并非是必然的,而是可以省略的,即认证中心在检测到各子系统的版本更新时,由其认证中心的认证端口以及对应子系统的认识端口中对SSO统一认证信息进行一次重构,使得用户能够在登录系统时快速登录本无法一次成功登录的所述子系统。

根据所述新的局部会话向所述用户返回对应的反馈信息;局部会话中会向用户返回对应的反馈信息,所述反馈信息包括认证中心统一认证信息的地址信息及其它相关参数,以便于对重新构造所述重构认证信息。

本发明示例性实施例的一种实施方式中,所述方法还包括:当所述用户退出所述子系统时,建立所述用户与所述重构认证信息之间的重构标记,以使所述用户下次登录所述子系统时能够调用保存的所述重构认证信息,所述重构标记可为所述用户与所述重构认证信息之间的关联关系,当用户退出后再次登记时,可根据用户ID快速得到所述重构认证信息并快速登录所述子系统。

本发明示例性实施例的一种实施方式中,所述方法还包括销毁认证中心返回的特定子系统的统一认证信息的方式,这一过程包括:

响应于所述用户发起的销毁请求,以将所述用户在登录所述子系统时使用的统一认证信息进行销毁;

当所述用户下次登录所述子系统时,直接向所述用户发送重构认证信息,以使所述用户根据所述重构认证信息成功登录所述子系统。

销毁请求由用户向SSO单点登录系统请求,SSO单点登录系统根据建立的局部会话ID获取统一认证信息,向SSO认证中心发起注销请求,当所述子系统的统一认证信息还有效时,需要对全局会话进行销毁,并取出所有使用所述全局会话建立的统一认证信息的系统地址,注销所述子系统的局部会话的系统地址所附带的统一认证信息,并以重构认证信息替换,并在下次登录时,根据所述重构认证信息引导用户登录所述子系统。

本发明示例性实施例的一种实施方式中,结合图3所示,本发明的装置可包括用户登录系统、信息处理系统、多个子系统;所述用户登录系统包含信息识别模块、子系统数据存储模块、系统重构修改模块;所述信息处理系统包含数据接受模块、数据转换模块、数据输出与反馈模块;所述用户登录系统与多个所述子系统中均设置有重构程序修改端口。作为优选的,所述用户登录系统中还设置有用户登录认证模块。作为优选的,所述用户登录系统还包含用户登录记录模块。作为优选的,所述信息处理系统中设置有连接所述用户登录系统与多个所述子系统的重构程序修改反馈模块。作为优选的,所述用户登录系统、信息处理系统和多个所述子系统之间通过网络连接。

重构程序修改反馈模块预设置于单点登录系统的认证中心的通讯端口以及各子系统的通讯端口,用户登录系统时首先进行用户登录认证,这其中包括用户用户信息识别的信息识别模块,子系统数据存储模块对子系统的相关数据进行存储以及系统重构修改模块,通过IP通信网的连接实现与信息处理系统的通讯,所述信息处理系统包括信息接受模块、数据转换模块以及数据输出反馈模块,信息接受模块用于信息接受用户信息,数据转换模块用于对于登录信息的转换,数据输出反馈模块用于对系统重构修改模块对认证信息重构修改后的反馈,接下来通过IP通信网将重构修改后的用户登录信息反馈至对应的子系统A/B/C,在此过程中重构程序修改反馈模块接受各子系统对于重构后的用户登录信息是否能够成功登录的反馈。

与现有技术相比,本发明的有益效果在于:在用户登录系统与多个子系统中设置有连接重构系统反馈模块,可以方便在后期进行用户登录系统以及子系统更新时相互之间兼容。

所述信息处理系统中设置有连接所述用户登录系统与多个所述子系统的重构程序修改反馈模块,所述用户登录系统、信息处理系统和多个所述子系统之间通过网络连接,通过在所述信息处理系统中设置有连接所述用户登录系统与所述多个子系统的重构程序修改反馈模块,可以实现用户登录系统与子系统在更新过程中遇到不兼容问题时能及时报错并提示,使得系统更新时能快速兼容。

可以理解,该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群来执行。

图4为本发明实施例提供的一种易重构单点登录系统的装置的结构示意图,该装置可由软件和/或硬件实现,一般地集成于智能终端中,可通过易重构单点登录系统的方法来实现。如图所示,本实施例可以以上述实施例为基础,提供了一种易重构单点登录系统的装置,其主要包括了重构模块410和交互模块420。

其中的重构模块410,用于当用户通过授权的统一认证信息登录子系统失败时,获取所述子系统的程序语言,根据所述程序语言在所述统一认证信息的认证端口对所述统一认证信息进行重构,以生成重构认证信息;

其中的交互模块420,用于向所述子系统的认证端口发送所述重构认证信息,以使所述用户再次登录所述子系统时根据所述重构认证信息与认证中心进行交互。

本发明示例性实施例中,所述装置还包括:

预设置模块,用于在用户通过授权的统一认证信息登录子系统失败之前,在单点登录系统的认证中心以及各子系统预先设置的重构模块,所述重构模块用于监测登录操作是否成功,并且在登录不成功时对已生成的统一认证信息进行重构以得到重构认证信息,以使登录能够根据所述重构认证信息成功登录所述子系统。

本发明示例性实施例中,所述交互模块还用于:

对所述用户的全局会话进行监听;

当所述全局会话中的一个局部会话失败时,向所述子系统的认证端口发送所述重构认证信息,在所述子系统中生成新的局部会话取代之前的局部会话;

根据所述新的局部会话向所述用户返回对应的反馈信息。

上述实施例中提供的易重构单点登录系统的装置可执行本发明中任意实施例中所提供的易重构单点登录系统的方法,具备执行该方法相应的功能模块和有益效果,未在上述实施例中详细描述的技术细节,可参见本发明任意实施例中所提供的易重构单点登录系统的方法。

需要说明的是,本发明示例性实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本发明示例性实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本发明示例性实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。

图5示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。

处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。

存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行本发明实施例的易重构单点登录系统的方法。

输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。

通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。

总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。

需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。

本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序及程序本身的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息,以用于执行本发明实施例的上述技术方案。

所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明示例性实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。

另外,为简化说明和讨论,并且为了不会使本发明示例性实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本发明示例性实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本发明示例性实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本发明示例性实施例。因此,这些描述应被认为是说明性的而不是限制性的。

尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。

本发明示例性实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本发明示例性实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。

相关技术
  • 易重构单点登录系统的方法、装置、介质和设备
  • 单点登录系统的接入方法、装置、存储介质和计算机设备
技术分类

06120112269406