应用授权方法及装置与流程

文档序号:11156690阅读:631来源:国知局
本公开涉及信息安全领域,特别涉及一种应用授权方法及装置。
背景技术
:OAuth(OpenAuthorization,开放授权)作为一种开放标准协议,允许第三方应用在用户授权的情况下,访问用户在服务提供方处存储的信息。在用户授权的情况下,第三方应用获取服务提供方分配的访问令牌,并使用该访问令牌,通过第三方服务器从服务提供方处获取相应的信息。为了避免频繁访问服务提供方造成服务提供方访问压力过大,第三方服务器对从服务提供方处获取到的信息进行缓存,后续第三方应用即可根据访问令牌直接从第三方服务器获取相应的信息。然而,在访问令牌的有效期限内,即使用户修改了在服务提供方处注册的用户账号的密码,第三方应用仍旧能够根据先前分配的访问令牌从第三方服务器处获取信息,从而带来信息泄露的安全隐患。技术实现要素:本公开实施例提供了一种应用授权方法及装置,技术方案如下:根据本公开实施例的第一方面,提供了一种应用授权方法,该方法包括:获取与第三方应用绑定的用户账号,第三方应用经过用户授权后与用户账号进行绑定;当检测到用户账号的密码发生变更时,向第三方应用对应的第三方服务器发送密码变更信息,第三方服务器用于根据密码变更信息指示对第三方应用重新进行授权。可选的,该方法,还包括:接收第三方服务器发送的注册请求,注册请求的预设注册字段中存储有第三方服务器的回调接口;对第三方服务器和回调接口之间的第一对应关系进行存储;当检测到用户账号的密码发生变更时,向第三方应用对应的第三方服务器发送密码变更信息,包括:当检测到用户账号的密码发生变更时,根据第一对应关系获取第三方服务器对应的回调接口;通过回调接口向第三方服务器发送密码变更信息。可选的,该方法,还包括:接收第三方服务器发送的检测请求,检测请求中包括第三方服务器存储的访问令牌;当检测到访问令牌无效时,则确定访问令牌对应的用户账号的密码发生变更,并执行向第三方应用对应的第三方服务器发送密码变更信息的步骤。可选的,服务提供方服务器中存储有用户账号与分配的访问令牌之间的第二对应关系;当检测到用户账号的密码发生变更时,向第三方应用对应的第三方服务器发送密码变更信息,包括:当检测到用户账号的密码发生变更时,根据第二对应关系获取用户账号对应的访问令牌;向第三方服务器发送包含访问令牌的密码变更信息,第三方服务器用于根据密码变更信息清除访问令牌或访问令牌对应的缓存信息中的至少一种。根据本公开实施例的第二方面,提供了一种应用授权方法,该方法包括:接收服务提供方服务器发送的密码变更信息,密码变更信息是服务提供方服务器检测到用户账号的密码发生变更时发送的,用户账号与第三方服务器对应的第三方应用绑定;接收第三方应用发送的访问请求,访问请求中包括服务提供方服务器分配的访问令牌;当密码变更信息指示访问令牌对应的用户账号的密码发生变更时,指示第三方应用重新进行授权。可选的,该方法,还包括:向服务提供方服务器发送注册请求,注册请求的预设注册字段中存储有第三服务器的回调接口,服务提供方服务器用于对第三服务器和回调接口之间的第一对应关系进行存储;接收服务提供方服务器发送的密码变更信息,包括:通过回调接口接收服务提供方服务器发送的密码变更信息。可选的,该方法,还包括:向服务提供方服务器发送检测请求,检测请求中包括第三方服务器存储的访问令牌,服务提供方服务器用于检测访问令牌是否有效,并在检测到访问令牌无效时发送密码变更信息。可选的,密码变更信息中包括用户账号对应的访问令牌;该方法,还包括:根据密码变更信息清除访问令牌或访问令牌对应的缓存信息中的至少一种。根据本公开实施例的第三方面,提供了一种应用授权装置,该装置包括:获取模块,被配置为获取与第三方应用绑定的用户账号,第三方应用经过用户授权后与用户账号进行绑定;第一发送模块,被配置为当检测到用户账号的密码发生变更时,向第三方应用对应的第三方服务器发送密码变更信息,第三方服务器用于根据密码变更信息指示对第三方应用重新进行授权。可选的,该装置,还包括:第一接收模块,被配置为接收第三方服务器发送的注册请求,注册请求的预设注册字段中存储有第三方服务器的回调接口;存储模块,被配置为对第三方服务器和回调接口之间的第一对应关系进行存储;第一发送模块,包括:获取子模块,被配置为当检测到用户账号的密码发生变更时,根据第一对应关系获取第三方服务器对应的回调接口;发送子模块,被配置为通过回调接口向第三方服务器发送密码变更信息。可选的,该装置,还包括:第二接收模块,被配置为接收第三方服务器发送的检测请求,检测请求中包括第三方服务器存储的访问令牌;第一发送模块,还被配置为当检测到访问令牌无效时,确定访问令牌对应的用户账号的密码发生变更,并向第三方应用对应的第三方服务器发送密码变更信息。可选的,服务提供方服务器中存储有用户账号与分配的访问令牌之间的第二对应关系;第一发送模块,还被配置为:当检测到用户账号的密码发生变更时,根据第二对应关系获取用户账号对应的访问令牌;向第三方服务器发送包含访问令牌的密码变更信息,第三方服务器用于根据密码变更信息清除访问令牌或访问令牌对应的缓存信息中的至少一种。根据本公开实施例的第四方面,提供了一种应用授权装置,该装置包括:第三接收模块,被配置为接收服务提供方服务器发送的密码变更信息,密码变更信息是服务提供方服务器检测到用户账号的密码发生变更时发送的,用户账号与第三方服务器对应的第三方应用绑定;第四接收模块,被配置为接收第三方应用发送的访问请求,访问请求中包括服务提供方服务器分配的访问令牌;指示模块,被配置为当密码变更信息指示访问令牌对应的用户账号的密码发生变更时,指示第三方应用重新进行授权。可选的,该装置,还包括:第二发送模块,被配置为向服务提供方服务器发送注册请求,注册请求的预设注册字段中存储有第三服务器的回调接口,服务提供方服务器用于对第三服务器和回调接口之间的第一对应关系进行存储;第三接收模块,被配置为:通过回调接口接收服务提供方服务器发送的密码变更信息。可选的,该装置,还包括:第三发送模块,被配置为向服务提供方服务器发送检测请求,检测请求中包括第三方服务器存储的访问令牌,服务提供方服务器用于检测访问令牌是否有效,并在检测到访问令牌无效时发送密码变更信息。可选的,密码变更信息中包括用户账号对应的访问令牌;装置,还包括:清除模块,被配置为根据密码变更信息清除访问令牌或访问令牌对应的缓存信息中的至少一种。根据本公开实施例的第五方面,提供了一种应用授权装置,该装置包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:获取与第三方应用绑定的用户账号,第三方应用经过用户授权后与用户账号进行绑定;当检测到用户账号的密码发生变更时,向第三方应用对应的第三方服务器发送密码变更信息,第三方服务器用于根据密码变更信息指示对第三方应用重新进行授权。根据本公开实施例的第六方面,提供了一种应用授权装置,该装置包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:接收服务提供方服务器发送的密码变更信息,密码变更信息是服务提供方服务器检测到用户账号的密码发生变更时发送的,用户账号与第三方服务器对应的第三方应用绑定;接收第三方应用发送的访问请求,访问请求中包括服务提供方服务器分配的访问令牌;当密码变更信息指示访问令牌对应的用户账号的密码发生变更时,指示第三方应用重新进行授权。本公开实施例提供的技术方案可以包括以下有益效果:服务提供方服务器通过检测与第三方应用绑定的用户账号的密码是否发生变更,并在检测到用户账号的密码发生变更时,向第三方应用对应的第三方服务器发送密码变更指示,以便第三方服务器后续接收到第三方应用发送的访问请求时,指示用户对第三方应用重新授权,使得用户账号密码变更后,第三方应用无法根据先前的授权信息进行访问,从而避免用户账号相关信息的泄露,提高了与第三方应用绑定的用户账号的安全性。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。图1是根据本公开一示例性实施例示出的实施环境的示意图;图2是根据本公开一示例性实施例示出的应用授权方法的方法流程图;图3是根据本公开另一示例性实施例示出的应用授权方法的方法流程图;图4是根据本公开再一示例性实施例示出的应用授权方法的方法流程图;图5是根据本公开一示例性实施例示出的应用授权装置的框图;图6是根据本公开一示例性实施例示出的应用授权装置的框图;图7是根据一示例性实施例示出的一种应用授权装置的框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。在本文提及的“模块”是指存储在存储器中的能够实现某些功能的程序或指令;在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。图1是根据本公开一示例性实施例示出的实施环境的示意图。该实施环境中包括用户终端110、第三方服务器120和服务提供方服务器130。用户终端110是运行有第三方应用的电子设备,该第三方应用为第三方网页应用或第三方应用程序(移动应用),该电子设备可以是智能手机、平板电脑、膝上型便捷计算机或台式计算机等等。其中,该第三方应用支持OAuth协议,即用户在服务提供方服务器130中注册用户账号后,可以将第三方应用与该用户账号进行绑定,并授权第三方应用访问用户在服务提供方服务器130处存储的信息。一种可能的实施方式中,第三方应用经过用户授权后,服务提供方服务器130为第三方应用分配一个访问令牌,第三方应用即根据该访问令牌从服务提供方服务器130处获取相应的信息。用户终端110与第三方服务器120之间通过有线或无线网络相连。第三方服务器120为用户终端110中第三方应用的后台服务器,且该第三方服务器120预先在服务提供方服务器130注册OAuth服务,使得第三方应用能够在用户授权情况下,能够与服务提供方服务器130中注册的用户账号进行绑定。经过用户授权的第三方应用即通过第三方服务器120从服务提供方服务器130处获取绑定用户账号的相关信息。可选的,第三方应用经过用户授权后,服务提供方服务器130即向第三方服务器120发送分配的访问令牌,第三方服务器120对该访问令牌进行复制,其中一份存储在本地,另一份则发送至第三方应用。第三方应用通过第三方服务器120从服务提供方服务器130处获取信息时,第三方服务器120对第三方应用对应的访问令牌以及服务提供方服务器130反馈的信息进行关联存储,后续第三方应用根据访问令牌获取信息时,第三方服务器120直接将该访问令牌对应的缓存信息反馈给第三方应用,而不再需要从服务提供方服务器130处获取。第三方服务器120与服务提供方服务器130之间通过有线或无线网络相连。服务提供方服务器130是提供OAuth服务的服务器。服务提供方服务器130是一台服务器、若干台服务器组成的服务器集群或云计算中心。可选的,该服务提供方服务器130包括授权服务器和信息存储服务器。授权服务器用于在用户授权阶段,根据用户账号为授权的第三方应用分配访问令牌,其中,针对同一第三方应用,为不同用户账号分配的访问令牌不同,针对同一用户账号,为不同第三方应用分配的访问令牌不同;信息存储服务器则用于在信息获取阶段,根据第三方应用发送的访问令牌,向第三方应用提供对应用户账号的相关信息。利用服务提供方服务器130提供的OAuth服务时,第三方应用能够与用户预先在服务提供方服务器130处注册的用户账号进行绑定,并在无需知悉用户账号及密码的情况下,根据服务提供方服务器130分配的访问令牌获取绑定用户账号的相关信息。本公开实施例中以服务提供方服务器侧的应用授权方法用于服务提供方服务器130,以第三方服务器侧的应用授权方法用于第三方服务器120为例进行示意性说明。图2是根据本公开一示例性实施例示出的应用授权方法的方法流程图。本实施例以该应用授权方法用于图1所示实施环境为例进行说明。该方法可以包括如下步骤。在步骤201中,服务提供方服务器获取与第三方应用绑定的用户账号,第三方应用经过用户授权后与用户账号进行绑定。用户在服务提供方服务器处完成账号注册后,服务提供方服务器即对注册的用户账号进行存储。当用户使用第三方应用并请求与该用户账号进行绑定时,服务提供方服务器即对用户账号与第三方应用的绑定关系进行存储,其中,同一用户账号可同时绑定多个第三方应用。比如,该服务提供方服务器为即时通讯应用程序的后台服务器,且用户在该服务提供方服务器处注册了即时通讯账号(用户账号),当购物类应用程序(第三方应用)支持服务提供方服务器提供的OAuth服务时,用户即可授权该购物类应用程序与即时通讯账号绑定,其中,用户通过在服务提供方服务器提供的授权界面中输入用户账号及密码,并由服务提供方服务器对用户输入的信息进行校验后,完成授权及绑定过程。示意性的,用户账号与第三方应用的绑定关系如表一所示。表一用户账号第三方应用Zhangsan第三方应用A、第三方应用BLisi第三方应用B、第三方应用CWangwu第三方应用A、第三方应用C服务提供方服务器对各个用户账号进行维护,获取绑定第三方应用的用户账号,并进一步通过下述步骤202检测该用户账号的密码是否发生变更。在步骤202中,当检测到用户账号的密码发生变更时,服务提供方服务器向第三方应用对应的第三方服务器发送密码变更信息。可选的,服务提供方服务器获取到绑定第三方应用的用户账号后,检测此类用户账号的密码是否发生变更。当检测到用户账号的密码未发生变更时,确定该用户账号绑定的第三方应用不存在信息泄露风险;当检测到用户账号的密码发生变更时,确定与该用户账号绑定的第三方应用存在泄露用户信息的风险,并执行步骤202。需要说明的是,在其他可能的实施方式中,服务提供方服务器也可以在检测到用户账号的密码发生变更时,进一步检测该用户账号是否与第三方应用绑定,并在检测到用户账号与第三方应用绑定时,执行步骤202,本公开实施例并不对此进行限定。当检测到用户账号的密码发生变更,且该用户账号绑定了第三方应用程序时,服务提供方服务器即向(与用户账号绑定的)第三方应用对应的第三方服务器发送密码变更信息。可选的,服务提供方服务器中预先存储有用户账号与分配的访问令牌之间的对应关系,当检测到用户账号发生密码变更时,服务提供方服务器即从该对应关系中查找对应的访问令牌,并将将查找到的访问令牌添加到密码变更信息中。示意性的,访问令牌与用户账号之间的对应关系如表二所示。表二用户账号访问令牌ZhangsanAccessTokenA、AccessTokenBLisiAccessTokenC、AccessTokenDWangwuAccessTokenE、AccessTokenF其中,用户账号对应访问令牌的数量与该用户账号绑定的第三方应用的数量相同。比如,如表二所示,用户账号“Zhangsan”对应访问令牌“AccessTokenA”和“AccessTokenB”,表示该用户账号与两个第三方应用绑定。需要说明的是,当根据用户账号获取到多个访问令牌时,服务提供方服务器进一步确定各个访问令牌各自对应的第三方应用,并将携带访问令牌的密码变更信息发送到对应的第三方服务器(对应第三方应用)。相应的,由于第三方服务器中存储有服务提供方服务器分配的各个访问令牌,因此,当接收到密码变更信息时,第三方服务器即可根据密码变更信息确定需要对哪一个访问令牌及相应的缓存信息进行处理。需要说明的是,服务提供方服务器检测到用户账号发生密码变更时,将该用户账号对应的所有访问令牌进行清除,后续过程中,第三方应用将无法根据先前分配的访问令牌获取相应用户账号的相关信息,从而避免信息泄露。在步骤203中,第三方服务器接收服务提供方服务器发送的密码变更信息。在一种可能的实施方式中,第三方服务器中存储有访问令牌以及根据该访问令牌从服务提供方服务器处缓存的信息。当第三方服务器获取到的密码变更信息中包含访问令牌时,即将该访问令牌和/或该访问令牌对应的缓存信息进行清除。示意性的,访问令牌与访问令牌对应缓存信息的对应关系如表三所示。表三访问令牌缓存信息AccessTokenA缓存信息AAccessTokenB缓存信息BAccessTokenC缓存信息C比如,当接收到的密码变更信息中包括访问令牌“AccessTokenA”时,第三方服务器清除“AccessTokenA”以及对应的缓存信息A。后续过程中,第三方应用将无法根据“AccessTokenA”获取相应的缓存信息A,从而避免信息泄露。在步骤204中,第三方服务器接收第三方应用发送的访问请求,访问请求中包括服务提供方服务器分配的访问令牌。经过用户授权后,第三方应用即根据服务提供方服务器分配的访问令牌,通过第三方服务器从服务提供方服务器获取相应信息。在一种可能的实施方式中,第三方应用向第三方服务器发送携带有访问令牌的访问请求,相应的,第三方服务器接收第三方应用发送的访问请求。在步骤205中,当密码变更信息指示该访问令牌对应的用户账号的密码发生变更时,第三方服务器指示第三方应用重新进行授权。进一步的,第三方服务器获取访问请求中包含的访问令牌,并检测是否接收到针对该访问令牌的密码变更信息。若未接收到针对该访问令牌的密码变更信息,则确定该访问令牌对应的用户账号未发生密码变更,根据该访问令牌获取相应的缓存信息,或根据该访问令牌从服务提供方服务器处获取相应信息,并将获取到的信息反馈给第三方应用;若接收到针对该访问令牌的密码变更信息,则确定该访问令牌对应的用户账号发生密码变更,为了避免用户账号信息泄露,第三方服务器指示发送该访问请求的第三方应用重新进行授权。在一种可能的实施方式中,第三方服务器向第三方应用发送重新授权指令,指示正在使用第三方应用的用户重新根据用户账号及更新后的密码进行授权。需要说明的是,对第三方应用进行重新授权的方式参照现有OAuth协议,本实施例在此不再赘述。综上所述,本实施例中,服务提供方服务器通过检测与第三方应用绑定的用户账号的密码是否发生变更,并在检测到用户账号的密码发生变更时,向第三方应用对应的第三方服务器发送密码变更指示,以便第三方服务器后续接收到第三方应用发送的访问请求时,指示用户对第三方应用重新授权,使得用户账号密码变更后,第三方应用无法根据先前的授权信息进行访问,从而避免用户账号相关信息的泄露,提高了与第三方应用绑定的用户账号的安全性。在实际应用过程中,第三方服务器在服务提供方服务器处注册OAuth服务时,向服务提供方服务器提供额外的回调接口;后续过程中,当服务提供方服务器检测到绑定第三方应用的用户账号发生密码变更时,即通过该回调接口向第三方服务器发送密码变更信息,由第三方服务器根据该密码变更信息指示相应的第三方应用重新进行授权。下面采用示意性的实施例进行说明。图3是根据本公开另一示例性实施例示出的应用授权方法的方法流程图。本实施例以该应用授权方法用于图1所示实施环境为例进行说明。该方法可以包括如下步骤。在步骤301中,第三方服务器向服务提供方服务器发送注册请求,注册请求的预设注册字段中存储有第三服务器的回调接口。第三方服务器需要使用服务提供方服务器的OAuth服务时,需要预先在服务提供方服务器处进行注册。相关技术中,第三方服务器进行注册时,需要提供第三方服务器的标识以及重定向地址(redirect_uri)。完成注册后,当服务提供方服务器接收到用户授权信息(包含用户填写的用户账号和密码)时,服务提供方服务器即根据发起授权的第三方应用对应的重定向地址,向第三方服务器返回授权码(AuthorizationCode),以便第三方服务器根据该授权码从服务提供方服务器处换取访问令牌。而本发明实施例中,第三方服务器向服务提供方服务器发送注册请求中增加了额外的预设注册字段,该预设注册字段即用于存储第三方服务器的回调接口,该回调接口用于接收服务提供方服务器发送的密码变更信息。在一种可能的实施方式中,第三方服务器发送的注册请求中包含password_notify_uri字段,该字段用于以字符串形式存储回调接口,比如,该回调接口为http://www.example.com/password_notify。在步骤302中,服务提供方服务器接收第三方服务器发送的注册请求。相应的,服务提供方服务器注册请求的预设注册字段中提取该回调接口。在步骤303中,服务提供方服务器对第三方服务器和回调接口之间的第一对应关系进行存储。服务提供方服务器对提取到的回调接口与第三方服务器之间的对应关系进行关联存储,示意性的,回调接口与第三方服务器之间的对应关系如表四所示。表四第三方服务器回调接口Server001http://www.A.com/password_notifyServer002http://www.B.com/password_notifyServer003http://www.C.com/password_notify在步骤304中,服务提供方服务器获取与第三方应用绑定的用户账号,第三方应用经过用户授权后与用户账号进行绑定。上述步骤304的实施方式与步骤201的实施方式相似,本实施例在此不再赘述。在步骤305中,当检测到用户账号的密码发生变更时,服务提供方服务器根据第一对应关系获取第三方服务器对应的回调接口。当检测到绑定第三方应用的用户账号的密码发生变更时,服务提供方服务器从表四所示的对应关系中,获取与第三方服务器对应的回调接口。比如,服务提供方服务器检测到用户账号Zhangsan发生密码变更,且该用户账号绑定由第三方应用A(对应第三方服务器Server001)和第三方应用B(对应第三方服务器Server002)时,服务提供方服务器从表四所示对应关系中获取相应的回调接口,获取到的回调接口分别为http://www.A.com/password_notify及http://www.B.com/password_notify。在步骤306中,服务提供方服务器通过回调接口向第三方服务器发送密码变更信息,该密码变更信息中包括访问令牌。进一步的,服务提供方服务器通过回调接口向相应的第三方服务器发送携带访问令牌的密码变更信息,指示第三方服务器重新对访问令牌对应的第三方应用进行授权。在步骤307中,第三方服务器通过回调接口接收服务提供方服务器发送的密码变更信息。相应的,第三方服务器通过回调接口接收服务提供方服务器发送的密码变更信息。在步骤308中,第三方服务器根据密码变更信息清除访问令牌或该访问令牌对应的缓存信息中的至少一种。第三方服务器接收到密码变更信息后,获取密码变更信息中包含的访问令牌,并从预存访问令牌中(如表三所示),对该访问令牌和/或该访问令牌对应的缓存信息进行清除。在步骤309中,第三方服务器接收第三方应用发送的访问请求,访问请求中包括服务提供方服务器分配的访问令牌。在步骤310中,当密码变更信息指示该访问令牌对应的用户账号的密码发生变更时,第三方服务器指示第三方应用重新进行授权。本步骤的实施方式与上述步骤206相似,本实施例在此不再赘述。本实施例中,第三方服务器通过在注册OAuth服务阶段,向服务提供方服务器提供接收密码变更信息的回调接口,使得服务提供方服务器在检测到用户账号发生变更时,能够通过该回调接口及时通知第三方服务器,以便第三方服务器对相应用户账号对应的访问令牌进行清除,避免第三方应用根据先前的访问令牌获取第三方服务器处缓存的信息,从而提高了用户信息的安全性。在另一种实施方式中,第三方服务器通过轮询的方式从服务提供方服务器处获取用户账号的密码变更情况,并根据服务提供方服务器的反馈结果,对发生密码变更的用户账号对应的访问令牌进行处理。下面采用示意性的实施例进行说明图4是根据本公开再一示例性实施例示出的应用授权方法的方法流程图。本实施例以该应用授权方法用于图1所示实施环境为例进行说明。该方法可以包括如下步骤。在步骤401中,第三方服务器向服务提供方服务器发送检测请求,检测请求中包括第三方服务器存储的访问令牌。在一种可能的实施方式中,第三方服务器每隔预定时间间隔获取本地存储的各个访问令牌,并向服务提供方服务器发送携带该访问令牌的检测请求。比如,该预定时间间隔为1小时。在步骤402中,服务提供方服务器接收第三方服务器发送的检测请求。相应的,服务提供方服务器接收该检测请求,并提取该检测请求中包含的各个访问令牌。进一步的,服务提供方服务器检测检测请求中包含的访问令牌是否有效。由于用户账号发生密码变更后,服务提供方服务器会将原先为该用户账号分配的访问令牌进行删除,因此,在一种可能的实施方式中,服务提供方服务器接收到第三方服务器发送的检测请求后,获取为该第三方服务器分配的有效访问令牌,并检测检测请求中包含的各个访问令牌是否存在匹配的有效访问令牌。若检测请求中包含的访问令牌包含匹配的有效访问令牌,则确定访问令牌有效;若检测请求中包含的访问令牌未包含匹配的有效访问令牌,则确定访问令牌无效。比如,服务提供方服务器提取到检测请求中包含的访问令牌分别为:AccessTokenA、AccessTokenB、AccessTokenC和AccessTokenD,且为第三方服务器分配的有效访问令牌分别为:AccessTokenB、AccessTokenC和AccessTokenD,则确定AccessTokenA为无效的访问令牌。在步骤403中,当检测到访问令牌无效时,服务提供方服务器确定该访问令牌对应的用户账号的密码发生变更,向第三方服务器发送密码变更信息。对于检测出的无效访问令牌。服务提供方服务器通过发送密码变更信息的方式向第三方服务器进行反馈,其中,该密码变更信息中包含检测出的无效的访问令牌。在步骤404中,第三方服务器接收服务提供方服务器发送的密码变更信息。相应的,第三方服务器从接收到的密码变更信息中提取无效访问令牌。在步骤405中,第三方服务器根据密码变更信息清除无效访问令牌或该无效访问令牌对应的缓存信息中的至少一种。进一步的,第三方服务器对无效访问令牌和/或无效访问令牌对应的缓存信息进行清除,避免后续第三方应用程序根据无效访问令牌从第三方服务器处获取相应缓存信息而造成信息泄露。可选的,第三方服务器向无效访问令牌对应的第三方应用发送访问令牌消除指令,指示第三方应用对存储的无效访问令牌进行清除。在步骤406中,第三方服务器接收第三方应用发送的访问请求,访问请求中包括服务提供方服务器分配的访问令牌。在步骤407中,当密码变更信息指示该访问令牌对应的用户账号的密码发生变更时,第三方服务器指示第三方应用重新进行授权。上述步骤406至407的实施方式与步骤204至205的实施方式相似,本实施例在此不再赘述。本实施例中,第三方服务器通过主动轮询的方式发现本地存储的无效访问令牌,并对无效访问令牌及对应的缓存信息进行删除,从而避免用户账号发生密码变更时,第三方应用根据先前的访问令牌获取第三方服务器处缓存的信息,提高了用户信息的安全性;且第三方服务器无需设置额外的回调接口,降低了方案实现的难度。需要说明的是,上述各个实施例中,以服务提供方服务器为执行主体的步骤可单独实现成为服务提供方服务器侧的应用授权方法,以第三方服务器为执行主体的步骤可单独实现成为第三方服务器侧的应用授权方法,本实施例在此不再赘述。下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。图5是根据本公开一示例性实施例示出的应用授权装置的框图。该应用授权装置可以通过硬件或软硬件结合,实现成为图1所示服务提供方服务器130的全部或一部分。该应用授权装置包括:获取模块510,被配置为获取与第三方应用绑定的用户账号,第三方应用经过用户授权后与用户账号进行绑定;第一发送模块520,被配置为当检测到用户账号的密码发生变更时,向第三方应用对应的第三方服务器发送密码变更信息,第三方服务器用于根据密码变更信息指示对第三方应用重新进行授权。可选的,该装置,还包括:第一接收模块530,被配置为接收第三方服务器发送的注册请求,注册请求的预设注册字段中存储有第三方服务器的回调接口;存储模块540,被配置为对第三方服务器和回调接口之间的第一对应关系进行存储;第一发送模块520,包括:获取子模块521,被配置为当检测到用户账号的密码发生变更时,根据第一对应关系获取第三方服务器对应的回调接口;发送子模块522,被配置为通过回调接口向第三方服务器发送密码变更信息。可选的,该装置,还包括:第二接收模块550,被配置为接收第三方服务器发送的检测请求,检测请求中包括第三方服务器存储的访问令牌;第一发送模块520,还被配置为当检测到访问令牌无效时,确定访问令牌对应的用户账号的密码发生变更,并向第三方应用对应的第三方服务器发送密码变更信息。可选的,服务提供方服务器中存储有用户账号与分配的访问令牌之间的第二对应关系;第一发送模块520,还被配置为:当检测到用户账号的密码发生变更时,根据第二对应关系获取用户账号对应的访问令牌;向第三方服务器发送包含访问令牌的密码变更信息,第三方服务器用于根据密码变更信息清除访问令牌或访问令牌对应的缓存信息中的至少一种。综上所述,本实施例中,服务提供方服务器通过检测与第三方应用绑定的用户账号的密码是否发生变更,并在检测到用户账号的密码发生变更时,向第三方应用对应的第三方服务器发送密码变更指示,以便第三方服务器后续接收到第三方应用发送的访问请求时,指示用户对第三方应用重新授权,使得用户账号密码变更后,第三方应用无法根据先前的授权信息进行访问,从而避免用户账号相关信息的泄露,提高了与第三方应用绑定的用户账号的安全性。本实施例中,第三方服务器通过在注册OAuth服务阶段,向服务提供方服务器提供接收密码变更信息的回调接口,使得服务提供方服务器在检测到用户账号发生变更时,能够通过该回调接口及时通知第三方服务器,以便第三方服务器对相应用户账号对应的访问令牌进行清除,避免第三方应用根据先前的访问令牌获取第三方服务器处缓存的信息,从而提高了用户信息的安全性。本实施例中,第三方服务器通过主动轮询的方式发现本地存储的无效访问令牌,并对无效访问令牌及对应的缓存信息进行删除,从而避免用户账号发生密码变更时,第三方应用根据先前的访问令牌获取第三方服务器处缓存的信息,提高了用户信息的安全性;且第三方服务器无需设置额外的回调接口,降低了方案实现的难度。图6是根据本公开一示例性实施例示出的应用授权装置的框图。该应用授权装置可以通过硬件或软硬件结合,实现成为图1所示第三方服务器120的全部或一部分。该应用授权装置包括:第三接收模块610,被配置为接收服务提供方服务器发送的密码变更信息,密码变更信息是服务提供方服务器检测到用户账号的密码发生变更时发送的,用户账号与第三方服务器对应的第三方应用绑定;第四接收模块620,被配置为接收第三方应用发送的访问请求,访问请求中包括服务提供方服务器分配的访问令牌;指示模块630,被配置为当密码变更信息指示访问令牌对应的用户账号的密码发生变更时,指示第三方应用重新进行授权。可选的,该装置,还包括:第二发送模块640,被配置为向服务提供方服务器发送注册请求,注册请求的预设注册字段中存储有第三服务器的回调接口,服务提供方服务器用于对第三服务器和回调接口之间的第一对应关系进行存储;第三接收模块610,被配置为:通过回调接口接收服务提供方服务器发送的密码变更信息。可选的,该装置,还包括:第三发送模块650,被配置为向服务提供方服务器发送检测请求,检测请求中包括第三方服务器存储的访问令牌,服务提供方服务器用于检测访问令牌是否有效,并在检测到访问令牌无效时发送密码变更信息。可选的,密码变更信息中包括用户账号对应的访问令牌;该装置,还包括:清除模块660,被配置为根据密码变更信息清除访问令牌或访问令牌对应的缓存信息中的至少一种。综上所述,本实施例中,服务提供方服务器通过检测与第三方应用绑定的用户账号的密码是否发生变更,并在检测到用户账号的密码发生变更时,向第三方应用对应的第三方服务器发送密码变更指示,以便第三方服务器后续接收到第三方应用发送的访问请求时,指示用户对第三方应用重新授权,使得用户账号密码变更后,第三方应用无法根据先前的授权信息进行访问,从而避免用户账号相关信息的泄露,提高了与第三方应用绑定的用户账号的安全性。本实施例中,第三方服务器通过在注册OAuth服务阶段,向服务提供方服务器提供接收密码变更信息的回调接口,使得服务提供方服务器在检测到用户账号发生变更时,能够通过该回调接口及时通知第三方服务器,以便第三方服务器对相应用户账号对应的访问令牌进行清除,避免第三方应用根据先前的访问令牌获取第三方服务器处缓存的信息,从而提高了用户信息的安全性。本实施例中,第三方服务器通过主动轮询的方式发现本地存储的无效访问令牌,并对无效访问令牌及对应的缓存信息进行删除,从而避免用户账号发生密码变更时,第三方应用根据先前的访问令牌获取第三方服务器处缓存的信息,提高了用户信息的安全性;且第三方服务器无需设置额外的回调接口,降低了方案实现的难度。关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。图7是根据一示例性实施例示出的一种应用授权装置的框图。该应用授权装置700可实现为图1所示的第三方服务器120或服务提供方服务器130。参照图7,应用授权装置700包括处理组件722,其进一步包括一个或多个处理器,以及由存储器732所代表的存储器资源,用于存储可由处理部件722执行的指令,例如应用程序。存储器732中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件722被配置为执行指令,以执行上述第三方服务器侧或服务提供方服务器侧的应用授权方法。应用授权装置700还可以包括一个电源组件726被配置为执行应用授权装置700的电源管理,一个有线或无线网络接口750被配置为将应用授权装置700连接到网络,和一个输入输出(I/O)接口758。应用授权装置700可以操作基于存储在存储器732的操作系统,例如WindowsServerTM,MacOSXTM,UnixTM,LinuxTM,FreeBSDTM或类似。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本
技术领域
中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1