CN117499137A - 一种第三方授权登录方法及系统 - Google Patents
一种第三方授权登录方法及系统 Download PDFInfo
- Publication number
- CN117499137A CN117499137A CN202311557348.6A CN202311557348A CN117499137A CN 117499137 A CN117499137 A CN 117499137A CN 202311557348 A CN202311557348 A CN 202311557348A CN 117499137 A CN117499137 A CN 117499137A
- Authority
- CN
- China
- Prior art keywords
- application
- app
- identity information
- engine
- authorization
- 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
- 238000000034 method Methods 0.000 title claims abstract description 69
- 238000013475 authorization Methods 0.000 claims abstract description 197
- 230000004044 response Effects 0.000 claims description 14
- 238000012790 confirmation Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 abstract description 7
- 238000001514 detection method Methods 0.000 abstract description 3
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000004891 communication Methods 0.000 description 13
- 230000015654 memory Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0884—Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请实施例公开了一种第三方授权登录方法及系统。该方法在针对快应用的第三方授权登录的过程中,通过引擎App识别目标快应用的身份信息,并随着授权请求传入移动应用App;后续移动应用App还需要采集引擎App的身份信息,并将引擎App的身份信息和目标快应用的身份信息传送到应用服务器进行安全检测。由此,移动应用App可以保证与之交互的目标快应用的合法性,即确保用户的授权凭据被传输一个合法的第三方,保障第三方授权登录过程在一个安全执行环境中进行。本申请实施例所述的系统同样具有上述有益效果。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种第三方授权登录方法及系统。
背景技术
快应用是一种基于底层手机系统的类小程序应用,对终端用户即点即用,并运行在手机厂商控制的引擎App中。当前,大量快应用需要接入大型移动应用(下文简称厂商App)的三方授权服务,并通过返回的授权信息来认证其用户的身份,而无需用户额外输入帐密。但是当前厂商APP所提供的授权服务只适用于通用的安卓应用,而非快应用。更具体的说,在目前的授权服务中,与厂商App交互的是手机厂商的引擎App,而非运行于其中的快应用。因此,厂商App无法直接核实快应用的身份,并可能引入安全风险。
发明内容
本说明书的一个或多个实施例提供了一种第三方授权登录方法及系统,能够针对快应用提供可靠的第三方授权登录方案,保障授权过程的安全性。
根据第一方面,提供了一种第三方授权登录方法,适用于授权端,所述授权端包括移动应用APP和应用服务器;所述方法包括:
响应于引擎APP的授权请求,所述移动应用APP获取引擎APP上传的经过认证后的目标快应用的身份信息,并采集所述引擎APP的身份信息;
所述移动应用APP向所述应用服务器发起授权请求,并同步发送所述引擎APP的身份信息和所述目标快应用的身份信息;
响应于所述移动应用APP的授权请求,所述应用服务器对所述引擎APP的身份信息和所述目标快应用的身份信息进行认证,认证通过后,通过所述引擎APP向所述目标快应用下发授权凭据,以使所述目标快应用能够凭借所述授权凭据获取用户信息,并基于所述用户信息完成所述目标快应用登录。
作为第一方面所述方法的一种可选实施方式,所述引擎APP认证所述目标快应用的身份信息,具体包括:
响应于所述目标快应用的授权请求,所述引擎APP采集所述目标快应用的身份信息;
所述引擎APP将所述目标快应用的身份信息与本地预先存储的快应用身份信息进行一致性比对,若存在预先存储的快应用身份信息与所述目标快应用的身份信息一致,则认证通过所述目标快应用的身份信息。
作为第一方面所述方法的一种可选实施方式,所述移动应用APP采集所述引擎APP的身份信息后,还对所述引擎APP的身份信息进行认证,认证通过后,向所述应用服务器发送授权请求、所述引擎APP的身份信息和所述目标快应用的身份信息。
具体的,所述移动应用APP对所述引擎APP的身份信息进行认证,具体包括:
将所述引擎APP的身份信息与所述引擎APP的授权请求进行比对,若所述引擎APP的身份信息与所述引擎APP的授权请求关联,则认证通过所述引擎APP的身份信息。
作为第一方面所述方法的一种可选实施方式,所述应用服务器对所述引擎APP的身份信息和所述目标快应用的身份信息进行认证,具体包括:
所述应用服务器将所述引擎APP的身份信息与本地预先存储的引擎身份信息进行一致性比对,若存在预先存储的引擎身份信息与所述引擎APP的身份信息一致,则认证通过所述引擎APP的身份信息;
所述应用服务器将所述目标快应用的身份信息与本地预先存储的快应用身份信息进行一致性比对,若存在预先存储的快应用身份信息与所述目标快应用的身份信息一致,则认证通过所述目标快应用的身份信息。
作为第一方面所述方法的一种可选实施方式,在所述应用服务器通过所述引擎APP向所述目标快应用下发所述授权凭据之前,还包括:
响应于用户通过所述移动应用APP对所述目标快应用的授权确认信息,生成所述授权凭据。
根据第二方面,提供了一种第三方授权登录方法,适用于快应用端,所述快应用端包括目标快应用和所述目标快应用的快应用服务器;所述方法包括:
响应于用户操作,所述目标快应用向引擎APP发送授权请求,以使所述引擎APP采集并认证所述目标快应用的身份信息,并在认证通过后,向授权端申请授权凭据;
响应于所述引擎APP返回的所述授权凭据,所述目标快应用将所述授权凭据发送给所述快应用服务器;
响应于获得所述授权凭据,所述快应用服务器基于所述授权凭据从授权端获取用户信息,并基于所述用户信息完成所述目标快应用登录。
作为第二方面所述方法的一种可选实施方式,所述授权端包括移动应用APP和应用服务器;所述引擎APP向所述授权端申请所述授权凭据,具体包括:
所述引擎APP向所述移动应用APP发起授权请求,并同步所述目标快应用的身份信息;
响应于所述引擎APP的授权请求,所述移动应用APP采集所述引擎APP的身份信息,并向所述应用服务器发送授权请求、所述目标快应用的身份信息和所述引擎APP的身份信息;
响应于所述移动应用APP的授权请求,所述应用服务器认证所述目标快应用的身份信息和所述引擎APP的身份信息,并在认证通过后,向所述移动应用APP返回授权凭据;
所述移动应用APP将所述授权凭据通过所述引擎APP发送给所述目标快应用。
根据第三方面,提供了一种第三方授权登录系统,包括授权端和快应用端;
所述授权端用于执行所述适用于所述授权端的第三方授权登录方法,所述快应用端用于执行适用于所述快应用端的所述的第三方授权登录方法,以实现目标快应用的授权登录。
根据第四方面,提供了一种终端设备,所述设备安装有引擎APP和授权端提供的移动应用APP,所述引擎APP中部署有目标快应用;所述目标快应用基于所述移动应用APP获取的用户信息进行第三方授权登录,具体包括:
响应于用户操作,所述目标快应用向所述引擎APP发送授权请求;
响应于所述目标快应用的授权请求,所述引擎APP采集并认证所述目标快应用的身份信息,并在认证通过后,向所述移动应用APP发送授权请求和所述目标快应用的身份信息;
响应于所述引擎APP的授权请求,所述移动应用APP采集所述引擎APP的身份信息,并向应用服务器发送授权请求、所述引擎APP的身份信息和所述目标快应用的身份信息;
响应于所述移动应用APP的授权请求,所述应用服务器对所述引擎APP的身份信息和所述目标快应用的身份信息进行认证,认证通过后,通过所述引擎APP向所述目标快应用下发授权凭据;
响应于获取所述授权凭据,所述目标快应用基于所述授权凭据从所述应用服务器获取用户信息,并基于所述用户信息完成登录。
作为第四方面所述终端设备的一种可选实施方式,所述目标快应用基于所述授权凭据从所述应用服务器获取用户信息,并基于所述用户信息完成登录,具体包括:
所述目标快应用将所述授权凭据发送给快应用服务器;
响应于获取所述授权凭据,所述快应用服务基于所述授权凭据向所述应用服务器请求用户信息,并基于获得的所述用户信息完成所述目标快应用登录。
本说明书一个或多个实施例所述的授权登录方法的有益效果在于,在针对快应用的第三方授权登录的过程中,通过手机厂商控制的引擎App负责维护和识别快应用的主体身份信息,并随着授权请求传入移动应用App;后续移动应用App还需要采集引擎App的身份信息,并将两部分信息(快应用&引擎App)同时传送到厂商服务器进行安全检测。由此,移动应用App可以保证与之交互的快应用的合法性,即确保用户的授权凭据被传输一个合法的第三方。
本说明书实施例所述的系统和终端设备同样具有上述有益效果。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了现有技术中,移动应用提供的一种第三方授权登录流程示意图。
图2是根据本申请的一些实施方式,示出了一种第三方授权登录系统的结构示意图。
图3是根据本申请的一些实施方式,示出了一种第三方授权登录系统实现的第三方授权登录方法的流程示意图。
图4是根据本申请的一些实施方式,示出了一种适用于授权端的第三方授权登录方法的流程示意图。
图5是根据本申请的一些实施方式,示出了一种适用于快应用端的第三方授权登录方法的流程示意图。
图6是根据本申请的一些实施方式,示出了一种终端设备的结构图。
具体实施方式
快应用是一种基于底层手机系统的类小程序应用,对终端用户即点即用,并运行在手机厂商控制的引擎App中。当前,大量快应用(下文简称商户App)需要接入大型移动应用(下文简称厂商App)的三方授权服务,并通过返回的授权信息来认证其用户的身份,而无需用户额外输入帐密。但是当前厂商APP所提供的授权服务只适用于通用的安卓应用,而非快应用。更具体的说,在目前的授权服务中,与厂商App交互的是手机厂商的引擎App,而非运行于其中的快应用。因此,厂商App无法直接核实快应用的身份,并可能引入安全风险。
请参考图1,图1示出了现有技术中厂商App提供的一种第三方授权登录流程示意图,该流程包括以下步骤:
(101)商户App向厂商App发起授权请求。
(102)厂商App采集商户App的身份信息,并检测该商户App的身份信息是否与步骤(101)中的授权请求关联;若是,进行步骤(103),否则,终止授权登录流程。
(103)厂商App向厂商服务器发送授权请求,并同步发送商户App的身份信息。
(104)厂商服务器对收到的商户App的身份信息进行核验。
(105)厂商服务器对收到的商户App的身份信息核验通过后,向厂商App返回用户授权请求,该用户授权请求是用于询问用户是否同意将该厂商App中的用户信息授权给该商户App使用。
(106)用户通过厂商App的页面确认将该厂商App中的用户信息授权给该商户App使用;厂商App将用户确认授权信息发送给厂商服务器。
(107)厂商服务器收到用户确认授权信息后,生成授权凭据code,然后将授权凭据code返回给厂商App。
(108)厂商App将授权凭据code返回给商户App。
(109)商户App将授权凭据code发送给商户服务器,并请求商户服务器核销授权凭据code。
(110)商户服务器向厂商服务器核销授权凭据code,并请求获取用户信息。
(111)厂商服务器验证授权凭据code后,向商户服务器返回用户信息。
(112)商户服务器根据用户信息认证用户身份。
(113)商户服务器向商户App返回用户登录状态,完成用户在商户App上的登录。
由上述流程可知,在步骤(102)至步骤(104)中,厂商App会主动采集商户App的身份信息,并检测是否与第1步的授权请求关联。否则攻击者可能控制一个恶意App,并通过伪造的授权请求从厂商App骗取受害者的授权凭据来发起后续的攻击。然而在快应用的场景下,厂商App的交互主体变成了手机厂商的引擎App,而无法直接和快应用交互并认证其身份,因此可能引入安全风险,例如一个恶意的快应用可能伪装成另一个合法的快应用,向厂商App发起授权请求,并盗取用户的授权信息,进而通过盗取的授权信息登录用户账号,导致用户的个人信息或者资金遭受损失。
有鉴于此,本说明书的一个或多个实施例提出一种第三方授权登录方法及系统,以防御在针对快应用的第三方授权登录过程中潜在的用户信息盗用攻击。
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
本领域技术人员可以理解,在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
本发明的一个或多个实施例提供了一种第三方授权登录方法。请参考图2,图2示例性的显示了一种第三方授权登录系统,可以用于实现该第三方授权登录方法。需要说明的是,本申请的一个或多个实施例所述的第三方授权登录方法,可以依赖图2所示的第三方授权登录系统实现,但不限于该第三方授权登录系统。
如图2所示,授权登录系统包括终端设备20、商户服务器21和厂商服务器22。终端设备20通过通信链路23分别与商户服务器21和厂商服务器22连接。所述通信链路23可以为有线网络,也可以是无线网络。例如,终端设备20可以采用WIFI、蓝牙、红外等通信方式与商户服务器21和厂商服务器22建立通信连接。或者,终端设备20也可以通过移动网络与商户服务器21和厂商服务器22建立通信连接,其中,移动网络的网络制式可以为2G(GSM)、2.5G(GPRS)、3G(WCDMA、TD-SCDMA、CDMA2000、UTMS)、4G(LTE)、4G+(LTE+)、WiMax等中的任意一种。
通信链路23可以通过设置在终端设备20、商户服务器21和厂商服务器22上的通信接口实现,该通信接口可以使用例如但不限于网络接口卡、收发器一类的收发模块,来实现终端设备20与商户服务器21和厂商服务器22之间的通信。
终端设备20为可以使用例如但不限于智能手机、笔记本、Ipad等智能设备实现。下面以智能手机为例对终端设备20进行说明。
智能手机中安装了手机供应商提供的引擎APP,引擎APP中部署了若干快应用,引擎APP向快应用提供授权jsapi接口,快应用可以通过这一渠道向厂商App发起授权请求,获取厂商App的用户信息,并基于该用户信息登录快应用的页面。
商户服务器21是快应用的服务器,其可以是任何具有计算、处理能力的装置、设备、平台或设备集群。本实施例中,并不限制商户服务器21的实现形态,例如,商户服务器21可以是单个的服务器,也可以是由多个服务器组成的服务器集群,商户服务器21还可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品。
厂商服务器22是厂商App的服务器。同样的,厂商服务器22可以是任何具有计算、处理能力的装置、设备、平台或设备集群。本实施例中,并不限制厂商服务器22的实现形态,例如,厂商服务器22可以是单个的服务器,也可以是由多个服务器组成的服务器集群,厂商服务器22还可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品。
请参考图3,图3示出了上述第三方授权登录系统在实现本实施例所述的第三方授权登录方法时的流程图。在该第三方授权登录方法中,厂商App和厂商服务器22构成了授权端,目标快应用和商户服务器21构成了快应用端。
终端设备20、商户服务器21和厂商服务器22执行以下流程:
(301)快应用调用引擎App提供的授权jsapi接口,向引擎App发起授权请求。
(302)引擎App采集快应用的身份信息,并认证快应用的身份信息。
(303)引擎App认证通过快应用的身份信息后,向厂商App发起授权请求,并同步发送快应用的身份信息。
(304)厂商App采集引擎App的身份信息,并对引擎App的身份信息进行认证,具体为,判断引擎App的身份信息与步骤(303)的授权请求是否存在关联;若是,进行步骤(305),否则,终止第三方授权登录流程。
(305)厂商App向厂商服务器发起授权请求,并同步发送引擎App的身份信息和快应用的身份信息。
(306)厂商服务器对引擎App的身份信息和快应用的身份信息进行核验。
(307)厂商服务器核验通过引擎App的身份信息和快应用的身份信息后,向厂商App返回针对该快应用的用户授权请求,该请求是用于询问用户是否同意将该厂商App中的用户信息授权给该快应用使用。
(308)用户通过厂商App提供的授权页面确认将该厂商App中的用户信息授权给该商户App使用;厂商App将用户确认授权信息发送给厂商服务器。
(309)厂商服务器根据用户确认授权信息生成授权凭据code,并将授权凭据code返回给厂商App。
(310)厂商App将授权凭据code返回给引擎App。
(311)引擎App将授权凭据code返回给快应用。
(312)快应用将授权凭据code返回快应用服务器,并请求快应用服务器核销该授权凭据code。
(313)快应用服务器向厂商服务器核销该授权凭据code,并请求获取用户信息。
(314)厂商服务器验证通过该授权凭据code后,向快应用服务器返回用户信息。
(315)快应用服务器根据用户信息认证用户身份。
(316)快应用服务器向快应用返回用户登录状态,完成用户在快应用服务器上的登录。
由上述流程可知,手机厂商控制的引擎App负责维护和识别快应用的主体的身份信息,并随着授权请求传入厂商App。后续厂商App还需要采集引擎App的身份信息,并将两部分信息(快应用&引擎App)同时传送到厂商服务器进行安全检测。由此,厂商App可以保证与之交互的快应用的合法性,即确保用户的授权凭据code被传输一个合法的第三方,从而保证快应用授权登录过程中的安全性。
该方法将识别快应用身份的职责转嫁到了手机厂商的引擎App中,因此对原本协议的改造主要发生在手机厂商和平台侧,而快应用的接入方式和通用安卓应用大致保持一致,降低了改造成本。该第三方授权登录方案具有可扩展性,可以延伸并应用于其他安卓快应用的三方服务,如人脸认证和支付扣款等。
对应于上述第三方授权登录系统,在一些实施例中,提供了一种第三方授权登录方法。请参考图4,图4示出了该第三方授权登录方法的流程示意图,该方法适用于授权端,授权端包括移动应用APP(即厂商App)和应用服务器;所述方法包括步骤S400至S404:
S400:响应于引擎APP的授权请求,移动应用APP获取引擎APP上传的经过认证后的目标快应用的身份信息,并采集引擎APP的身份信息。
其中,身份信息可以包括但不限于目标快应用的包名&签名等能够对目标快应用起到唯一性标识作用的信息。
引擎APP在上传目标快应用的身份信息之前,需要对目标快应用的身份信息进行认证。引擎APP中部署有若干快应用,这些快应用在部署到引擎APP中时,会预先将身份信息同步到引擎APP本地保存,引擎APP会将这些快应用的身份信息同步到应用服务器本地保存。因此,引擎APP可以采用以下方式来认证目标快应用的身份信息:
响应于目标快应用的授权请求,引擎APP采集目标快应用的身份信息;
引擎APP将目标快应用的身份信息与本地预先存储的快应用身份信息进行一致性比对,若存在预先存储的快应用身份信息与目标快应用的身份信息一致,则认证通过目标快应用的身份信息。
通过上述认证方式,引擎APP可以确认目标快应用的身份是可信的。
S402:移动应用APP向应用服务器发起授权请求,并同步发送引擎APP的身份信息和目标快应用的身份信息。
在一些实施方式中,移动应用APP向应用服务器发起授权请求之前,还需要对采集的引擎APP的身份信息进行认证,从而确定引擎APP的身份是可信的。具体来说,移动应用APP可以采用以下方式认证引擎APP的身份信息:
将引擎APP的身份信息与引擎APP的授权请求进行比对,若引擎APP的身份信息与引擎APP的授权请求关联,则认证通过引擎APP的身份信息。
在引擎APP的授权请求中,会携带引擎APP的全部或部分身份信息,或是由引擎APP的全部或部分身份信息映射得到其他标识,因此,移动应用APP可以采用判断引擎APP的授权请求与引擎APP的身份信息是否关联的方式来验证引擎APP是否可以信任。
S404:响应于移动应用APP的授权请求,应用服务器对引擎APP的身份信息和目标快应用的身份信息进行认证,认证通过后,通过引擎APP向目标快应用下发授权凭据。
其中,由于应用服务器本地预先存储了引擎APP的身份信息,同时也存储了引擎APP上传的部署在引擎APP中的快应用的身份信息,因此,应用服务器可以采用以下方式来认证引擎APP的身份信息和目标快应用的身份信息:
对于引擎APP的身份信息,应用服务器将引擎APP的身份信息与本地预先存储的引擎身份信息进行一致性比对,若存在预先存储的引擎身份信息与引擎APP的身份信息一致,则认证通过引擎APP的身份信息。
对于标快应用的身份信息,应用服务器将目标快应用的身份信息与本地预先存储的快应用身份信息进行一致性比对,若存在预先存储的快应用身份信息与目标快应用的身份信息一致,则认证通过目标快应用的身份信息。
通过上述方式,应用服务器确认引擎APP和目标快应用是可信的。认证通过后,应用服务器生成授权凭据code,以使目标快应用能够凭借授权code凭据获取用户信息,并基于用户信息完成目标快应用登录。
具体来说,授权凭据code是对用户确认对快应用授权这一操作的一个暂时性的证书,其具有一个较短的有效时间周期。在这一有效时间周期内,目标快应用的快应用服务器可以凭借该暂时性证书去向应用服务器申请获取用户信息。应用服务器会核验授权凭据code的有效性,核验通过后,会下发用户信息给快应用服务器。快应用服务器根据用户信息认证用户身份后,会向目标快应用返回登录状态,即完成用户在目标快应用页面上的登录操作。
对应于上述第三方授权登录系统,在一些实施例中,还提供了一种第三方授权登录方法。请参考图5,图5示出了该第三方授权登录方法的流程示意图,该方法适用于快应用端,快应用端包括目标快应用和快应用服务器;所述方法包括步骤S500至S504:
S500:响应于用户操作,目标快应用向引擎APP发送授权请求,以使引擎APP采集并认证所述目标快应用的身份信息,并在认证通过后,向授权端申请授权凭据。
其中,目标快应用的身份信息可以包括但不限于目标快应用的包名&签名等能够对目标快应用起到唯一性标识作用的信息。
引擎APP中部署有若干快应用,这些快应用在部署到引擎APP中时,会预先将身份信息同步到引擎APP本地保存,引擎APP会将这些快应用的身份信息和自己的身份信息同步到应用服务器本地保存。因此,引擎APP可以采用以下方式来认证目标快应用的身份信息:
响应于目标快应用的授权请求,引擎APP采集目标快应用的身份信息;
引擎APP将目标快应用的身份信息与本地预先存储的快应用身份信息进行一致性比对,若存在预先存储的快应用身份信息与目标快应用的身份信息一致,则认证通过目标快应用的身份信息。
通过上述认证方式,引擎APP可以确认目标快应用的身份是可信的。
授权端包括移动应用APP和应用服务器,引擎APP在确认目标快应用的身份可信之后,会向移动应用APP发起授权请求,并将目标快应用的身份信息同步发送给移动应用APP。移动应用APP响应于引擎APP的授权请求,采集引擎APP的身份信息,并对引擎APP的身份信息进行认证,从而确定引擎APP的身份是否是可信的。具体来说,移动应用APP可以采用以下方式认证引擎APP的身份信息:
将引擎APP的身份信息与引擎APP的授权请求进行比对,若引擎APP的身份信息与引擎APP的授权请求关联,则认证通过引擎APP的身份信息。
在引擎APP的授权请求中,会携带引擎APP的全部或部分身份信息,或是由引擎APP的全部或部分身份信息映射得到其他标识,因此,移动应用APP可以采用判断引擎APP的授权请求与引擎APP的身份信息是否关联的方式来验证引擎APP是否可以信任。
移动应用APP确认引擎APP可信之后,向应用服务器发起授权请求,并同步发送引擎APP的身份信息和目标快应用的身份信息。应用服务器响应于移动应用APP的授权请求,对引擎APP的身份信息和目标快应用的身份信息进行认证,认证通过后,会向移动应用APP返回一个授权凭据。
在一些实施方式中,由于应用服务器本地预先存储了引擎APP的身份信息,同时也存储了引擎APP上传的部署在引擎APP中的快应用的身份信息,因此,应用服务器可以采用以下方式来认证引擎APP的身份信息和目标快应用的身份信息:
对于引擎APP的身份信息,应用服务器将引擎APP的身份信息与本地预先存储的引擎身份信息进行一致性比对,若存在预先存储的引擎身份信息与引擎APP的身份信息一致,则认证通过引擎APP的身份信息。
对于标快应用的身份信息,应用服务器将目标快应用的身份信息与本地预先存储的快应用身份信息进行一致性比对,若存在预先存储的快应用身份信息与目标快应用的身份信息一致,则认证通过目标快应用的身份信息。
通过上述方式,应用服务器确认引擎APP和目标快应用是可信的。认证通过后,应用服务器生成授权凭据code,并将授权凭据code发送给移动应用APP,移动应用APP将授权凭据code发送给引擎App,引擎APP再将授权凭据code发送给目标快应用。
S502:响应于所引擎APP返回的授权凭据,所述目标快应用将授权凭据发送给快应用服务器。
具体来说,授权凭据code是对用户确认对快应用授权这一操作的一个暂时性的证书,其具有一个较短的有效时间周期。
S504:响应于获得授权凭据,快应用服务器基于授权凭据从授权端获取用户信息,并基于用户信息完成目标快应用登录。
在授权凭据code的有效时间周期内,目标快应用的快应用服务器可以凭借该暂时性证书去向应用服务器申请获取用户信息。应用服务器会核验授权凭据code的有效性,核验通过后,会下发用户信息给快应用服务器。快应用服务器根据用户信息认证用户身份后,会向目标快应用返回登录状态,即完成用户在目标快应用页面上的登录操作。
为实现上述第三方授权登录方法,在一些实施例中,还提供了一种终端设备。该终端设备安装有引擎APP和授权端提供的移动应用APP,引擎APP中部署有目标快应用;目标快应用基于移动应用APP获取的用户信息进行第三方授权登录,具体包括步骤S600至S608:
S600:响应于用户操作,所目标快应用向引擎APP发送授权请求;
S602:响应于所目标快应用的授权请求,引擎APP采集并认证目标快应用的身份信息,并在认证通过后,向移动应用APP发送授权请求和目标快应用的身份信息;
S604:响应于引擎APP的授权请求,移动应用APP采集引擎APP的身份信息,并向应用服务器发送授权请求、引擎APP的身份信息和目标快应用的身份信息;
S606:响应于移动应用APP的授权请求,应用服务器对引擎APP的身份信息和目标快应用的身份信息进行认证,认证通过后,通过引擎APP向目标快应用下发授权凭据;
S608:响应于获取授权凭据,目标快应用基于授权凭据从应用服务器获取用户信息,并基于用户信息完成登录。
请参考图6,图6示出了上述终端设备的一种结构示意图。该终端设备包括总线701、处理器702、存储器703和通信接口704。存储器703中存储有计算机程序,当计算机程序在处理器702上运行时,使得处理器702执行终端设备中目标快应用基于移动应用APP获取的用户信息进行第三方授权登录的具体步骤。应理解,本申请不限定终端设备中的处理器、存储器的个数。
总线701可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。总线701可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。总线701可包括在终端设备各个部件(例如,处理器702、存储器703和通信接口704)之间传送信息的通路。
处理器702可以包括处理器(central processing unit,CPU)、图形处理器(graphics processing unit,GPU)、微处理器(micro processor,MP)或者数字信号处理器(digital signal processor,DSP)等处理器中的任意一种或多种。
存储器703可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM)。存储器703还可以包括非易失性存储器(non-volatilememory),例如只读存储器(read-only memory,ROM),快闪存储器,机械硬盘(hard diskdrive,HDD)或固态硬盘(solid state drive,SSD)。
通信接口704使用例如但不限于网络接口卡、收发器一类的收发模块,来实现终端设备与其他设备或通信网络之间的通信,例如与应用服务器和快应用服务器之间的通信。
本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
需要注意的是,以上列举的仅为本发明的具体实施例,显然本发明不限于以上实施例,随之有着许多的类似变化。本领域的技术人员如果从本发明公开的内容直接导出或联想到的所有变形,均应属于本发明的保护范围。
Claims (11)
1.一种第三方授权登录方法,适用于授权端,所述授权端包括移动应用APP和应用服务器;所述方法包括:
响应于引擎APP的授权请求,所述移动应用APP获取引擎APP上传的经过认证后的目标快应用的身份信息,并采集所述引擎APP的身份信息;
所述移动应用APP向所述应用服务器发起授权请求,并同步发送所述引擎APP的身份信息和所述目标快应用的身份信息;
响应于所述移动应用APP的授权请求,所述应用服务器对所述引擎APP的身份信息和所述目标快应用的身份信息进行认证,认证通过后,通过所述引擎APP向所述目标快应用下发授权凭据,以使所述目标快应用能够凭借所述授权凭据获取用户信息,并基于所述用户信息完成所述目标快应用登录。
2.如权利要求1所述的方法,所述引擎APP认证所述目标快应用的身份信息,具体包括:
响应于所述目标快应用的授权请求,所述引擎APP采集所述目标快应用的身份信息;
所述引擎APP将所述目标快应用的身份信息与本地预先存储的快应用身份信息进行一致性比对,若存在预先存储的快应用身份信息与所述目标快应用的身份信息一致,则认证通过所述目标快应用的身份信息。
3.如权利要求1所述的方法,所述移动应用APP采集所述引擎APP的身份信息后,还对所述引擎APP的身份信息进行认证,认证通过后,向所述应用服务器发送授权请求、所述引擎APP的身份信息和所述目标快应用的身份信息。
4.如权利要求3所述的方法,所述移动应用APP对所述引擎APP的身份信息进行认证,具体包括:
将所述引擎APP的身份信息与所述引擎APP的授权请求进行比对,若所述引擎APP的身份信息与所述引擎APP的授权请求关联,则认证通过所述引擎APP的身份信息。
5.如权利要求1所述的方法,所述应用服务器对所述引擎APP的身份信息和所述目标快应用的身份信息进行认证,具体包括:
所述应用服务器将所述引擎APP的身份信息与本地预先存储的引擎身份信息进行一致性比对,若存在预先存储的引擎身份信息与所述引擎APP的身份信息一致,则认证通过所述引擎APP的身份信息;
所述应用服务器将所述目标快应用的身份信息与本地预先存储的快应用身份信息进行一致性比对,若存在预先存储的快应用身份信息与所述目标快应用的身份信息一致,则认证通过所述目标快应用的身份信息。
6.如权利要求1所述的方法,在所述应用服务器通过所述引擎APP向所述目标快应用下发所述授权凭据之前,还包括:
响应于用户通过所述移动应用APP对所述目标快应用的授权确认信息,生成所述授权凭据。
7.一种第三方授权登录方法,适用于快应用端,所述快应用端包括目标快应用和所述目标快应用的快应用服务器;所述方法包括:
响应于用户操作,所述目标快应用向引擎APP发送授权请求,以使所述引擎APP采集并认证所述目标快应用的身份信息,并在认证通过后,向授权端申请授权凭据;
响应于所述引擎APP返回的所述授权凭据,所述目标快应用将所述授权凭据发送给所述快应用服务器;
响应于获得所述授权凭据,所述快应用服务器基于所述授权凭据从授权端获取用户信息,并基于所述用户信息完成所述目标快应用登录。
8.如权利要求7所述的方法,所述授权端包括移动应用APP和应用服务器;
所述引擎APP向所述授权端申请所述授权凭据,具体包括:
所述引擎APP向所述移动应用APP发起授权请求,并同步所述目标快应用的身份信息;
响应于所述引擎APP的授权请求,所述移动应用APP采集所述引擎APP的身份信息,并向所述应用服务器发送授权请求、所述目标快应用的身份信息和所述引擎APP的身份信息;
响应于所述移动应用APP的授权请求,所述应用服务器认证所述目标快应用的身份信息和所述引擎APP的身份信息,并在认证通过后,向所述移动应用APP返回授权凭据;
所述移动应用APP将所述授权凭据通过所述引擎APP发送给所述目标快应用。
9.一种第三方授权登录系统,包括授权端和快应用端;
所述授权端用于执行如权利要求1至6任一项所述的方法,所述快应用端用于执行如权利要求7至8任一项所述的方法,以实现目标快应用的授权登录。
10.一种终端设备,所述设备安装有引擎APP和授权端提供的移动应用APP,所述引擎APP中部署有目标快应用;所述目标快应用基于所述移动应用APP获取的用户信息进行第三方授权登录,具体包括:
响应于用户操作,所述目标快应用向所述引擎APP发送授权请求;
响应于所述目标快应用的授权请求,所述引擎APP采集并认证所述目标快应用的身份信息,并在认证通过后,向所述移动应用APP发送授权请求和所述目标快应用的身份信息;
响应于所述引擎APP的授权请求,所述移动应用APP采集所述引擎APP的身份信息,并向应用服务器发送授权请求、所述引擎APP的身份信息和所述目标快应用的身份信息;
响应于所述移动应用APP的授权请求,所述应用服务器对所述引擎APP的身份信息和所述目标快应用的身份信息进行认证,认证通过后,通过所述引擎APP向所述目标快应用下发授权凭据;
响应于获取所述授权凭据,所述目标快应用基于所述授权凭据从所述应用服务器获取用户信息,并基于所述用户信息完成登录。
11.如权利要求10所述的设备,所述目标快应用基于所述授权凭据从所述应用服务器获取用户信息,并基于所述用户信息完成登录,具体包括:
所述目标快应用将所述授权凭据发送给快应用服务器;
响应于获取所述授权凭据,所述快应用服务基于所述授权凭据向所述应用服务器请求用户信息,并基于获得的所述用户信息完成所述目标快应用登录。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311557348.6A CN117499137A (zh) | 2023-11-21 | 2023-11-21 | 一种第三方授权登录方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311557348.6A CN117499137A (zh) | 2023-11-21 | 2023-11-21 | 一种第三方授权登录方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117499137A true CN117499137A (zh) | 2024-02-02 |
Family
ID=89674374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311557348.6A Pending CN117499137A (zh) | 2023-11-21 | 2023-11-21 | 一种第三方授权登录方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117499137A (zh) |
-
2023
- 2023-11-21 CN CN202311557348.6A patent/CN117499137A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106575416B (zh) | 用于向装置验证客户端的系统和方法 | |
US11252142B2 (en) | Single sign on (SSO) using continuous authentication | |
EP3138265B1 (en) | Enhanced security for registration of authentication devices | |
TWI465932B (zh) | 建立行動裝置、載具系統及雲端服務間的信任關係的方法、及其行動裝置與電腦可讀取媒體 | |
JP6401784B2 (ja) | 決済認証システム、方法及び装置 | |
TWI548249B (zh) | 安全資料驗證方法、系統與電腦可讀取儲存媒體 | |
CN111786799B (zh) | 基于物联网通信模组的数字证书签发方法及系统 | |
CN113711560A (zh) | 用于有效质询-响应验证的系统和方法 | |
US20170331821A1 (en) | Secure gateway system and method | |
US20230198751A1 (en) | Authentication and validation procedure for improved security in communications systems | |
CN111901359B (zh) | 资源账户授权方法、装置、系统、计算机设备和介质 | |
CN110838919B (zh) | 通信方法、存储方法、运算方法及装置 | |
JP6657265B2 (ja) | サービス認証のための方法および装置 | |
KR101799517B1 (ko) | 인증 서버 및 방법 | |
CN111970117B (zh) | 证书下载方法、装置及设备 | |
CN105323245A (zh) | 智能终端及其授权方法和系统 | |
CN115935318B (zh) | 一种信息处理方法、装置、服务器、客户端及存储介质 | |
KR101639794B1 (ko) | 본인 확인 및 본인 인증을 위한 인증 방법 및 시스템 | |
CN117499137A (zh) | 一种第三方授权登录方法及系统 | |
WO2017024188A1 (en) | Method and apparatus for service authentication cross-reference to related applications | |
CN107977564A (zh) | 一种交易认证处理方法、认证服务器、终端及交易设备 | |
CN117728954B (zh) | 线上认证方法、线上数据获取方法、系统及电子设备 | |
TWI778319B (zh) | 跨平台授權存取資源方法及授權存取系統 | |
CN117097509A (zh) | 一种授权登录方法及装置 | |
CN117575593A (zh) | 一种第三方支付方法及系统 |
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 |