发明内容
本申请提供一种开放授权、资源访问的方法及装置、服务器,增强开放授权的安全性,以解决现有技术中资源被恶意盗用的问题。
根据本申请实施例的第一方面,提供一种开放授权的方法,所述方法包括:
资源服务器接收第三方应用发起的资源调用请求;其中,所述资源调用请求中包括所述第三方应用的标识、用户对应所述第三方应用的用户名和所述第三方应用请求的资源的标识;
对所述用户的身份认证通过后,获取所述用户当前使用的客户端设备的身份标识ID;
生成令牌token并发送至所述第三方应用;所述token包括所述客户端设备的ID、所述资源服务器的标识、所述用户对应所述资源服务器的用户名、所述第三方应用的标识、所述用户对应所述第三方应用的用户名以及所述第三方应用请求的资源的标识。
根据本申请实施例的第二方面,提供一种资源访问的方法,所述方法包括:
资源服务器接收第三方应用发起的资源访问请求;其中,所述资源访问请求中包括令牌token;所述token包括授权客户端设备的身份标识ID、所述资源服务器的标识、用户对应所述资源服务器的用户名、所述第三方应用的标识、所述用户对应所述第三方应用的用户名以及所述第三方应用请求的资源的标识;
对所述token的认证通过后,获取所述用户当前使用的客户端设备的ID;
将所述用户当前使用的客户端设备的ID与所述token中携带的授权客户端设备的身份标识ID进行比对;
当所述比对结果为一致时,发送资源访问请求通过的消息至所述第三方应用。
根据本申请实施例的第三方面,提供一种开放授权的装置,所述装置包括:
接收单元,用于接收第三方应用发起的资源调用请求;其中,所述资源调用请求中包括所述第三方应用的标识、用户对应所述第三方应用的用户名和所述第三方应用请求的资源的标识;
身份标识获取单元,用于对所述用户的身份认证通过后,获取所述用户当前使用的客户端设备的身份标识ID;
生成单元,用于生成令牌token;所述token包括所述客户端设备的ID、所述资源服务器的标识、所述用户对应所述资源服务器的用户名、所述第三方应用的标识、所述用户对应所述第三方应用的用户名以及所述第三方应用请求的资源的标识
发送单元,用于将所述token发送至所述第三方应用。
根据本申请实施例的第四方面,提供一种资源访问的装置,所述装置包括:
接收单元,用于接收第三方应用发起的资源访问请求;其中,所述资源访问请求中包括令牌token;所述token包括授权客户端设备的身份标识ID、所述资源服务器的标识、用户对应所述资源服务器的用户名、所述第三方应用的标识、所述用户对应所述第三方应用的用户名以及所述第三方应用请求的资源的标识;
身份标识获取单元,用于对所述token的认证通过后,获取所述用户当前使用的客户端设备的ID;
比对单元,用于将所述用户当前使用的客户端设备的ID与所述token中携带的授权客户端设备的身份标识ID进行比对;
发送单元,用于当所述比对结果为一致时,发送资源访问请求通过的消息至所述第三方应用。
根据本申请实施例的第五方面,提供一种服务器,包括:
处理器;用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为:
资源服务器接收第三方应用发起的资源调用请求;其中,所述资源调用请求中包括所述第三方应用的标识、用户对应所述第三方应用的用户名和所述第三方应用请求的资源的标识;
对所述用户的身份认证通过后,获取所述用户当前使用的客户端设备的身份标识ID;
生成令牌token并发送至所述第三方应用;所述token包括所述客户端设备的ID、所述资源服务器的标识、所述用户对应所述资源服务器的用户名、所述第三方应用的标识、所述用户对应所述第三方应用的用户名以及所述第三方应用请求的资源的标识。
根据本申请实施例的第六方面,提供一种服务器,包括:
处理器;用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为:
资源服务器接收第三方应用发起的资源访问请求;其中,所述资源访问请求中包括令牌token;所述token包括授权客户端设备的身份标识ID、所述资源服务器的标识、用户对应所述资源服务器的用户名、所述第三方应用的标识、所述用户对应所述第三方应用的用户名以及所述第三方应用请求的资源的标识;
对所述token的认证通过后,获取所述用户当前使用的客户端设备的ID;
将所述用户当前使用的客户端设备的ID与所述token中携带的授权客户端设备的身份标识ID进行比对;
当所述比对结果为一致时,发送资源访问请求通过的消息至所述第三方应用。
本申请实施例中,在资源服务器接收到第三方应用的资源调用请求时,并不直接发送token给该第三方应用,而是需要从用户当前使用的客户端设备中获取该客户端设备的ID,并将该客户端设备的ID写入token后再发送给第三方应用。由此使得,当该第三方应用发起资源访问请求,将token发送至资源服务器时,资源服务器不仅需要对token进行常规认证,还需要确认当前该用户使用的客户端设备的ID与该token中携带的客户端设备的ID是否一致,只有二者一致时,才同意该第三方应用的资源访问请求。
由此使得,用户只有通过被授权的客户端设备上的第三方应用才可以访问该资源,可以有效避免toke泄露或被恶意盗取后的用户资源被滥用问题,加强了开放性授权的安全性,有利于保护用户隐私。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
目前,不同网络服务间的内容共享一般都采用OAuth协议来实现,其允许用户让第三方应用访问该用户在某一网站上存储的私密的资源,而无需将用户名和密码提供给第三方应用。具体的,OAuth允许待访问资源所在网站的认证授权服务器产生一个access token,该access token限定了第三方应用可以在特定的时间内访问特定的资源。由此使得,第三方应用只需持有该access token,就可以访问该用户的某些资源,而不用暴露用户在该网站的用户名和密码,有利于保护用户在网站存储信息的安全。但是,该方法存在的弊端在于:如果该access token泄露或被恶意盗取,则很容易导致用户资源被盗取甚至于被恶意滥用。而本申请实施例所述的方法,可以有效增强开放授权的安全性,进一步确保用户资源的安全性。
参照图1,为本申请开放授权的方法的一个实施例的流程图。所述方法用于资源服务器,所述方法可以包括以下步骤:
步骤101:资源服务器接收第三方应用发起的资源调用请求;其中,所述资源调用请求中包括所述第三方应用的标识、用户对应所述第三方应用的用户名和所述第三方应用请求的资源的标识。
步骤102:对所述用户的身份认证通过后,获取所述用户当前使用的客户端设备的ID(Identity,身份标识)。
步骤103:生成token(令牌)并发送至所述第三方应用;所述token包括所述客户端设备的ID、所述资源服务器的标识、所述用户对应所述资源服务器的用户名、所述第三方应用的标识、所述用户对应所述第三方应用的用户名以及所述第三方应用请求的资源的标识。
本申请实施例中,在资源服务器接收到第三方应用的资源调用请求时,并不直接发送token给该第三方应用,而是需要从用户当前使用的客户端设备中获取该客户端设备的ID,并将该客户端设备的ID写入token后再发送给第三方应用。由此使得,当该第三方应用发起资源访问请求,将token发送至资源服务器时,资源服务器不仅需要对token进行常规认证,还需要确认当前该用户使用的客户端设备的ID与该token中携带的客户端设备的ID是否一致,只有二者一致时,才同意该第三方应用的资源访问请求。
由此使得,用户只有通过该客户端设备上的第三方应用才可以访问该资源,可以有效避免toke泄露或被恶意盗取后的用户资源被滥用问题,加强了开放性授权的安全性,有利于保护用户隐私。
参照图2,为本申请开放授权的方法的另一个实施例的流程图。所述方法用于资源服务器,所述方法可以包括以下步骤:
步骤201:用户在客户端设备上安装设备认证客户端,该设备认证客户端中保存有该客户端设备的ID。
本申请实施例中,该设备认证客户端可以直接获取该客户端设备的MAC(Media Access Control,媒体访问控制)地址、设备编号等作为该客户端设备的ID。该设备认证客户端也可以为该客户端设备生成唯一的ID。
当然,也可以由该设备认证客户端推送ID设定界面给用户,并接收用户为该客户端设备设定的ID等。
具体的,用户可以在客户端设备上安装数字证书代理Agent作为该设备认证客户端。
该数字证书代理Agent可以为该客户端设备生成一串数字认证码,用于标识该客户端设备的身份信息。
步骤202:用户通过该客户端设备登录第三方应用。
本申请实施例中,用户通过该客户端设备访问第三方应用。具体的,用户点击该客户端设备上显示的第三方应用的图标,打开该第三方应用的登录界面;用户在该第三方应用的登录界面中输入正确的用户名和密码,登录该第三方应用。
步骤203:当该第三方应用需要使用该用户保存在某资源服务器上的某个资源时,该第三方应用向该资源服务器发起资源调用请求,该资源调用请求中包括该第三方应用的标识、该用户对应该第三方应用的用户名和该第三方应用请求的资源的标识。
例如,假设当前用户通过该客户端设备登录的第三方应用为微信。当用户打开微信中的某条日志时,需要加载该用户保存在资源服务器(例如百度云)上的某张图片a。则微信向百度云发起资源调用请求,该资源调用请求中包括该第三方应用的标识(即为微信)、该用户对应微信的用户名和该微信请求的资源的标识(即为图片a)。
步骤204:该资源服务器接收到该资源调用请求时,通过该客户端设备向用户推送登录界面。
本申请实施例中,当该资源服务器接收到第三方应用发送的资源调用请求时,通过该客户端设备推送登录界面,对当前用户进行身份认证。具体的,该资源服务器通过该客户端设备推送登录界面给用户,接收用户输入的用户名和密码,并对该用户名和密码进行认证。
步骤205:该资源服务器完成对该用户的身份认证后,访问该客户端设备上安装的设备认证客户端,获取其中保存的该客户端设备的ID。
本申请实施例中,当该用户成功登录了该资源服务器后,该资源服务器进一步的,需要获取该客户端设备上安装的设备认证客户端中保存的该客户端设备的ID。
步骤206:该资源服务器通过该客户端设备推送确认消息给用户,该确认消息中包括该客户端设备的ID、该资源服务器的标识、该用户对应该资源服务器的用户名、该第三方应用的标识、该用户对应该第三方应用的用户名以及该第三方应用请求的资源的标识。
则,本申请实施例中,资源服务器从设备认证客户端中获取了该客户端设备的ID后,推送确认消息给用户。通过该确认消息,询问当前用户,是否允许该第三方应用(由上述第三方应用的标识确定)的上用户(由上述对应该第三方应用的用户名确定)通过该客户端设备(由上述客户端设备的ID确定)访问资源服务器的用户(由上述对应该资源服务器的用户名确定)的资源(由上述该第三方应用请求的资源的标识确定)。
假设,该第三方应用为微信,该资源服务器为百度云;该用户对应百度云的用户名为A,该用户对应微信的用户名为B,微信请求的资源的标识为图片a。该客户端设备的ID为ID_1。
则,本申请实施例中,该确认消息用于询问当前用户,是否允许微信的用户B通过该ID为ID_1的客户端设备访问百度云的用户A的图片a。
步骤207:该资源服务器接收到用户返回的确认通过的消息时,通知授权中心生成token并发送至该第三方应用;该token中包括该客户端设备的ID、该资源服务器的标识、该用户对应该资源服务器的用户名、该第三方应用的标识、该用户对应该第三方应用的用户名以及该第三方应用请求的资源的标识。
步骤208:该第三方应用保存该token,用于访问上述请求的资源。
本申请实施例中,在客户端设备上安装设备认证客户端,该设备认证客户端中保存有该客户端设备的ID。在资源服务器接收到第三方应用的资源调用请求时,资源服务器并不直接通知授权中心发送token给该第三方应用,而是需要从该设备认证服务器中获取该客户端设备的ID;并推送确认消息给当前用户,询问该用户是否同意该第三方应用通过该客户端设备访问其保存在该资源服务器上的资源;只有在用户返回确认信息时,资源服务器才通知授权中心发送token给第三方应用,且该token中保存有该客户端设备的ID。
由此使得,用户只有通过该客户端设备上的第三方应用才可以访问该资源,可以有效避免toke泄露或被恶意盗取后的用户资源被滥用问题,加强了开放性授权的安全性,有利于保护用户隐私。
参照图3,为本申请资源访问的方法的一个实施例的流程图。所述方法可以包括以下步骤:
步骤301:资源服务器接收第三方应用发起的资源访问请求;其中,所述资源访问请求中包括令牌token;所述token包括授权客户端设备的身份标识ID、所述资源服务器的标识、用户对应所述资源服务器的用户名、所述第三方应用的标识、所述用户对应所述第三方应用的用户名以及所述第三方应用请求的资源的标识。
步骤302:对所述token的认证通过后,获取所述用户当前使用的客户端设备的ID。
步骤303:将所述用户当前使用的客户端设备的ID与所述token中携带的授权客户端设备的身份标识ID进行比对。
步骤304:当所述比对结果为一致时,发送资源访问请求通过的消息至所述第三方应用。
本申请实施例中,当用户希望通过某客户端设备上的第三方应用访问该用户在某资源服务器的资源时,第三方应用向该资源服务器发送的token中包括该用户当前使用的客户端设备的ID;该资源服务器接收到该token后,获取该用户当前使用的客户端设备的ID,将其与该token中携带的客户端设备的ID相比对;当二者一致时,资源服务器才同意该第三方应用的资源访问请求。
由此使得,用户只有通过该客户端设备上的第三方应用才可以访问该资源,可以有效避免toke泄露或被恶意盗取后的用户资源被滥用问题,加强了开放性授权的安全性,有利于保护用户隐私。
参照图4,为本申请的资源访问的方法的一个实施例的流程图。所述方法用于资源服务器,所述方法可以包括以下步骤:
步骤401:用户通过客户端设备登录第三方应用。
本申请实施例中,用户通过客户端设备访问第三方应用。具体的,用户点击该客户端设备上显示的第三方应用的图标,打开该第三方应用的登录界面;用户在该第三方应用的登录界面中输入正确的用户名和密码,登录该第三方应用。
步骤402:当该第三方应用需要使用该用户保存在某资源服务器上的某个资源时,第三方应用向该资源服务器发送资源访问请求;该资源访问请求中包括token;该token中包括授权客户端设备的ID、该资源服务器的标识、该用户对应该资源服务器的用户名、该第三方应用的标识、该用户对应该第三方应用的用户名以及该第三方应用请求的资源的标识。
本申请实施例中,当第三方应用需要使用用户保存在某个资源服务器上的某个资源时,需要向该资源服务器发送token,该token用于向该资源服务器表示:第三方应用的某用户可以通过授权客户端设备使用该资源服务器上某用户的某个资源。然后等待该资源服务器对该token进行认证。
步骤403:资源服务器通知其授权中心对该token进行认证。
步骤404:当授权中心对该token的认证通过后,资源服务器访问该用户当前使用的客户端设备上安装的设备认证客户端,获取其中保存的该客户端设备的ID。
步骤405:资源服务器将获取的所述用户当前使用的客户端设备的ID与所述token中携带的客户端设备的ID进行比对。
本申请实施例中,资源服务器从该用户当前使用的客户端设备的设备认证服务器中获取该客户端设备的ID,并将其与token中包括的客户端设备相比对。如果二者一致,则授权中心可以确定当前要求进行资源访问的第三方应用所使用的客户端设备是该token中授权的客户端设备,则同意该资源访问请求;如果二者不一致,则授权中心可以确定当前要求进行资源访问的第三方应用所使用的客户端设备不是该token中授权的客户端设备,则该资源访问请求不通过。
步骤406:当所述比对结果为一致时,资源服务器发送资源访问请求通过的消息至所述第三方应用,同意该第三方应用的资源访问请求。
在实际应用中,当资源服务器确定该对比结果为一致时,为了进一步确保资源访问的安全性,还可以包括:资源服务器推送确认消息给用户,该确认消息中包括该客户端设备的ID、该用户对应该资源服务器的用户名、该第三方应用的标识、该用户对应该第三方应用的用户名以及该第三方应用请求的资源的标识。
通过上述方法可以使得,资源服务器通过该确认消息询问当前用户,是否允许某第三方应用的某用户通过该客户端设备访问某资源服务器的某用户的某个资源。
假设,该第三方应用为微信,该资源服务器为百度云;该用户对应百度云的用户名为A,该用户对应微信的用户名为B,微信请求的资源的标识为图片a。该客户端设备的ID为ID_1。
本申请实施例中,该确认消息用于询问当前用户,是否允许微信的用户B通过该ID为ID_1的客户端设备访问百度云的用户A的图片a。
基于此,资源服务器只有在接收到用户返回的确认通过消息后,才会发送资源访问请求通过的消息至所述第三方应用,同意该第三方应用的资源访问请求。
由此使得,只有用户返回确认通过的消息,即为该用户同意某第三方应用的某用户通过该客户端设备访问某资源服务器的某用户的某个资源时,该资源服务器才可以同意该第三方应用的资源访问请求,同意该第三方应用访问该资源服务器上的某资源。
由此完成了本申请实施例的资源访问的全过程。
本申请实施例中,在客户端设备上安装设备认证客户端,该设备认证客户端中保存有该客户端设备的ID。在该客户端设备上的某第三方应用需要访问某用户在某资源服务器的某个资源时,第三方应用向该资源服务器发送的token中包括该客户端设备的ID;该资源服务器接收到该token后,由授权中心获取该客户端设备上安装的设备认证客户端中保存的该客户端设备的ID,将其与该token中包括的客户端设备的ID相比对;当二者一致时,授权中心进一步的推送确认消息给用户,询问该用户是否同意该第三方应用通过该客户端设备访问其保存在该资源服务器上的资源;只有在用户返回确认信息时,授权中心才通知资源服务器,可以同意该第三方应用的资源访问请求。
由此使得,用户只有通过该客户端设备上的第三方应用才可以访问该资源,可以有效避免toke泄露或被恶意盗取后的用户资源被滥用问题,加强了开放性授权的安全性,有利于保护用户隐私。
与本申请的开放授权的方法实施例相对应,本申请还提供了开放授权的装置及服务器的实施例。
本申请装置的实施例可以分别应用在客户端设备和服务器上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图5所示,为本申请的开放授权的装置所在设备的一种硬件结构图,除了图5所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常根据该设备的实际功能,还可以包括其他硬件,如对于客户端设备来说,可能包括摄像头、触摸屏子、通信组件等,对于服务器,可能包括负责处理报文的转发芯片等等。
参见图6,为本申请的开放授权的装置的一个实施例框图。如图6所示,所述装置用于资源服务器,所述装置包括:接收单元601、身份标识获取单元602、生成单元603和发送单元604。
所述接收单元601,用于接收第三方应用发起的资源调用请求;其中,所述资源调用请求中包括所述第三方应用的标识、用户对应所述第三方应用的用户名和所述第三方应用请求的资源的标识。
所述身份标识获取单元602,用于对所述用户的身份认证通过后,获取所述用户当前使用的客户端设备的身份标识ID。
所述生成单元603,用于生成令牌token;所述token包括所述客户端设备的ID、所述资源服务器的标识、所述用户对应所述资源服务器的用户名、所述第三方应用的标识、所述用户对应所述第三方应用的用户名以及所述第三方应用请求的资源的标识。
所述发送单元604,用于将所述token发送至所述第三方应用。
其中,所述装置还可以包括:确认推动单元。
所述确认推送单元,用于通过所述客户端设备推送确认消息给所述用户;所述确认消息包括所述客户端设备的ID、所述资源服务器的标识、所述用户对应所述资源服务器的用户名、所述第三方应用的标识、所述用户对应所述第三方应用的用户名以及所述第三方应用请求的资源的标识。
所述生成单元,用于在接收到所述用户返回的确认通过消息后,生成token。
其中,所述身份标识获取单元包括:获取子单元,用于从所述客户端设备上安装的设备认证服务器上获取所述客户端设备的ID。
其中,所述客户端设备的ID为所述客户端设备的媒体访问控制MAC地址或设备编号;或者,所述客户端设备的ID为所述设备认证服务器为所述客户端设备生成的。
本申请实施例中,在资源服务器接收到第三方应用的资源调用请求时,并不直接发送token给该第三方应用,而是需要从用户当前使用的客户端设备中获取该客户端设备的ID;并推送确认消息给当前用户,询问该用户是否同意该第三方应用通过该客户端设备访问其保存在该资源服务器上的资源;只有在用户返回确认通过的消息时,资源服务器才发送token给第三方应用,且该token中保存有该客户端设备的ID。
由此使得,用户只有通过该客户端设备上的第三方应用才可以访问该资源,可以有效避免toke泄露或被恶意盗取后的用户资源被滥用问题,加强了开放性授权的安全性,有利于保护用户隐私。
与本申请的资源访问的方法实施例相对应,本申请还提供了资源访问的装置及服务器的实施例。
本申请装置的实施例可以分别应用在客户端设备和服务器上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图7所示,为本申请的资源访问的装置所在设备的一种硬件结构图,除了图7所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常根据该设备的实际功能,还可以包括其他硬件,如对于客户端设备来说,可能包括摄像头、触摸屏子、通信组件等,对于服务器,可能包括负责处理报文的转发芯片等等。
参见图8,为本申请的资源访问的装置的一个实施例框图。如图8所示,所述装置用于资源服务器,所述装置包括:接收单元801、身份标识获取单元802、比对单元803和发送单元804。
所述接收单元801,用于接收第三方应用发起的资源访问请求;其中,所述资源访问请求中包括令牌token;所述token包括授权客户端设备的身份标识ID、所述资源服务器的标识、用户对应所述资源服务器的用户名、所述第三方应用的标识、所述用户对应所述第三方应用的用户名以及所述第三方应用请求的资源的标识。
所述身份标识获取单元802,用于对所述token的认证通过后,获取所述用户当前使用的客户端设备的ID。
所述比对单元803,用于将所述用户当前使用的客户端设备的ID与所述token中携带的授权客户端设备的身份标识ID进行比对。
所述发送单元804,用于当所述比对结果为一致时,发送资源访问请求通过的消息至所述第三方应用。
其中,所述装置还可以包括:确认推送单元。
所述确认推送单元,用于通过所述客户端设备推送确认消息给所述用户;所述确认消息包括所述用户当前使用的客户端设备的ID、所述资源服务器的标识、所述用户对应所述资源服务器的用户名、所述第三方应用的标识、所述用户对应所述第三方应用的用户名以及所述第三方应用请求的资源的标识。
所述发送单元,还用于当所述比对结果为一致且接收到所述用户返回的确认通过的消息时,发送资源访问请求通过的消息至所述第三方应用。
其中,所述身份标识获取单元包括:获取子单元,用于从所述客户端设备上安装的设备认证服务器上获取所述客户端设备的ID。
所述,所述客户端设备的ID为所述客户端设备的媒体访问控制MAC地址或设备编号;或者,所述客户端设备的ID为所述设备认证服务器为所述客户端设备生成的。
本申请实施例中,当用户希望通过某客户端设备上的第三方应用访问该用户在某资源服务器的资源时,第三方应用向该资源服务器发送的token中包括该用户当前使用的客户端设备的ID;该资源服务器接收到该token后,获取该用户当前使用的客户端设备的ID,将其与该token中携带的客户端设备的ID相比对;当二者一致时,推送确认消息给用户,询问该用户是否同意该第三方应用通过该客户端设备访问其保存在该资源服务器上的资源;只有在用户返回确认信息时,资源服务器才同意该第三方应用的资源访问请求。
由此使得,用户只有通过该客户端设备上的第三方应用才可以访问该资源,可以有效避免toke泄露或被恶意盗取后的用户资源被滥用问题,加强了开放性授权的安全性,有利于保护用户隐私。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。