一种单点登录方法及装置与流程

文档序号:12809469阅读:409来源:国知局
一种单点登录方法及装置与流程

本发明涉及计算机技术领域,尤其涉及一种单点登录方法及装置。



背景技术:

单点登录(singlesignon),简称为sso,是目前比较流行的企业业务整合的解决方案之一。sso的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。通常情况下运维内控审计系统、4a系统都包含此项功能,目的是简化账号登录过程并保护账号和密码安全,对账号进行统一管理。

目前的单点登录执行过程一般为:当用户第一次访问应用系统1的时候,因为还没有登录,会被引导到认证系统中进行登录;根据用户提供的登录信息,认证系统进行身份校验,如果通过校验,应该返回给用户一个认证的凭据ticket;用户再访问其他应用的时候,就会将这个ticket附加到请求上,作为该用户认证的凭据,应用系统接收到请求之后会把ticket送到认证系统进行校验,检查ticket的合法性。如果通过校验,用户就可以在不用再次登录的情况下直接访问应用系统2,或者是应用系统3、4了。

虽然目前的单点登录系统在登录后,共享登录信息的方案使用起来很方便,但是它需要将所用的登录信息加以统一,缺乏灵活性,例如单点登录系统中的有个账号叫zhangsan,那在应用系统1,应用系统2,应用系统3中也应该有同样的一个账号zhangsan,这样才能实现账号信息的共享。因此,目前的单点登录系统在应用的灵活性上还存在较大缺陷,同时,由于使用了相同的登录信息,对于用户的个人信息安全也存在较大的安全隐患。



技术实现要素:

有鉴于此,本发明提供一种单点登录方法及装置,主要目的在于保证登录信息差别化的同时实现单点登录,以提高单点登录系统的应用灵活性, 进而增强用户个人信息的安全性。

为达到上述目的,本发明主要提供如下技术方案:

一方面,本发明提供了一种单点登录方法,该方法包括:

获取单点登录系统的登录权限,所述登录权限用于关联第三方应用程序的登录权限以便于登录所述第三方应用程序;

获取第三方应用程序的登录验证请求;

根据所述登录验证请求,判断所述单点登录系统的登录权限是否能够登录所述第三方应用程序;

若有权限,则自动登录所述第三方应用程序。

另一方面,本发明还提供了一种单点登录装置,该装置包括:

第一获取单元,用于获取单点登录系统的登录权限,所述登录权限用于关联第三方应用程序的登录权限以便于登录所述第三方应用程序;

第二获取单元,用于获取第三方应用程序的登录验证请求;

判断单元,用于根据所述第二获取单元获取的登录验证请求,判断所述单点登录系统的登录权限是否能够登录所述第三方应用程序;

登录单元,用于当所述判断单元判断有权限时,自动登录所述第三方应用程序。

依据上述本发明所提出的单点登录方法及装置,通过在单点登录系统中设置与第三方应用程序的登录权限,在用户需要登录第三方应用程序时,判断该用户是否具有登录第三方应用程序的权限,并为具有权限的用户提供自动登录服务。和现有的单点登录的方式相比,本发明所采用的单点登录方法通过权限的设置与关联弱化用户登录对具体用户账号等信息的需求程度,根据第三方应用程序所关联的登录权限来确定登录的用户信息。因此,本发明不需将系统中第三方应用程序的账号信息相统一,只需根据不同的登录权限关联不同的账号信息,再与单点登录系统中的登录权限相关联即可。在实际的使用中,能够灵活的进行账号信息的关联操作,且可以进行多账号的关联。同时,由于不需要对第三方应用程序的账号信息加以修改,就能够保障各第三方应用程序登录信息的差异化,从而确保用户个人信息的安全性。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了本发明实施例提出的一种单点登录方法的流程图;

图2示出了本发明实施例提出的另一种单点登录方法的流程图;

图3示出了本发明实施例提出的一种单点登录装置的组成框图;

图4示出了本发明实施例提出的另一种单点登录装置的组成框图。

具体实施方式

下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。

本发明实施例提供了一种单点登录的方法,如图1所示,该方法应用于登录系统中的应用程序,通过本方法能够快捷方便的登录统一系统下的不同应用程序,具体步骤包括:

101、获取单点登录系统的登录权限。

单点登录系统在本发明实施例中可以看做是操作系统中的一个应用程序或者是系统功能、插件等。通过该单点登录系统,用户对于该系统中存在关联关系的应用,只需要进行一次用户登录操作,就可以在开启关联应用程序时自动完成用户登录操作。

单点登录系统的登录权限包括用户在登录该系统是所需要的登录信息,以及与该系统相关联的第三方应用程序的登录权限。需要说明的是,根据登录权限的高低,一个应用程序可以由多个不同的账户登录信息。因此,将登录权限进行关联也是将应用程序中多组不同登录信息与单点登录 系统相关联。

获取单点登录系统的登录权限需要先登录该系统,在系统通过身份验证后再获取相关的登录权限。

102、获取第三方应用程序的登录验证请求。

在登录到单点登录系统后,当用户再打开其他的第三方应用程序时(该应用为需要用户通过身份验证后才能继续操作的应用),一般会要求用户提供登录信息加以验证,常见的是要求输入用户名和密码等信息。此时,本发明实施例中的单点登录系统就会自动获取该第三方应用程序的登录验证请求。

103、根据登录验证请求,判断单点登录系统的登录权限是否能够登录第三方应用程序。

对所获取的第三方应用程序的登录验证请求进行分析,判断单点登录系统的登录权限的关联关系中,是否有发送登录验证请求的第三方应用程序,如果不存在,则说明单点登录系统无权登录该第三方应用程序,要想登录则需要再单点登录系统设置中关联该第三方应用程序的登录权限;而如果存在,则说明单点登录系统与该第三方应用程序的登录权限已关联,具有相关权限内的登录信息。

104、若有权限,则自动登录第三方应用程序。

在确认了第三方应用程序为已关联的应用后,由单点登录系统根据相应权限中的登录信息对第三方应用程序的登录验证请求进行响应,登录到该应用程序中。

上述的登录验证过程完全由单点登录系统来操作,在用户看来只是选择打开应用程序后,便直接登录该应用,或者是无法登录并提示用户到单点登录系统中将该应用的登录权限进行关联设置。

结合上述的实现方式可以看出,本发明实施例所采用的单点登录方法,通过在单点登录系统中设置与第三方应用程序的登录权限,在用户需要登录第三方应用程序时,判断该用户是否具有登录第三方应用程序的权限,并为具有权限的用户提供自动登录服务。和现有的单点登录的方式相比,本发明所采用的单点登录方法通过权限的设置与关联弱化用户登录对具体 用户账号等信息的需求程度,根据第三方应用程序所关联的登录权限来确定登录的用户信息。因此,本发明不需将系统中第三方应用程序的账号信息相统一,只需根据不同的登录权限关联不同的账号信息,再与单点登录系统中的登录权限相关联即可。在实际的使用中,能够灵活的进行账号信息的关联操作,且可以进行多账号的关联。同时,由于不需要对第三方应用程序的账号信息加以修改,就能够保障各第三方应用程序登录信息的差异化,从而确保用户个人信息的安全性。

为了更加详细地说明本发明提出的一种单点登录方法,本发明实施例将通过具体的举例加以说明单点登录的过程,如图2所示,该方法具体的步骤包括:

201、建立单点登录系统与第三方应用程序的登录权限的关联映射关系表。

在关联映射关系表中,记录有与单点登录系统相关联的所有第三方应用程序的登录权限,通过这些登录权限,单点登录系统可以帮助用户直接登录第三方应用程序。其中,同一个应用程序还可以与单点登录系统同时关联多个登录权限,如管理员权限、用户权限,不同的权限在登录应用程序后也会具有不同的操作权限。而每个登录权限中还至少对应一个账户登录信息。

此外,在该关联映射关系表中,还映射有单点登录系统的登录信息,将该登录信息与所有第三方应用程序的登录权限中的账户登录信息进行关联映射。

202、获取单点登录系统的登录权限。

要获取单点登录系统的登录权限,首先是要登录该系统。一般的登录需要获取相应的登录信息。在本发明实施例中,提供两种获取单点登录系统的登录信息方式,一种是由单点登录系统通过系统的登录界面获取用户输入的登录信息来登录系统,这种也是最传统的一种登录方式。而另一种则是由单点登录系统获取用户在登录其他应用程序时所输入的登录信息,并判断该应用程序是否为单点登录系统已经进行登录关联的关联应用程序,如果是,则根据201中的映射表获取单点登录系统的登录信息,进行 自动登录。例如,系统中的qq软件与单点登录系统进行了登录关联,则当用户手动登录qq后,单点登录系统也将自动登录,并实时获取用户进行其他应用程序的登录操作。

203、获取第三方应用程序的登录验证请求。

本步骤同上述102步骤,具体内容可参考102中的详细描述,此处不再赘述。

204、根据登录验证请求,判断单点登录系统的登录权限是否能够登录第三方应用程序。

在获取到第三方应用程序的登录验证请求后,需要先对该请求进行解析,以便于系统能够识别出该请求是由哪一个第三方应用程序所发出的,通过解析至少可以得到该第三方应用程序的名称信息,以此就可以在上述的关联映射关系表中进行匹配查找,判断该第三方应用程序是否与单点登录系统相关联,即判断单点登录系统是否具有登录该第三方应用程序的权限。若第三方应用程序没有进行关联,则系统会提示用户无法自动登录,并将该应用程序的登录界面提供给用户,同时,告知用户可以在单点登录系统中设置该第三方应用程序的关联权限信息。而当该第三方应用程序为已经关联的应用时,系统将执行步骤205。

205、若有权限,则自动登录第三方应用程序。

在关联映射关系表中查找第三方应用程序所关联的登录权限,再根据登录权限获取对应的登录信息,最后利用该登录信息自动登录第三方应用程序。其中,当一个应用程序关联有多个登录权限时,系统可以根据预置的登录策略在多个登录权限中选择一个,例如根据权限的高低进行选择,或者是根据,也可以向用户提供一个登录权限的选择界面,根据用户的选择确定一个登录权限。此外,登录第三方应用程序的登录信息包括固定的账号信息,包括用户名以及密码的信息,也可以是根据所关联的登录权限为用户分配一个临时的登录账号信息,该登录信息仅限与本次登录使用,退出该应用时链式登录账号信息也随之作废。

根据上述的描述,以具体的事例说明详细的单点登录流程:单点登录系统(以下简称系统1)的登录用户为abc,在该系统1中存在有3个相 关联的应用程序分别为应用1、应用2和应用3。应用1与系统1关联的权限为管理员权限,应用2和应用3关联的用户权限。首先,是用户输入abc直接登录系统1,或者是通过输入登录信息登录应用3,而系统1通过应用3的登录信息查找出系统1的登录信息abc并进行自动登录,完成系统1的登录步骤后,由系统1实时地获取应用1或应用2等关联应用的登录验证请求,当用户点击登录应用1时,系统1将根据应用1发送登录验证请求查找关联映射表中对应于应用1的登录权限,再以所关联的管理员权限中的登录信息(如用户名为admin)进行登录验证,通过验证后,将进入应用1的界面展示给用户。其中,关联映射表中的映射关系为系统1的登录信息abc对应于应用的登录权限(即管理员权限和用户权限),而每个应用的登录权限还对应于具体的登录信息(如admin)。如此,系统1的登录信息就与各个应用中的登录信息相对应,并且应用中的登录信息可以为多个不同的登录信息。

进一步的,作为对上述方法的实现,本发明实施例提供了一种单点登录装置,该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。该装置可以设置在具有操作系统的智能设备中,如图3所示,该装置包括:

第一获取单元31,用于获取单点登录系统的登录权限,所述登录权限用于关联第三方应用程序的登录权限以便于登录所述第三方应用程序;

第二获取单元32,用于获取第三方应用程序的登录验证请求;

判断单元33,用于根据所述第二获取单元32获取的登录验证请求,判断所述第一获取单元31获取的单点登录系统的登录权限是否能够登录所述第三方应用程序;

登录单元34,用于当所述判断单元33判断有权限时,自动登录所述第三方应用程序。

进一步的,如图4所示,所述第一获取单元31包括:

获取模块311,用于获取单点登录系统的登录信息;

登录获取模块312,用于根据所述获取模块311获取的登录信息登录所 述单点登录系统,获取登录权限。

进一步的,所述获取模块311还用于,根据客户端登录关联应用程序的登录信息获取所述单点登录系统的登录信息,所述关联应用程序是与所述单点登录系统的登录权限相关联的应用程序;或者是通过所述单点登录系统的登录界面获取登录信息。

进一步的,如图4所示,所述装置还包括:

建立单元35,用于在判断单元33判断所述单点登录系统的登录权限是否能够登录所述第三方应用程序之前,建立所述单点登录系统与所述第三方应用程序的登录权限的关联映射关系表。

进一步的,如图4所示,所述判断单元33包括:

获取模块331,用于根据所述登录验证请求获取所述第三方应用程序的信息,所述信息至少包括第三方应用程序的名称;

判断模块332,用于在所述关联映射关系表中,根据所述获取模块331获取的信息判断所述第三方应用程序的登录权限与所述单点登录系统的登录权限是否相关联。

进一步的,所述装置中的登录权限至少包括下述中的一种:管理员权限、用户权限。

进一步的,如图4所示,所述登录单元34包括:

获取模块341,用于根据所述第三方应用程序的登录权限,获取对应的登录信息;

登录模块342,用于利用所述获取模块341获取的登录信息自动登录所述第三方应用程序。

综上所述,本发明实施例所采用的单点登录方法及装置,通过在单点登录系统中设置与第三方应用程序的登录权限,在用户需要登录第三方应用程序时,判断该用户是否具有登录第三方应用程序的权限,并为具有权限的用户提供自动登录服务。和现有的单点登录的方式相比,本发明所采用的单点登录方法通过权限的设置与关联弱化用户登录对具体用户账号等信息的需求程度,根据第三方应用程序所关联的登录权限来确定登录的用户信息。因此,本发明不需将系统中第三方应用程序的账号信息相统一, 只需根据不同的登录权限关联不同的账号信息,再与单点登录系统中的登录权限相关联即可。在实际的使用中,能够灵活的进行账号信息的关联操作,且可以进行多账号的关联。同时,由于不需要对第三方应用程序的账号信息加以修改,就能够保障各第三方应用程序登录信息的差异化,从而确保用户个人信息的安全性。

所述单点登录装置包括处理器和存储器,上述第一获取单元、第二获取单元、判断单元和登录单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。

处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来实现简化单点登录器的播放,特别是针对在单点登录意外中断时的视频续播功能。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram),存储器包括至少一个存储芯片。

本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:获取单点登录系统的登录权限,所述登录权限用于关联第三方应用程序的登录权限以便于登录所述第三方应用程序;获取第三方应用程序的登录验证请求;根据所述登录验证请求,判断所述单点登录系统的登录权限是否能够登录所述第三方应用程序;若有权限,则自动登录所述第三方应用程序。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中 的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。存储器是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载 波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1