CN114398620A - 单点登录方法、***、电子设备及可读介质 - Google Patents
单点登录方法、***、电子设备及可读介质 Download PDFInfo
- Publication number
- CN114398620A CN114398620A CN202111583717.XA CN202111583717A CN114398620A CN 114398620 A CN114398620 A CN 114398620A CN 202111583717 A CN202111583717 A CN 202111583717A CN 114398620 A CN114398620 A CN 114398620A
- Authority
- CN
- China
- Prior art keywords
- single sign
- verified
- certificate
- data
- mobile application
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Storage Device Security (AREA)
Abstract
本发明实施例提供了一种单点登录方法、***、电子设备及可读介质,业务平台***中保存有移动应用通过接口上报的数字签名和单点登录凭证,所述数字签名为所述移动应用根据应用标识和单点登录凭证生成,所述单点登录凭证为单点登录认证中心为所述移动应用发放的授权登录的凭证;所述方法包括:接收在所述移动应用中登录内嵌页面的登录请求;根据待验证应用标识和待验证单点登录凭证生成待校验数据;当所述待校验数据与所述数字签名匹配时,基于所述单点登录凭证在所述单点登录认证中心进行校验,以在校验通过时在所述移动应用中登录所述内嵌页面。本发明实施例移动应用中登录内嵌页面时进行单点登录,加强单点登录时安全可靠性。
Description
技术领域
本发明实施例涉及单点登录技术领域,特别是涉及一种单点登录方法、一种单点登录***、一种电子设备以及一种计算机可读介质。
背景技术
随着移动应用(APP,Application)的兴起,移动应用内打开内嵌H5页面的场景越发普遍。为了避免内嵌H5页面的二次登录,目前通常是使用单点登录技术实现内嵌H5页面的快速登录。
具体地,单点登录,又称SSO(Single Sign On),指的是对于多个互相信任的业务平台***,用户只要执行一次登录操作,即可访问所有的业务平台***,直到该次登录失效为止。在单点登录环境下,各移动应用将认证功能交由单点登录***完成,而不再使用自身的认证***。目前,单点登录技术已经广泛应用于通信***中。
随着信息安全要求的进一步提升,如何保证单点登录安全可靠,成为一个亟待解决的重要议题。
发明内容
本发明实施例是提供一种单点登录方法、***、电子设备以及计算机可读存储介质,以解决目前单点登录不够安全可靠的问题。
本发明实施例公开了一种单点登录方法,应用于业务平台***,所述业务平台***中保存有移动应用通过接口上报的数字签名和单点登录凭证,所述数字签名为所述移动应用根据应用标识和单点登录凭证生成,所述单点登录凭证为单点登录认证中心为所述移动应用发放的授权登录的凭证;所述方法包括:
接收在所述移动应用中登录内嵌页面的登录请求;所述登录请求中包括待验证应用标识和待验证单点登录凭证;
根据所述待验证应用标识和所述待验证单点登录凭证生成待校验数据;
当所述待校验数据与所述数字签名匹配时,基于所述单点登录凭证在所述单点登录认证中心进行校验,以在校验通过时在所述移动应用中登录所述内嵌页面。
可选地,所述数字签名为所述应用程序通过如下方式生成:所述应用程序,用于获取所述应用程序的应用标识;获取所述单点登录认证中心为所述移动应用发放的单点登录凭证;将所述应用标识和所述单点登录凭证组合后得到复合数据进行数据哈希,得到数据哈希值;采用私钥对所述数据哈希值进行加密处理,得到数字签名。
可选地,所述根据所述待验证应用标识和所述待验证单点登录凭证生成待校验数据,包括:
对所述待验证应用标识和所述待验证单点登录凭证组合后得到待验证复合数据进行数据哈希,得到待验证数据;
在所述根据所述待验证应用标识和所述待验证单点登录凭证生成待校验数据之后,所述方法还包括:
采用与所述私钥对应的公钥对所述数字签名进行解密处理,得到数据哈希值;其中,若所述待验证数据与所述数据哈希值一致,则确定为所述待校验数据与所述数字签名匹配;若所述待验证数据与所述数据哈希值不一致,则确定为所述待校验数据与所述数字签名不匹配。
可选地,所述方法还包括:
当所述待校验数据与所述数字签名不匹配,或者,基于所述单点登录凭证在所述单点登录认证中心进行校验不通过时,通知所述应用程序采用其他方式在所述移动应用中登录所述内嵌页面。
本发明实施例还公开了一种单点登录方法,应用于移动应用,所述移动应用对应的业务平台***中保存有所述移动应用通过接口上报的数字签名和单点登录凭证,所述数字签名为所述移动应用根据应用标识和单点登录凭证生成,所述单点登录凭证为单点登录认证中心为所述移动应用发放的授权登录的凭证;所述方法包括:
向所述业务平台***发送在所述移动应用中登录内嵌页面的登录请求;所述登录请求中包括待验证应用标识和待验证单点登录凭证;所述业务平台***,用于根据所述待验证应用标识和所述待验证单点登录凭证生成待校验数据,并在所述待校验数据与所述数字签名匹配时,基于所述单点登录凭证在所述单点登录认证中心进行校验;
在所述单点登录认证中心校验通过时,在所述移动应用中登录所述内嵌页面。
可选地,在所述向在所述业务平台***发送在所述移动应用中登录内嵌页面的登录请求之前,所述方法还包括:
获取所述应用程序的应用标识;
获取所述单点登录认证中心为所述移动应用发放的单点登录凭证;
对所述应用标识和所述单点登录凭证组合得到复合数据后进行数据哈希,得到数据哈希值;
采用私钥对所述数据哈希值进行加密处理,得到数字签名。
可选地,所述单点登录凭证通过如下方式获取:
向所述单点登录认证中心发送获取请求;所述获取请求中包括用户标识和时间戳,所述单点登录认证中心用于根据所述用户标识、时间戳和随机字符串生成述单点登录凭证;
接收所述述单点登录认证中心发送的所述单点登录凭证。
本发明实施例还公开了一种单点登录***,所述单点登录***包括移动应用、业务平台***和单点登录认证中心,所述业务平台***中保存有所述移动应用通过接口上报的数字签名和单点登录凭证,所述数字签名为所述移动应用根据应用标识和单点登录凭证生成,所述单点登录凭证为单点登录认证中心为所述移动应用发放的授权登录的凭证;其中:
所述移动应用,用于向所述业务平台***发送在所述移动应用中登录内嵌页面的登录请求;所述登录请求中包括待验证应用标识和待验证单点登录凭证;
所述业务平台***,用于根据所述待验证应用标识和所述待验证单点登录凭证生成待校验数据;当所述待校验数据与所述数字签名匹配时,基于所述单点登录凭证在所述单点登录认证中心进行校验,以在校验通过时在所述移动应用中登录所述内嵌页面。
可选地,所述移动应用,用于获取所述应用程序的应用标识;获取所述单点登录认证中心为所述移动应用发放的单点登录凭证;对所述应用标识和所述单点登录凭证组合得到复合数据后进行数据哈希,得到数据哈希值;采用私钥对所述数据哈希值进行加密处理,得到数字签名。
可选地,所述移动应用,用于向所述单点登录认证中心发送获取请求;所述获取请求中包括用户标识和时间戳,所述单点登录认证中心用于根据所述用户标识、时间戳和随机字符串生成述单点登录凭证;接收所述述单点登录认证中心发送的所述单点登录凭证。
可选地,所述业务平台***,用于对所述待验证应用标识和所述待验证单点登录凭证组合后得到待验证复合数据进行数据哈希,得到待验证数据;采用与所述私钥对应的公钥对所述数字签名进行解密处理,得到数据哈希值;其中,若所述待验证数据与所述数据哈希值一致,则确定为所述待校验数据与所述数字签名匹配;若所述待验证数据与所述数据哈希值不一致,则确定为所述待校验数据与所述数字签名不匹配。
可选地,所述业务平台***,用于当所述待校验数据与所述数字签名不匹配,或者,基于所述单点登录凭证在所述单点登录认证中心进行校验不通过时,通知所述应用程序采用其他方式在所述移动应用中登录所述内嵌页面。
本发明实施例还公开了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行存储器上所存放的程序时,实现如本发明实施例所述的方法。
本发明实施例还公开了一个或多个计算机可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如本发明实施例所述的方法。
本发明实施例还公开了一种计算机程序产品,该程序产品被存储在存储介质中,该计算机程序产品被至少一个处理器执行以实现如本发明实施例所述的方法。
本发明实施例包括以下优点:
在本发明实施例中,在业务平台***中保存有移动应用的数字签名,在移动应用中进行单点登录时,业务平台***将接收到在移动应用中登录内嵌页面的登录请求,根据登录请求中待验证应用标识和待验证单点登录凭证生成待校验数据,当待校验数据与数字签名匹配时,可以基于单点登录凭证在单点登录认证中心进行校验,以在校验通过时在移动应用中登录内嵌页面。本发明实施例移动应用中登录内嵌页面时进行单点登录,在单点登录时除了需要通过单点登录认证中心的校验之外,还需要对移动应用的应用标识进行校验,加强单点登录时安全可靠性。
附图说明
图1是本发明实施例中提供的一种单点登录方法的步骤流程图;
图2是本发明实施例中提供一种的数字签名的生成流程示意图;
图3是本发明实施例中提供一种的数字签名校验流程示意图;
图4是本发明实施例中提供的另一种单点登录方法的步骤流程图;
图5是本发明实施例中提供的一种实现单点登录的***架构图;
图6是本发明实施例中提供的一种单点登录***的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
现有的单点登录***,通过ticket(单点登录凭证)进行校验,手段相对单一。如果恶意的第三方获取了合法的ticket,就可以仿冒,或篡改,并通过单点登录***的校验,从而在业务平台***获取用户数据,造成用户数据泄露,甚至财产损失。
针对上述问题,本发明实施例提供了一种安全的单点登录方法,通过数字签名技术,利用复合型数据进行数字签名,保证在单点登录采用数字签名校验时,对移动应用的应用标识进行校验,降低了第三方篡改数字签名中的内容数据的可能性,从而加强单点登录时安全可靠性。
参照图1,示出了本发明实施例中提供的一种单点登录方法的步骤流程图,应用于业务平台***,所述业务平台***中保存有移动应用通过接口上报的数字签名和单点登录凭证,所述数字签名为所述移动应用根据应用标识和单点登录凭证生成,所述单点登录凭证为单点登录认证中心为所述移动应用发放的授权登录的凭证;所述方法具体可以包括如下步骤:
步骤101、接收在所述移动应用中登录内嵌页面的登录请求;所述登录请求中包括待验证应用标识和待验证单点登录凭证。
其中,移动应用是指的安装在手机、平板电脑、可穿戴设备等移动终端中的客户端软件。例如,在手机中安装的、能够为用户提供优惠促销、自助查询、充值交费、玩转3G、业务办理、帮助支持等服务的移动应用。
其中,内嵌页面又称内嵌页面,是一种在移动应用中嵌入网页的技术,基于该技术,移动应用可以加载某个网站的网站页面,然后将其嵌入到移动应用的界面中,从而用户可以通过移动应用浏览到网站页面。由于网站页面保存在后台的服务器中,故而能够适应快速迭代的需求。
在具体实现中,为了实现移动应用中浏览网站的网站网页的需求,采用native+h5的hybrid混合开发模式,其中,native是指的原生***,例如,iOS、Android等本地操作***,h5是指的HTML(Hyper Text MarkupLanguage,超级文本标记语言),用于实现在移动应用中显示网站网页的功能,通过native模式与h5模式的结合,能够在移动应用中展示网站网页,或结合客户端与网站页面实现一定的功能。可以理解,若移动应用为采用native和h5的混合开发模式,相应的,移动应用也分为native登录(移动应用登录)与h5登录(网站网页登录),这两个登录是相互独立的,也就是说,即使移动应用已经登录了,在移动应用登录网站页面时仍需要用户进行h5登录,以获得在移动应用中登录网站页面的授权,若用户需要打开多个网站页面,则用户需要多次执行登录操作,因此可以通过单点登录方式,来避免在移动应用中登录内嵌页面时多次登录。
在本发明实施例中,业务平台***为移动应用的实现各种服务的平台,一个业务平台***下可以管理有多个移动应用。在业务平台***中保存了移动应用通过校验接口上报的数字签名,具体地,移动应用具有对应的应用标识,即应用ID(Identity document,身份标识)信息,可以是移动应用的编码或者名称,移动应用还包括单点登录认证中心为移动应用发放的授权登录的单点登录凭证(ticket),数字签名是移动应用是根据应用标识和单点登录凭证生成,然后移动应用就可以通过校验接口将数字签名上报至业务平台***中保存。
在本发明实施例中,若用户想要在移动应用中登录内嵌页面,即在移动应用中登录网站的网站页面时,可以尝试进行单点登录,此时,在业务平台***中将接收到移动应用发送的在移动应用中登录内嵌页面的登录请求,其中,该登录请求中可以包括待验证应用标识和待验证单点登录凭证,需要对待验证应用标识和待验证单点登录凭证进行验证,以确定是否允许在移动应用中登录内嵌页面。
步骤102、根据所述待验证应用标识和所述待验证单点登录凭证生成待校验数据。
步骤103、当所述待校验数据与所述数字签名匹配时,基于所述单点登录凭证在所述单点登录认证中心进行校验,以在校验通过时在所述移动应用中登录所述内嵌页面。
在本发明实施例中,可以从登录请求中提取出待验证应用标识和待验证单点登录凭证,然后根据待验证应用标识和待验证单点登录凭证生成待校验数据,然后确定待校验数据与数字签名匹配时,若待校验数据与数字签名匹配,则说明在移动应用中的应用标识和单点登录凭证未被篡改,则可以基于单点登录凭证在单点登录认证中心进行进一步的校验,如果在单点登录认证中心也通过校验,则可以在移动应用中登录所述内嵌页面。
在上述单点登录方法中,在业务平台***中保存有移动应用的数字签名,在移动应用中进行单点登录时,业务平台***将接收到在移动应用中登录内嵌页面的登录请求,根据登录请求中待验证应用标识和待验证单点登录凭证生成待校验数据,当待校验数据与数字签名匹配时,可以基于单点登录凭证在单点登录认证中心进行校验,以在校验通过时在移动应用中登录内嵌页面。本发明实施例移动应用中登录内嵌页面时进行单点登录,在单点登录时除了需要通过单点登录认证中心的校验之外,还需要对移动应用的应用标识进行校验,加强单点登录时安全可靠性。
在一示例性实施例中,所述数字签名为所述应用程序可以通过如下方式生成:所述应用程序,用于获取所述应用程序的应用标识;获取所述单点登录认证中心为所述移动应用发放的单点登录凭证;将所述应用标识和所述单点登录凭证组合后得到复合数据进行数据哈希,得到数据哈希值;采用私钥对所述数据哈希值进行加密处理,得到数字签名。
具体地,在生成数字签名时为了保证数据的有效性,使用复合型的复合数据进行数字签名的生成,其中,该复合数据可以由如下数据组合得到:单点登录凭证ticket和应用ID信息。其他的第三方即使获取单点登录凭证ticket,但在内嵌H5页面加载时获取的应用ID信息不匹配,也不能使用单点登录凭证ticket进行单点登录。同时,由于可以采用非对称加密对单点登录凭证ticket和应用ID信息组合得到的复合数据进行数据哈希的处理,得到数据哈希值,最后对数据哈希值采用私有进行加密生成数字签名,第三方也无法篡改数字签名的内容,因此基于数字签名进行校验,保证了校验的合法和安全。
作为一个可选示例,参照图2,在生成数字签名时,首先对单点登录凭证ticket(单点ticket)和应用ID信息进行组合得到复合数据,对复合数据进行数据哈希的处理得到数据哈希值,然后对数据哈希值进行签名私钥加密,生成数字签名。
需要注意的是,移动应用在生成数字签名后,通过校验接口上报业务平台***的校验字段结构为:ticket+数字签名,因此,在业务平台***中,可以先根据数字签名进行校验,然后再数字签名校验通过后,再根据单点登录凭证ticket在单点登录认证平台进行校验,然后若单点登录凭证ticket也校验成功后,就可以在移动应用中登录内嵌页面。通过数字签名和单点登录认证平台双重校验,加强了单点登录的安全可靠性。
在一示例性实施例中,所述步骤102、根据所述待验证应用标识和所述待验证单点登录凭证生成待校验数据,包括:
对所述待验证应用标识和所述待验证单点登录凭证组合后得到待验证复合数据进行数据哈希,得到待验证数据;
在所述根据所述待验证应用标识和所述待验证单点登录凭证生成待校验数据之后,所述方法还包括:
采用与所述私钥对应的公钥对所述数字签名进行解密处理,得到数据哈希值;其中,若所述待验证数据与所述数据哈希值一致,则确定为所述待校验数据与所述数字签名匹配;若所述待验证数据与所述数据哈希值不一致,则确定为所述待校验数据与所述数字签名不匹配。
在本发明实施例中,参照图3,对移动应用提交的待验证应用标识和待验证单点登录凭证组合后,得到待验证复合数据,并对待验证复合数据进行数据哈希的处理,可以得到待验证数据,具体来说,是待验证的数据哈希值,此外,业务平台***会对移动应用提交的数字签名,采用与私钥对应的公钥对数字签名进行解密处理,得到数据哈希值,然后,将待验证的数据哈希值和数字签名的数据哈希值进行匹配,若两者匹配,即两者一致,则可以确定为待校验数据与数字签名匹配,则可以说明移动应用提交的验证应用标识和待验证单点登录凭证未被篡改,则可以进一步在单点登录***平台中基于单点登录凭证ticket进行校验,反之,若两者不匹配,即两者一致,则可以确定为待校验数据与数字签名不匹配,则可以说明移动应用提交的验证应用标识和待验证单点登录凭证很有可能被篡改,则将无需在单点登录***平台中基于单点登录凭证ticket进行校验。
在一示例性实施例中,所述方法还可以包括如下步骤:
当所述待校验数据与所述数字签名不匹配,或者,基于所述单点登录凭证在所述单点登录认证中心进行校验不通过时,通知所述应用程序采用其他方式在所述移动应用中登录所述内嵌页面。
在本发明实施例中,若确定为待校验数据与数字签名不匹配,则可以说明为移动应用提交的验证应用标识和待验证单点登录凭证很有可能被篡改,则将无需在单点登录***平台中基于单点登录凭证ticket进行校验,并且,通知应用程序采用其他方式在移动应用中登录内嵌页面,例如,重新在移动应用中输入登录的账户和密码。
参照图4,示出了本发明实施例中提供的另一种单点登录方法的步骤流程图,应用于移动应用,所述移动应用对应的业务平台***中保存有所述移动应用通过接口上报的数字签名和单点登录凭证,所述数字签名为所述移动应用根据应用标识和单点登录凭证生成,所述单点登录凭证为单点登录认证中心为所述移动应用发放的授权登录的凭证;所述方法具体可以包括如下步骤:
步骤401、向所述业务平台***发送在所述移动应用中登录内嵌页面的登录请求;所述登录请求中包括待验证应用标识和待验证单点登录凭证;所述业务平台***,用于根据所述待验证应用标识和所述待验证单点登录凭证生成待校验数据,并在所述待校验数据与所述数字签名匹配时,基于所述单点登录凭证在所述单点登录认证中心进行校验;
步骤402、在所述单点登录认证中心校验通过时,在所述移动应用中登录所述内嵌页面。
在本发明实施例中,若用户想要在移动应用中登录内嵌页面,则移动应用可以向其对于的业务平台***发送登录请求,然后,业务平台***则根据登录请求中的待验证应用标识和待验证单点登录凭证生成待校验数据,并与在先移动应用提交的数字签名进行匹配,当待校验数据与数字签名匹配时,视为通过第一次校验,然后就可以基于单点登录凭证ticket在单点登录认证中心进行第二次校验,若在单点登录认证中心的第二校验成功,则可以在移动应用中登录内嵌页面。本发明实施例移动应用中登录内嵌页面时进行单点登录,在单点登录时除了需要通过单点登录认证中心的校验之外,还需要对移动应用的应用标识(数字签名)进行校验,加强单点登录时安全可靠性。
在一示例性实施例中,在所述步骤401、向在所述业务平台***发送在所述移动应用中登录内嵌页面的登录请求之前,所述方法还可以包括如下步骤:
获取所述应用程序的应用标识;
获取所述单点登录认证中心为所述移动应用发放的单点登录凭证;
对所述应用标识和所述单点登录凭证组合得到复合数据后进行数据哈希,得到数据哈希值;
采用私钥对所述数据哈希值进行加密处理,得到数字签名。
具体地,在生成数字签名时为了保证数据的有效性,使用复合型的复合数据进行数字签名的生成,其中,该复合数据可以由如下数据组合得到:单点登录凭证ticket和应用ID信息。其他的第三方即使获取单点登录凭证ticket,但在内嵌H5页面加载时获取的应用ID信息不匹配,也不能使用单点登录凭证ticket进行单点登录。同时,由于可以采用非对称加密对单点登录凭证ticket和应用ID信息组合得到的复合数据进行数据哈希的处理,得到数据哈希值,最后对数据哈希值采用私有进行加密生成数字签名,第三方也无法篡改数字签名的内容,因此基于数字签名进行校验,保证了校验的合法和安全。
在一示例性实施例中,所述单点登录凭证可以通过如下方式获取:
向所述单点登录认证中心发送获取请求;所述获取请求中包括用户标识和时间戳,所述单点登录认证中心用于根据所述用户标识、时间戳和随机字符串生成述单点登录凭证;
接收所述述单点登录认证中心发送的所述单点登录凭证。
在本发明实施例中,移动应用可以移动应用向单点登录认证中心发送请求单点登录凭证的获取请求,其中,获取请求中可以包括用户用户标识(User ID)和时间戳,单点登录认证中心使用用户的User ID+时间戳+随机字符串,然后进行AES(Advanced EncryptionStandard,高级加密标准)进行加密得到加密串,生成加密串作为本次的单点登录凭证ticket返回移动应用中。
为了使本领域技术人员更好地理解,以下采用一个具体的示例对本发明实施例实现单点登录的过程进行说明。
参照图5,示出了本发明实施例中提供的一种实现单点登录的***架构图,包括应用app(移动应用)、内嵌H5***(业务平台***)和单点登录平台(单点登录认证中心),具体地:
M1.单点登录认证中心
单点登录认证中心是独立于业务平台***的,主要用于用户注册、登录、单点登录的校验功能。
单点登录认证中心涉及模块包括:
M1.1用户首次注册登录模块:
用户在首次使用移动应用时,需要进行注册,并登录。用户注册后,在后台生产用户数据。
M1.2登录校验模块:生成单点登录凭证ticket(以下简称单点ticket)
当移动应用请求单点ticket时,单点登录认证中心使用用户的User ID+时间戳+随机字符串,然后进行AES加密,生成加密串作为本次的单点ticket返回移动应用。
M1.3单点ticket校验模块:业务平台***向单点登录认证中心对获取的单点ticket进行校验,单点登录认证中心返回校验结果。
M2.业务平台***
M2.1复合签名生成模块(移动应用侧):
在移动应用侧调起内嵌H5页面时,需要基于复合数据生成数字签名。具体地,在生成数字签名时为了保证数据的有效性,使用复合数据生成数字签名,其中复合数据可以包括:单点ticket和应用ID信息。其他第三方即使获取单点ticket,但H5页面加载时获取的应用ID信息不匹配,也不能使用单点ticket进行单点登录。同时,通过非对称加密,第三方也无法篡改校验数据的内容,保证校验的合法和安全。参照图2,生成数字签名时首先对ticket、应用ID信息数据进行拼接,进行哈希散列生成数据哈希值,之后对数据哈希值进行私钥加密,生成数字签名。这里需要注意的是,数字签名是移动应用通过校验接口上报后台的校验字段结构为:ticket+数字签名。
M2.2校验复合数据生的数字签名模块(内嵌H5***侧):
内嵌H5页面作为被调用方,调起时首先校验用户单点登录信息(即待验证的应用ID信息和待验证的单点ticket)有效性。参照图3,将单点ticket和当前应用ID信息(通过应用接口获取)进行拼接,对这个复合数据进行哈希散列,得到待验证数据哈希值;对数字签名进行公钥解密,获取解密后的数据哈希值。最后对待验证数据哈希值和签名处理后的数据哈希值进行比较,从而校验是否合法。
综上可知,现有技术相比,本发明实施例的主要优势包括:1.通过校验加载内嵌H5页面的应用ID信息,增加单点登录安全校验的可靠性。2.利用复合数据进行数字签名进行二次加密,增加安全性。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图6,示出了本发明实施例中提供的一种单点登录***的结构框图,所述单点登录***包括移动应用601、业务平台***602和单点登录认证中心603,所述业务平台***中保存有所述移动应用通过接口上报的数字签名和单点登录凭证,所述数字签名为所述移动应用根据应用标识和单点登录凭证生成,所述单点登录凭证为单点登录认证中心为所述移动应用发放的授权登录的凭证;其中:
所述移动应用601,用于向所述业务平台***发送在所述移动应用中登录内嵌页面的登录请求;所述登录请求中包括待验证应用标识和待验证单点登录凭证;
所述业务平台***602,用于根据所述待验证应用标识和所述待验证单点登录凭证生成待校验数据;当所述待校验数据与所述数字签名匹配时,基于所述单点登录凭证在所述单点登录认证中心进行校验,以在校验通过时在所述移动应用中登录所述内嵌页面。
在一示例性实施例中,所述移动应用601,用于获取所述应用程序的应用标识;获取所述单点登录认证中心为所述移动应用发放的单点登录凭证;对所述应用标识和所述单点登录凭证组合得到复合数据后进行数据哈希,得到数据哈希值;采用私钥对所述数据哈希值进行加密处理,得到数字签名。
在一示例性实施例中,所述移动应用601,用于向所述单点登录认证中心发送获取请求;所述获取请求中包括用户标识和时间戳,所述单点登录认证中心用于根据所述用户标识、时间戳和随机字符串生成述单点登录凭证;接收所述述单点登录认证中心发送的所述单点登录凭证。
在一示例性实施例中,所述业务平台***602,用于对所述待验证应用标识和所述待验证单点登录凭证组合后得到待验证复合数据进行数据哈希,得到待验证数据;采用与所述私钥对应的公钥对所述数字签名进行解密处理,得到数据哈希值;其中,若所述待验证数据与所述数据哈希值一致,则确定为所述待校验数据与所述数字签名匹配;若所述待验证数据与所述数据哈希值不一致,则确定为所述待校验数据与所述数字签名不匹配。
在一示例性实施例中,所述业务平台***602,用于当所述待校验数据与所述数字签名不匹配,或者,基于所述单点登录凭证在所述单点登录认证中心进行校验不通过时,通知所述应用程序采用其他方式在所述移动应用中登录所述内嵌页面。
对于***实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
优选的,本发明实施例还提供了一种电子设备,包括:处理器,存储器,存储在存储器上并可在处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述单点登录方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述单点登录方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
本发明实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如上述方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
本领域普通技术人员可以意识到,结合本发明实施例中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种单点登录方法,其特征在于,应用于业务平台***,所述业务平台***中保存有移动应用通过接口上报的数字签名和单点登录凭证,所述数字签名为所述移动应用根据应用标识和单点登录凭证生成,所述单点登录凭证为单点登录认证中心为所述移动应用发放的授权登录的凭证;所述方法包括:
接收在所述移动应用中登录内嵌页面的登录请求;所述登录请求中包括待验证应用标识和待验证单点登录凭证;
根据所述待验证应用标识和所述待验证单点登录凭证生成待校验数据;
当所述待校验数据与所述数字签名匹配时,基于所述单点登录凭证在所述单点登录认证中心进行校验,以在校验通过时在所述移动应用中登录所述内嵌页面。
2.根据权利要求1所述的方法,其特征在于,所述数字签名为所述应用程序通过如下方式生成:所述应用程序,用于获取所述应用程序的应用标识;获取所述单点登录认证中心为所述移动应用发放的单点登录凭证;将所述应用标识和所述单点登录凭证组合后得到复合数据进行数据哈希,得到数据哈希值;采用私钥对所述数据哈希值进行加密处理,得到数字签名。
3.根据权利要求2所述的方法,其特征在于,所述根据所述待验证应用标识和所述待验证单点登录凭证生成待校验数据,包括:
对所述待验证应用标识和所述待验证单点登录凭证组合后得到待验证复合数据进行数据哈希,得到待验证数据;
在所述根据所述待验证应用标识和所述待验证单点登录凭证生成待校验数据之后,所述方法还包括:
采用与所述私钥对应的公钥对所述数字签名进行解密处理,得到数据哈希值;其中,若所述待验证数据与所述数据哈希值一致,则确定为所述待校验数据与所述数字签名匹配;若所述待验证数据与所述数据哈希值不一致,则确定为所述待校验数据与所述数字签名不匹配。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述待校验数据与所述数字签名不匹配,或者,基于所述单点登录凭证在所述单点登录认证中心进行校验不通过时,通知所述应用程序采用其他方式在所述移动应用中登录所述内嵌页面。
5.一种单点登录方法,其特征在于,应用于移动应用,所述移动应用对应的业务平台***中保存有所述移动应用通过接口上报的数字签名和单点登录凭证,所述数字签名为所述移动应用根据应用标识和单点登录凭证生成,所述单点登录凭证为单点登录认证中心为所述移动应用发放的授权登录的凭证;所述方法包括:
向所述业务平台***发送在所述移动应用中登录内嵌页面的登录请求;所述登录请求中包括待验证应用标识和待验证单点登录凭证;所述业务平台***,用于根据所述待验证应用标识和所述待验证单点登录凭证生成待校验数据,并在所述待校验数据与所述数字签名匹配时,基于所述单点登录凭证在所述单点登录认证中心进行校验;
在所述单点登录认证中心校验通过时,在所述移动应用中登录所述内嵌页面。
6.根据权利要求5所述的方法,其特征在于,在所述向在所述业务平台***发送在所述移动应用中登录内嵌页面的登录请求之前,所述方法还包括:
获取所述应用程序的应用标识;
获取所述单点登录认证中心为所述移动应用发放的单点登录凭证;
对所述应用标识和所述单点登录凭证组合得到复合数据后进行数据哈希,得到数据哈希值;
采用私钥对所述数据哈希值进行加密处理,得到数字签名。
7.根据权利要求5所述的方法,其特征在于,所述单点登录凭证通过如下方式获取:
向所述单点登录认证中心发送获取请求;所述获取请求中包括用户标识和时间戳,所述单点登录认证中心用于根据所述用户标识、时间戳和随机字符串生成述单点登录凭证;
接收所述述单点登录认证中心发送的所述单点登录凭证。
8.一种单点登录***,其特征在于,所述单点登录***包括移动应用、业务平台***和单点登录认证中心,所述业务平台***中保存有所述移动应用通过接口上报的数字签名和单点登录凭证,所述数字签名为所述移动应用根据应用标识和单点登录凭证生成,所述单点登录凭证为单点登录认证中心为所述移动应用发放的授权登录的凭证;其中:
所述移动应用,用于向所述业务平台***发送在所述移动应用中登录内嵌页面的登录请求;所述登录请求中包括待验证应用标识和待验证单点登录凭证;
所述业务平台***,用于根据所述待验证应用标识和所述待验证单点登录凭证生成待校验数据;当所述待校验数据与所述数字签名匹配时,基于所述单点登录凭证在所述单点登录认证中心进行校验,以在校验通过时在所述移动应用中登录所述内嵌页面。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行存储器上所存放的程序时,实现如权利要求1-7任一项所述的方法。
10.一个或多个计算机可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111583717.XA CN114398620A (zh) | 2021-12-22 | 2021-12-22 | 单点登录方法、***、电子设备及可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111583717.XA CN114398620A (zh) | 2021-12-22 | 2021-12-22 | 单点登录方法、***、电子设备及可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114398620A true CN114398620A (zh) | 2022-04-26 |
Family
ID=81226317
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111583717.XA Pending CN114398620A (zh) | 2021-12-22 | 2021-12-22 | 单点登录方法、***、电子设备及可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114398620A (zh) |
-
2021
- 2021-12-22 CN CN202111583717.XA patent/CN114398620A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3709567B1 (en) | Electronic signature authentication system on the basis of biometric information and electronic signature authentication method thereof | |
CN109598663B (zh) | 提供和获取安全身份信息的方法及装置 | |
CN101272237B (zh) | 一种用于自动生成和填写登录信息的方法和*** | |
JP7083892B2 (ja) | デジタル証明書のモバイル認証相互運用性 | |
US20120254935A1 (en) | Authentication collaboration system and authentication collaboration method | |
CN112000951B (zh) | 一种访问方法、装置、***、电子设备及存储介质 | |
CN110677376B (zh) | 认证方法、相关设备和***及计算机可读存储介质 | |
CN110990827A (zh) | 一种身份信息验证方法、服务器及存储介质 | |
CN112333198A (zh) | 安全跨域登录方法、***及服务器 | |
KR101829730B1 (ko) | 블록체인 데이터베이스를 통해 모바일 아이디를 이용하여 사용자를 인증하는 방법, 단말 및 이를 이용한 서버 | |
US20110289318A1 (en) | System and Method for Online Digital Signature and Verification | |
KR20140114229A (ko) | 어플리케이션 간의 상호 인증 방법 및 장치 | |
CN102201915A (zh) | 一种基于单点登录的终端认证方法和装置 | |
CN111865889B (zh) | 登录请求处理方法、***、装置、电子设备及存储介质 | |
CN110677382A (zh) | 数据安全处理方法、装置、计算机***及存储介质 | |
CN114244522B (zh) | 信息保护方法、装置、电子设备及计算机可读存储介质 | |
CN113272810A (zh) | 利用浏览器的网页存储器的简单认证方法及*** | |
KR101388930B1 (ko) | 분리 서명 기반의 사용자 인증 장치 및 방법 | |
CN102694776A (zh) | 一种基于可信计算的认证***及方法 | |
CN116049802B (zh) | 应用单点登陆方法、***、计算机设备和存储介质 | |
CN112862484A (zh) | 一种基于多端交互的安全支付方法及装置 | |
CN115459929A (zh) | 安全验证方法、装置、电子设备、***、介质和产品 | |
CN111404946B (zh) | 基于浏览器的账户认证方法及服务器 | |
CN114398620A (zh) | 单点登录方法、***、电子设备及可读介质 | |
KR102542840B1 (ko) | 오픈 api 기반의 금융 인증 서비스 제공 방법 및 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |