CN102710640B - 请求授权的方法、装置和系统 - Google Patents
请求授权的方法、装置和系统 Download PDFInfo
- Publication number
- CN102710640B CN102710640B CN201210177247.1A CN201210177247A CN102710640B CN 102710640 B CN102710640 B CN 102710640B CN 201210177247 A CN201210177247 A CN 201210177247A CN 102710640 B CN102710640 B CN 102710640B
- Authority
- CN
- China
- Prior art keywords
- request
- authority
- user
- application identities
- 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.)
- Active
Links
Abstract
本发明公开了一种请求授权的方法、装置和系统,其中请求授权的方法包括接收到应用实体所发送的请求信息之后,根据请求信息获取应用实体的应用标识、请求授权范围和移动电话号码;根据应用标识和请求授权范围,查询到授权范围数据库中存储的与应用标识对应的一个或多个Open API中包括与请求授权范围对应的Open API之后,根据应用标识和请求授权范围生成请求用户授权信息;将请求用户授权信息发送至移动电话号码对应的移动终端;在获得用户对应用实体的请求授权范围进行授权的信息之后,生成与应用标识、请求授权范围和移动电话号码对应的授权码,并发送至应用实体。用户根据接收到的消息,对应用实体的请求进行授权,有效地提高了授权操作的效率。
Description
技术领域
本发明涉及互联网和移动互联网技术,尤其涉及一种请求授权的方法、装置和系统。
背景技术
开放平台是将内部资源进行整合,并通过安全管控将资源以开放应用程序接口(Open Application Programming Interface,Open API)的方式对外开放给合作伙伴的应用平台,其中合作伙伴的应用平台也被称为第三方应用。移动互联网的开放平台,通常需要开放的是有关用户的信息,因此需要经过用户的授权才能够开放并提供给第三方应用。
现有技术中在对资源进行开放前,所采用的授权方式主要基于开放认证(Open the Authentication,OAuth)的认证方法。OAuth是一种开放的协议,为桌面程序或者基于浏览器/服务器模式(Browser/Server,BS)的web应用平台提供了一种简单的,标准的方式去访问需要用户授权的API服务。OAuth的授权方式不会使第三方应用触及到用户的账号信息,例如用户名和密码,即第三方应用无需使用用户的用户名与密码就可以申请获得该用户资源的授权。
基于OAuth2.0的授权流程包括:
第三方应用向开放平台请求未授权的请求令牌Request Token,具体地,向获取未授权的Request Token的网页地址发起请求;
开放平台在验证了第三方应用的合法请求后,向其颁发未经用户授权的Request Token及其相应的令牌密钥Token Secret;
第三方应用获得未经用户授权的Request Token后,使用该RequestToken向获取用户授权的Request Token的网页地址发起请求,以向开放平台申请用户授权的Request Token,将用户引导至开放平台的授权页面,请求用户进行授权。
开放平台接收该请求后,利用浏览器通过网页地址(Uniform ResourceLocator,URL)引导用户登录并进行授权,进而用户可以通过输入其在开放平台上注册的用户名和密码等用户信息,在开放平台上登录,并对该请求进行授权;
用户授权成功后,第三方应用利用未经用户授权的Request Token,获取到获得用户授权的Request Token;并且,开放平台引导用户返回第三方应用的网页;
第三方应用在获得用户授权的Request Token后,使用该RequestToken向开放平台换取接入令牌Access Token的网页地址发起请求,以将用户授权的Request Token换取为Access Token;
开放平台同意第三方应用的请求后,向其颁发Access Token及其对应的Token Secret;
第三方应用携带所获得的Access Token即可访问开放平台上相应的Open API,从而获得经过用户授权的资源。
其中,用户参与授权的过程是在Web或者WAP页面上完成的。
由上述流程可知,OAuth认证方式主要通过Web客户端,通常为浏览器,实现用户登录和授权等步骤。
但是,由于上述方法需要用户在第三方应用的网页和开放平台的网页之间进行跳转,所以当用户使用手机等移动终端连接移动互联网,在进行上述授权操作时,可能会遇到由于移动互联网的不稳定,在网页进行跳转时出现无法正常通过浏览器访问相应的网站页面的情况,出现用户无法返回第三方应用所在网页的异常情况,相应地需要等待网络状态恢复正常时,用户才能继续进行操作;并且即使在网络状态良好的情况下,用户仍然需要先在开放平台上进行登录,才能进行后续授权操作。因此,现有技术中所采用的用户授权的方法在效率方面存在不足。
发明内容
针对现有技术中的缺陷,本发明提供了一种请求授权的方法、装置和系统。
本发明提供了一种请求授权的方法,包括:
开放平台接收到应用实体所发送的请求信息之后,根据所述请求信息获取所述应用实体的应用标识、请求授权范围和用户的移动电话号码;
所述开放平台根据所述应用标识和所述请求授权范围,查询到授权范围数据库中存储的与所述应用标识对应的一个或多个Open API中包括与所述请求授权范围对应的Open API之后,根据所述应用标识和所述请求授权范围生成请求用户授权信息,所述授权范围数据库存储了为所述应用实体分配的、与所述应用标识对应的一个或多个Open API;
所述开放平台将所述请求用户授权信息发送至所述移动电话号码对应的移动终端,以供用户通过所述移动终端,对所述应用标识对应的应用实体的所述请求授权范围进行授权;
所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息之后,生成与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码;
所述开放平台将所述授权码发送至所述应用实体,以供所述应用实体向所述开放平台发送包括所述应用标识和所述授权码的调用请求,以调用所述开放平台上与所述应用标识和所述请求授权范围对应的Open API,访问与所述移动电话号码对应的用户的资源。
本发明还提供了一种请求授权的方法,包括:
应用实体向开放平台发送请求信息,以供所述开放平台根据从所述请求信息中获取到的应用标识和请求授权范围,在授权范围数据库中查询到与所述应用标识对应的一个或多个Open API中包括与所述请求授权范围对应的Open API之后,根据所述应用标识和所述请求授权范围生成请求用户授权信息,并将所述请求用户授权信息发送至从所述请求信息中获取到的移动电话号码对应的移动终端;
所述应用实体接收到所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的所述授权码之后,向所述开放平台发送包括所述应用标识和所述授权码的调用请求,以调用所述开放平台上与所述应用标识和所述请求授权范围对应的Open API,访问与所述移动电话号码对应的用户的资源。
本发明还提供了一种开放平台,包括:
平台接收模块,用于接收到应用实体所发送的请求信息之后,根据所述请求信息获取所述应用实体的应用标识、请求授权范围和用户的移动电话号码;
第一平台处理模块,用于根据所述应用标识和所述请求授权范围,查询到授权范围数据库中存储的与所述应用标识对应的一个或多个Open API中包括与所述请求授权范围对应的Open API之后,根据所述应用标识和所述请求授权范围生成请求用户授权信息,所述授权范围数据库存储了为所述应用实体分配的、与所述应用标识对应的一个或多个Open API;
第一平台发送模块,用于将所述请求用户授权信息发送至所述移动电话号码对应的移动终端,以供用户通过所述移动终端,对所述应用标识对应的应用实体的所述请求授权范围进行授权;
第二平台处理模块,用于在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息之后,生成与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码;
第二平台发送模块,用于将所述授权码发送至所述应用实体,以供所述应用实体向所述开放平台发送包括所述应用标识和所述授权码的调用请求,以调用所述开放平台上与所述应用标识和所述请求授权范围对应的OpenAPI,访问与所述移动电话号码对应的用户的资源。
本发明还提供了一种应用实体,包括:
应用发送模块,用于向开放平台发送请求信息,以供所述开放平台根据从所述请求信息中获取到的应用标识和请求授权范围,在授权范围数据库中查询到与所述应用标识对应的一个或多个Open API中包括与所述请求授权范围对应的Open API之后,根据所述应用标识和所述请求授权范围生成请求用户授权信息,并将所述请求用户授权信息发送至从所述请求信息中获取到的移动电话号码对应的移动终端;
应用处理模块,用于接收到所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的所述授权码之后,向所述开放平台发送包括所述应用标识和所述授权码的调用请求,以调用所述开放平台上与所述应用标识和所述请求授权范围对应的Open API,访问与所述移动电话号码对应的用户的资源。
本发明还提供了一种通信系统,包括上述开放平台、应用实体以及移动终端。
本发明实施例提供的请求授权的方法、装置和系统中,开放平台根据应用实体发送的请求信息中携带的APP key和scope,判断该应用实体是否有权限使用相应的Open API,若是,则开放平台将生成的请求用户授权信息发送到用户的移动终端,进而在获得用户的授权之后,生成与APP key、scope和与用户所使用的移动终端的移动电话号码对应的授权码,并将授权码发送给应用实体,从而应用实体能够利用获取到的授权码,向开放平台申请使用相应的Open API,访问与移动电话号码对应的用户的资源。在移动互联网的业务场景下,用户根据其所使用的移动终端接收到的消息,对应用实体的请求进行授权,保证了Open API在安全的情况下开放给应用实体的同时,简化了用户进行授权的步骤,有效地提高了用户进行授权操作的效率。
附图说明
图1为本发明第一种请求授权方法实施例的流程图;
图2为本发明第二种请求授权方法实施例的流程图;
图3为本发明开放平台实施例的结构示意图;
图4为本发明应用实体实施例的结构示意图;
图5为本发明通信系统实施例的结构示意图。
具体实施方式
本发明实施例针对的情况为,应用请求调用开放平台中需要用户授权的开放应用程序编程接口时的授权过程。其中,开放应用程序编程接口(Open Application Programming Interface,Open API),以下简称为OpenAPI。应用可以为应用平台或者安装于移动终端上的应用软件,即第三方应用,该第三方应用需要从开放平台获取用户在其他应用中的资料。开放平台为应用提供Open API,供第三方应用进行调用,当第三方应用需要获取其他应用中的数据时,即向开放平台申请使用相应的Open API。在以下内容中,将第三方应用称为应用实体。
应用实体在开放平台上成功申请了APP key和APP secret之后,利用APP key和APP secret向开放平台申请令牌Token。其中,APP key和APPsecret是应用实体的开发者在开放平台上进行注册时,由开放平台为该应用实体分配的注册信息,APP key是该应用实体的身份标识号码(Identity,ID),APP secret是应用实体与开放平台之间的对称共享密钥,每个应用实体的APP key和相应的APP secret与其他应用实体的不相同,通过APPkey和相应的APP secret能够区分不同的应用实体。
应用实体在开放平台上进行注册时,除了获得了APP key和APP secret之外,还被预先设置了该应用实体在开放平台上的签约范围,即该应用实体有权限使用的Open API,其中可能包括需要用户授权才能够被使用的Open API和不需要用户授权即可使用的Open API。
应用实体在获得了开放平台分配的Token后,若准备调用其签约范围内无需用户授权的Open API,则可以利用APP key和Token申请使用该Open API;若准备调用其签约范围内需要用户授权的Open API,则除了需要利用APP key和Token以外,还需要利用本发明实施例中的方法从开放平台获取授权码authcode,在获取到授权码之后,可以利用APP key、Token和授权码申请使用相应的Open API。以下详细描述应用实体从开放平台获取授权码的方法。
图1为本发明第一种请求授权方法实施例的流程图,如图1所示,该方法包括:
步骤101、开放平台接收到应用实体所发送的请求信息之后,根据所述请求信息获取所述应用实体的应用标识、请求授权范围和用户的移动电话号码。
应用实体准备调用开放平台中需要用户授权的Open API时,需要向开放平台申请授权码,因此,应用实体向开放平台发送用于申请授权码的请求信息。开放平台在接收到应用实体所发送的请求信息后,根据请求信息获取该应用实体的应用标识、请求授权范围以及用户的移动电话号码。
其中,开放平台根据请求信息获取到的应用标识,是唯一标识应用实体的信息,可以为APP key。应用实体在向开放平台申请授权码时,需要在请求信息中携带其APP key。
开放平台根据请求信息获取到的请求授权范围,为一个或者多个接口访问权限scope。开放平台为应用实体提供可供其调用的Open API,一个OpenAPI还可能包括多个子Open API,其中,需要用户授权才能被使用的Open API或子Open API包括一个或者多个scope。应用实体向开放平台申请使用相应的Open API时,需要在请求信息中告知开放平台其申请使用的scope,即请求用户进行授权的范围。
本发明实施例中,开放平台请求用户进行授权的方式,是通过向用户的移动终端发送消息的方式实现的,因此开放平台向用户的移动终端发送消息之前,需要获知用户的移动电话号码。应用实体在向开放平台发送的请求信息中,携带有供开放平台获取该用户的移动电话号码的信息。开放平台根据该请求信息能够获取到用户的移动电话号码。
步骤102、所述开放平台根据所述应用标识和所述请求授权范围,查询到授权范围数据库中存储的与所述应用标识对应的一个或多个Open API中包括与所述请求授权范围对应的Open API之后,根据所述应用标识和所述请求授权范围生成请求用户授权信息,所述授权范围数据库存储了为所述应用实体分配的、与所述应用标识对应的一个或多个Open API。
开放平台在接收到应用实体的请求信息后,利用请求信息中携带的scope,能够追溯到与该scope对应的Open API。其中,如果Open API包括子Open API,那么根据该scope对应的子Open API,也能够追溯到该应用请求使用的Open API。
开放平台根据从请求信息中获取到的APP key,在授权范围数据库中查询与该APP key对应的Open API,其中与APP key对应的Open API可以为一个或多个,即该一个或多个Open API与该APP key对应的应用实体存在签约关系,应用实体有权限使用该一个或多个Open API。
进而开放平台查询与APP key对应的一个或多个Open API中,是否包括利用scope追溯到的Open API,若是,则说明该APP key对应的应用实体有权限使用与scope对应的Open API,进而根据该APP key和scope生成请求用户授权信息;若否,则说明该APP key对应的应用实体没有权限使用与scope对应的Open API,则不生成请求用户授权信息。
当开放平台经过查询获知该应用实体有权限使用相应的Open API后,向该应用实体返回响应信息;若无权限使用相应的Open API,则不向应用实体返回响应信息。
请求用户授权信息具体为,根据APP key查询到对应的应用实体的名称,再根据scope所表示的访问内容,生成该应用实体的内容信息,将该内容信息作为请求用户授权信息发送给用户的移动终端,以将开放平台请求授权的内容告知该用户。
应用实体的开发者在开放平台上为该应用实体进行注册时,开放平台为该应用实体分配APP key和APP secret,还会在授权范围数据库中存储该应用实体有权限使用的Open API,即存储与该应用实体的应用标识对应的一个或多个Open API。
其中,应用实体有权限使用的Open API具体包括两类,一类是不需要应用实体的开发者进行申请即有权限使用的Open API,也就是说,开放平台默认应用实体有权限使用的Open API;另一类是需要应用实体的开发者进行申请才能有权限使用的Open API,也就是说,开放平台批准了应用实体的开发者的申请后,应用实体才有权限使用这类Open API。存储在授权范围数据库中与应用标识对应的一个或多个Open API,就是该应用标识对应的应用实体的在开放平台上的签约范围。
步骤103、所述开放平台将所述请求用户授权信息发送至所述移动电话号码对应的移动终端,以供用户通过所述移动终端,对所述应用标识对应的应用实体的所述请求授权范围进行授权。
开放平台向用户的移动终端发送请求用户授权信息时,具体形式可以为短信息(Short Message Service,SMS)或者非结构化补充数据业务(Unstructured Supplementary Service Data,USSD)信息的消息形式,两种消息发送形式的选择可以由开放平台根据其所采用的实施策略进行配置和维护。开放平台通过SMS或者USSD的消息方式与用户的移动终端进行信息的交互,并且开放平台所采用的SMS或者USSD的接口编程方式对于应用实体而言是透明的,也就是说,应用实体不需要获知开放平台采用何种信息方式与用户进行信息交互。其中,用户所使用移动终端的移动电话号码,为开放平台根据应用向其发送的请求信息所获取到的。
需要说明的是,SMS和USSD是两种不同的信息形式,其所实现的功能是相同的。
用户接收到消息形式的请求用户授权信息后,根据该请求用户授权信息,通过移动终端对APP key对应的应用实体申请授权的scope进行授权。
步骤104、所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息之后,生成与所述应用标识、和所述请求授权范围和所述移动电话号码对应的授权码。
开放平台获得用户的授权可以通过两种方式实现。
第一种为所述开放平台接收到所述移动终端根据所述请求用户授权信息返回的确认信息,则生成与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码。
用户在通过移动终端,接收到开放平台向其发送的请求用户授权信息之后,根据提示信息,将其是否进行授权的意见返回给开放平台
若用户同意进行授权,可以向开放平台返回确认信息;若用户不同意进行授权,可以通过不回复信息的方式,或者根据系统提示,向开放平台返回不同意授权的信息即可。
开放平台在接收到用户返回的确认信息,即获得用户的授权,进而生成与APP key、scope和该移动终端的移动电话号码对应的授权码。其中,授权码的长度可以根据需要在系统中进行设置。
第二种为,所述请求用户授权信息中携带有与所述应用标识对应的验证码;相应地,所述开放平台接收到所述应用实体在获得用户输入的验证码后所发送的包括所述应用标识和所述用户输入的验证码的验证信息,并在判断出所述验证信息中的验证码和与所述应用标识对应的验证码相同之后,生成与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码。
在开放平台向用户发送的请求用户授权信息中,除了包括应用实体请求授权的内容信息以外,还包括开放平台分配的、与APP key对应的验证码verify_code。该验证码可以为常用的四位十进制数字或者字母等形式,或者其他形式。
在上述各步骤中,用户通过移动终端所访问的网页为应用实体的网页,并未跳转至开放平台的网页,若应用实体提供了相应的接收验证码的网页,则用户可以将其移动终端上接收到的验证码,填写在网页中相应的位置上。用户在应用实体的网页上填写验证码的方式,可以在移动终端上实现。
应用实体在获取到用户提供的验证码后,向开放平台发送验证信息,该验证信息中携带有该验证码和该应用实体的APP key。
开放平台接收该验证信息,并获取其中的验证码和APP key。进而判断验证信息中的验证码和与APP key对应的验证码是否相同,若相同,则应用实体通过本次验证;若不相同,则应用实体未通过本次验证。
其中,验证码除了与APP key存在对应关系,还可以进一步地与用户所使用的移动终端的移动电话号码存在对应关系,从而开放平台接收到验证信息时,不仅判断验证信息中的验证码是否与APP key对应,还进一步判断验证码与发送携带验证码的请求授权信息的移动电话号码是否对应。
若应用实体通过开放平台对其进行的验证,则开放平台生成与APP key、scope和该移动电话号码对应的授权码。其中,授权码的长度可以根据需要在系统中进行设置。
步骤105、所述开放平台将所述授权码发送至所述应用实体,以供所述应用实体向所述开放平台发送包括所述应用标识和所述授权码的调用请求,以调用所述开放平台上与所述应用标识和所述请求授权范围对应的OpenAPI,访问与所述移动电话号码对应的用户的资源。
开放平台在生成授权码之后,将该授权码发送给应用实体,该授权码是与APP key、scope和移动电话号码对应的,也就是说,应用实体利用该授权码能够调用开放平台上与APP key对应的一个或多个Open API中,与scope对应的Open API,从而访问与该移动电话号码对应的用户的资源。
需要说明的是,与现有技术中相同的是,调用请求中还需要携带应用实体已获得的Token。
此外,步骤102中开放平台向应用实体返回的响应信息中可以携带会话标识,对应的,在步骤104中开放平台所生成的授权码还与该会话标识是对应的,从而在步骤105中开放平台将授权码和该会话标识发送给应用实体,以使应用实体能够根据会话标识识别出该授权码是针对哪次请求信息所获得的。
本发明实施例中的请求授权方法,开放平台根据应用实体发送的请求信息中携带的APP key和scope,判断该应用实体是否有权限使用相应的OpenAPI,若是,则开放平台将生成的请求用户授权信息发送到用户的移动终端,进而在获得用户的授权之后,生成与APP key、scope和与用户所使用的移动终端的移动电话号码对应的授权码,并将授权码发送给应用实体,从而应用实体能够利用获取到的授权码,向开放平台申请使用相应的Open API,以访问该移动电话号码对应的用户的资源。在移动互联网的业务场景下,用户根据其所使用的移动终端接收到的消息,对应用实体的请求进行授权,保证了Open API在安全的情况下开放给应用实体的同时,简化了用户进行授权的步骤,有效地提高了用户进行授权操作的效率。
进一步地,在上述各实施例的基础上,所述请求信息中携带有应用实体的应用标识、请求授权范围、访问所述应用实体的移动终端的IP地址和所述应用实体被访问的链接地址。
相应地,步骤101中,根据所述请求信息获取所述应用实体的应用标识、请求授权范围和用户的移动电话号码具体为,解析所述请求信息,获取所述应用标识、所述请求授权范围、所述移动终端的IP地址和所述链接地址;根据所述移动终端的IP地址和所述链接地址,通过用户上网取号系统获取用户使用的所述移动终端的移动电话号码。
本发明实施例中请求用户进行授权,是通过由开放平台向用户的移动终端发送消息的方式实现的,因此开放平台向用户的移动终端发送消息之前,需要获知用户的移动电话号码。具体获知的方式可以有如下两种:
一种方式是,应用实体在其网页上通过设置提示信息等方式,引导用户在网页上输入其移动电话号码,进而应用实体将获取到的用户的移动电话号码携带于请求信息中,发送给开放平台。
另一种方式是,应用实体未直接获取到用户的移动电话号码,则将用户访问该应用实体的链接地址和用户所使用的移动终端的互联网协议(InternetProtocol,IP)地址携带于请求信息中,发送给开放平台。开放平台在用户上网取号系统的协助下根据该链接地址和该IP地址,从用户的实时上网记录中,获取到用户的移动电话号码。其中,用户上网取号系统中存储有移动终端的上网记录,该上网记录中包括移动终端的移动电话号码和IP地址,以及该移动终端所访问网页的链接地址,因此,开放平台利用获取到的链接地址和IP地址能够查询到对应的移动终端的移动电话号码。
相应地,对应着上述两种方式,应用将获取到的用户的移动电话号码number,或者用户访问的链接地址VisitURL以及移动终端的IP地址terminalIP包含在请求信息中发送给开放平台,也就是说,应用发送给开放平台的请求信息中,不仅携带有APP key、scope,还携带有用户的移动电话号码,或者用户访问该应用实体的链接地址和移动终端的IP地址。
若应用实体发送给开放平台的请求信息中包括APP key、scope和用户的移动电话号码,则开放平台接收到请求信息之后,通过对该请求信息进行解析获取到APP key、scope和移动电话号码。
若应用实体发送给开放平台的请求信息中包括APP key、scope、访问所述应用实体的移动终端的IP地址和所述应用实体被访问的链接地址,则开放平台接收到请求信息之后,通过对该请求信息进行解析获取到APP key、scope、移动终端的IP地址和链接地址,进而利用移动终端的IP地址和链接地址,通过用户上网取号系统获取到移动终端的移动电话号码。
本发明实施例中的请求授权方法,通过在应用实体发送给开放平台的请求信息中携带用于供开放平台获取用户的移动电话号码的信息,使得开放平台能够通过向用户的移动终端发送消息的方式,请求用户对该应用实体请求授权的内容进行授权。在移动互联网的业务场景下,用户根据接收到的消息对应用实体的请求进行授权,保证了Open API在安全的情况下开放给应用实体的同时,简化了用户进行授权的步骤,有效地提高了用户进行授权操作的效率。
图2为本发明第二种请求授权方法实施例的流程图,如图2所示,该方法包括:
步骤200、应用实体向开放平台发送请求信息,以供所述开放平台根据从所述请求信息中获取到的应用标识和请求授权范围,在授权范围数据库中查询到与所述应用标识对应的一个或多个Open API中包括与所述请求授权范围对应的Open API之后,根据所述应用标识和所述请求授权范围生成请求用户授权信息,并将所述请求用户授权信息发送至从所述请求信息中获取到的移动电话号码对应的移动终端。
应用实体准备调用开放平台中需要用户授权的Open API时,需要向开放平台申请授权码,因此,应用实体向开放平台发送用于申请授权码的请求信息。开放平台在接收到应用实体所发送的请求信息后,根据请求信息获取该应用实体的应用标识、请求授权范围以及用户的移动电话号码。
其中,开放平台根据请求信息获取到的应用标识,是唯一标识应用实体的信息,可以为APP key。应用实体向开放平台申请授权码时,需要在请求信息中携带其APP key。
开放平台根据请求信息获取到的请求授权范围,为一个或者多个接口访问权限scope。开放平台为应用实体提供可供其调用的Open API,一个OpenAPI还可能包括多个子Open API,其中,需要用户授权才能被使用的Open API或子Open API包括一个或者多个scope。应用实体向开放平台申请使用相应的Open API时,需要在请求信息中告知开放平台其申请使用的scope,即请求用户进行授权的范围。
开放平台在接收到应用实体的请求信息后,利用请求信息中携带的scope,能够追溯到与该scope对应的Open API。其中,如果Open API包括子Open API,那么根据该scope对应的子Open API,也能够追溯到该应用请求使用的Open API。
开放平台根据从请求信息中获取到的APP key,在授权范围数据库中查询与该APP key对应的Open API,其中与APP key对应的Open API可以为一个或多个,即该一个或多个Open API与该APP key对应的应用实体存在签约关系,应用实体有权限使用该一个或多个Open API。
进而开放平台查询与APP key对应的一个或多个Open API中,是否包括利用scope追溯到的Open API,若是,则说明该APP key对应的应用实体有权限使用与scope对应的Open API,进而根据该APP key和scope生成请求用户授权信息;若否,则说明该APP key对应的应用实体没有权限使用与scope对应的Open API。
当开放平台经过查询获知该应用实体有权限使用相应的Open API后,向该应用实体返回响应信息;若无权限使用相应的Open API,则不向应用实体返回响应信息。
请求用户授权信息具体为,根据APP key查询到对应的应用实体的名称,再根据scope所表示的访问内容,生成该应用实体的内容信息,将该内容信息作为请求用户授权信息发送给用户的移动终端,以将开放平台请求授权的内容告知该用户。
开放平台向用户的移动终端发送请求用户授权信息时,具体形式可以为SMS或者USSD信息的消息形式,两种消息发送形式的选择可以由开放平台根据其所采用的实施策略进行配置和维护。开放平台通过SMS或者USSD的消息方式与用户的移动终端进行信息的交互,并且开放平台所采用的SMS或者USSD的接口编程方式对于应用实体而言是透明的,也就是说,应用实体不需要获知开放平台采用的是何种信息方式与用户进行信息交互。其中,用户所使用移动终端的移动电话号码,为开放平台根据应用向其发送的请求信息所获取到的。
需要说明的是,SMS和USSD是两种不同的信息形式,其所实现的功能是相同的。
步骤201、所述应用实体接收到所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的所述授权码之后,向所述开放平台发送包括所述应用标识和所述授权码的调用请求,以调用所述开放平台上与所述应用标识和所述请求授权范围对应的Open API,访问与所述移动电话号码对应的用户的资源。
其中,所述应用实体接收到所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的所述授权码可以包括两种实现方式。
第一种方式为,所述应用实体接收到所述开放平台在获得所述移动终端根据所述请求用户授权信息返回的确认信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码。
用户接收到消息形式的请求用户授权信息后,根据该请求用户授权信息,通过移动终端对APP key对应的应用实体申请授权的scope进行授权。
用户在通过移动终端,接收到开放平台向其发送的请求用户授权信息之后,根据提示信息,将其是否进行授权的意见返回给开放平台
若用户同意进行授权,可以向开放平台返回确认信息;若用户不同意进行授权,可以通过不回复信息的方式,或者根据系统提示,向开放平台返回不同意授权的信息即可。
开放平台在接收到用户返回的确认信息,即获得用户的授权,进而生成与APP key、scope和与用户所使用的移动终端的移动电话号码对应的授权码。其中,授权码的长度可以根据需要在系统中进行设置。
开放平台在生成授权码之后,将该授权码发送给应用实体。
第二种方式为,所述请求用户授权信息中包括与所述应用标识对应的验证码;相应地,所述应用实体接收到所述开放平台在判断出验证信息中的验证码与所述应用标识对应的验证码相同的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码,所述验证信息为所述应用实体在获得用户输入的验证码之后向所述开放平台发送的,包括所述应用标识和所述用户输入的验证码的信息。
在开放平台向用户发送的请求用户授权信息中,除了包括应用实体请求授权的内容信息以外,还包括开放平台分配的、与APP key对应的验证码verify_code。该验证码可以为常用的四位十进制数字或者字母等形式,或者其他形式。
在上述各步骤中,用户通过移动终端所访问的网页为应用实体的网页,并未跳转至开放平台的网页,若应用实体提供了相应的接收验证码的网页,则用户可以将其移动终端上接收到的验证码,填写在网页中相应的位置上。
用户在应用实体的网页上填写验证码的方式,可以在移动终端上实现。
应用实体在获取到用户提供的验证码后,向开放平台发送验证信息,该验证信息中携带有该验证码和该应用实体的APP key。
开放平台接收该验证信息,并获取其中的验证码和APP key。进而判断验证信息中的验证码和与APP key对应的验证码是否相同,若相同,则应用实体通过本次验证;若不相同,则应用实体未通过本次验证。
其中,验证码除了与APP key存在对应关系,还可以进一步地与用户所使用的移动终端的移动电话号码存在对应关系,从而开放平台接收到验证信息时,不仅判断验证信息中的验证码是否与APP key对应,还进一步地判断验证码与发送携带验证码的请求授权信息的移动电话号码是否对应。
若应用实体通过开放平台对其进行的验证,则开放平台生成与APP key、scope和用户所使用的移动电话号码对应的授权码。其中,授权码的长度可以根据需要在系统中进行设置。
由于授权码是与APP key、scope和移动电话号码对应的,也就是说,应用实体利用该授权码能够调用开放平台上与APP key对应的一个或多个OpenAPI中,与scope对应的Open API,从而访问与移动电话号码对应的用户的资源。
需要说明的是,与现有技术中相同的是,调用请求中还需要携带应用实体已获得的Token。
此外,步骤200中所述的开放平台向应用实体返回的响应信息中可以携带会话标识,对应的,开放平台所生成的授权码还与该会话标识是对应的,从而开放平台将授权码和该会话标识发送给应用实体,以使应用实体能够根据会话标识识别出该授权码是针对哪次请求信息所获得的。
本发明实施例中的请求授权方法,开放平台根据应用实体发送的请求信息中携带的APP key和scope,判断该应用实体是否有权限使用相应的OpenAPI,若是,则开放平台将生成的请求用户授权信息发送到用户的移动终端,进而在获得用户的授权之后,生成与APP key、scope和移动终端的移动电话号码对应的授权码,并将授权码发送给应用实体,从而应用实体能够利用获取到的授权码,向开放平台申请使用相应的Open API,访问与移动电话号码对应的用户的资源。在移动互联网的业务场景下,用户根据其所使用的移动终端接收到的消息,对应用实体的请求进行授权,保证了Open API在安全的情况下开放给应用实体的同时,简化了用户进行授权的步骤,有效地提高了用户进行授权操作的效率。
进一步地,在上述各实施例的基础上,在步骤200中,所述请求信息中携带有所述应用实体的应用标识、请求授权范围、访问所述应用实体的移动终端的IP地址和所述应用实体被访问的链接地址,以供所述开放平台解析所述请求信息,获取所述应用标识、所述请求授权范围、移动终端的IP地址和所述链接地址,并根据所述移动终端的IP地址和所述链接地址,通过用户上网取号系统获取用户使用的所述移动终端的移动电话号码。
本发明实施例中请求用户进行授权,是通过由开放平台向用户的移动终端发送消息的方式实现的,因此开放平台向用户的移动终端发送消息之前,需要获知用户的移动电话号码。具体获知的方式可以有如下两种:
一种方式是,应用实体在其网页上通过设置提示信息等方式,引导用户在网页上输入其移动电话号码,进而应用实体将获取到的用户的移动电话号码携带于请求信息中,发送给开放平台。
另一种方式是,应用实体未直接获取到用户的移动电话号码,则将用户访问该应用实体的链接地址和用户所使用的移动终端的互联网协议(InternetProtocol,IP)地址携带于请求信息中,发送给开放平台。开放平台在用户上网取号系统的协助下根据该链接地址和该IP地址,从用户的实时上网记录中,获取到用户的移动电话号码。其中,用户上网取号系统中存储有移动终端的上网记录,该上网记录中包括移动终端的移动电话号码和IP地址,以及该移动终端所访问网页的链接地址,因此,开放平台利用获取到的链接地址和IP地址能够查询到对应的移动终端的移动电话号码。
相应地,对应着上述两种方式,应用将获取到的用户的移动电话号码number,或者用户访问的链接地址VisitURL以及移动终端的IP地址terminalIP包含在请求信息中发送给开放平台,也就是说,应用发送给开放平台的请求信息中,不仅携带有APP key、scope,还携带有用户的移动电话号码,或者用户访问该应用实体的链接地址和移动终端的IP地址。
若应用实体发送给开放平台的请求信息中包括APP key、scope和用户的移动电话号码,则开放平台接收到请求信息之后,通过对该请求信息进行解析获取到APP key、scope和移动电话号码。
若应用实体发送给开放平台的请求信息中包括APP key、scope、访问所述应用实体的移动终端的IP地址和所述应用实体被访问的链接地址,则开放平台接收到请求信息之后,通过对该请求信息进行解析获取到APP key、scope、移动终端的IP地址和链接地址,进而利用移动终端的IP地址和链接地址,通过用户上网取号系统获取到移动终端的移动电话号码。
本发明实施例中的请求授权方法,通过在应用实体发送给开放平台的请求信息中携带用于供开放平台获取用户的移动电话号码的信息,使得开放平台能够通过向用户的移动终端发送消息的方式,请求用户对该应用实体请求授权的内容进行授权。在移动互联网的业务场景下,用户根据接收到的消息即可对应用实体的请求进行授权,保证了Open API在安全的情况下开放给应用实体的同时,简化了用户进行授权的步骤,有效地提高了用户进行授权操作的效率。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图3为本发明开放平台实施例的结构示意图,如图3所示,该开放平台包括平台接收模块11、第一平台处理模块12、第一平台发送模块13、第二平台处理模块14和第二平台发送模块15。
平台接收模块11,用于接收到应用实体所发送的请求信息之后,根据所述请求信息获取所述应用实体的应用标识、请求授权范围和用户的移动电话号码;
第一平台处理模块12,用于根据所述应用标识和所述请求授权范围,查询到授权范围数据库中存储的与所述应用标识对应的一个或多个Open API中包括与所述请求授权范围对应的Open API之后,根据所述应用标识和所述请求授权范围生成请求用户授权信息,所述授权范围数据库存储了为所述应用实体分配的、与所述应用标识对应的一个或多个Open API;
第一平台发送模块13,用于将所述请求用户授权信息发送至所述移动电话号码对应的移动终端,以供用户通过所述移动终端,对所述应用标识对应的应用实体的所述请求授权范围进行授权;
第二平台处理模块14,用于在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息之后,生成与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码;
第二平台发送模块15,用于将所述授权码发送至所述应用实体,以供所述应用实体向所述开放平台发送包括所述应用标识和所述授权码的调用请求,以调用所述开放平台上与所述应用标识和所述请求授权范围对应的OpenAPI,访问与所述移动电话号码对应的用户的资源。
进一步地,在上述实施例的基础上,第二平台处理模块14具体用于接收到所述移动终端根据所述请求用户授权信息返回的确认信息,则生成与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码。
进一步地,在上述各实施例的基础上,第一平台处理模块12生成的所述请求用户授权信息中携带有与所述应用标识对应的验证码;
相应地,第二平台处理模块14具体用于,接收到所述应用实体在获得用户输入的验证码后所发送的包括所述应用标识和所述用户输入的验证码的验证信息,并在判断出所述验证信息中的验证码和与所述应用标识对应的验证码相同之后,生成与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码。
进一步地,在上述各实施例的基础上,所述平台接收模块11接收到的所述请求信息中携带有应用实体的应用标识、请求授权范围、访问所述应用实体的移动终端的IP地址和所述应用实体被访问的链接地址;相应地,所述平台接收模块11具体包括平台解析模块111和平台获取模块112。
平台解析模块111,用于在接收到所述应用实体所发送的请求信息之后,解析所述请求信息,获取所述应用标识、所述请求授权范围、所述移动终端的IP地址和所述链接地址;
平台获取模块112,用于根据所述移动终端的IP地址和所述链接地址,通过用户上网取号系统获取用户使用的所述移动终端的移动电话号码。
本发明实施例中的开放平台,根据应用实体发送的请求信息中携带的APP key和scope,判断该应用实体是否有权限使用相应的Open API,若是,则开放平台将生成的请求用户授权信息发送到用户的移动终端,进而在获得用户的授权之后,生成与APP key、scope和用户所使用的移动终端的移动电话号码对应的授权码,并将授权码发送给应用实体,从而应用实体能够利用获取到的授权码,向开放平台申请使用相应的Open API,访问与移动电话号码对应的用户的资源。在移动互联网的业务场景下,用户根据其所使用的移动终端接收到的消息,对应用实体的请求进行授权,保证了Open API在安全的情况下开放给应用实体的同时,简化了用户进行授权的步骤,有效地提高了用户进行授权操作的效率。
具体的,本发明实施例中开放平台请求授权的方法可以参见上述对应的方法实施例,此处不再赘述。
图4为本发明应用实体实施例的结构示意图,如图4所示,该应用实体包括应用发送模块21和应用处理模块22。
应用发送模块21,用于向开放平台发送请求信息,以供所述开放平台根据从所述请求信息中获取到的应用标识和请求授权范围,在授权范围数据库中查询到与所述应用标识对应的一个或多个Open API中包括与所述请求授权范围对应的Open API之后,根据所述应用标识和所述请求授权范围生成请求用户授权信息,并将所述请求用户授权信息发送至从所述请求信息中获取到的移动电话号码对应的移动终端;
应用处理模块22,用于接收到所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息的情况下所返回的、与所述应用标识、和所述请求授权范围和所述移动电话号码对应的所述授权码之后,向所述开放平台发送包括所述应用标识和所述授权码的调用请求,以调用所述开放平台上与所述应用标识和所述请求授权范围对应的Open API,访问与所述移动电话号码对应的用户的资源。
进一步地,在上述实施例的基础上,应用处理模块22接收到所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的所述授权码具体包括,接收到所述开放平台在获得所述移动终端根据所述请求用户授权信息返回的确认信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码。
进一步地,在上述各实施例的基础上,所述请求用户授权信息中包括与所述应用标识对应的验证码;相应地,应用处理模块22接收到所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的所述授权码具体包括,接收到所述开放平台在判断出验证信息中的验证码与所述应用标识对应的验证码相同的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码,所述验证信息为所述应用实体在获得用户输入的验证码之后向所述开放平台发送的,包括所述应用标识和所述用户输入的验证码的信息。
进一步地,在上述各实施例的基础上,所述应用发送模块21向所述开放平台发送的所述请求信息中携带有所述应用实体的应用标识、请求授权范围、访问所述应用实体的移动终端的IP地址和所述应用实体被访问的链接地址,以供所述开放平台解析所述请求信息,获取所述应用标识、所述请求授权范围、移动终端的IP地址和所述链接地址,并根据所述移动终端的IP地址和所述链接地址,通过用户上网取号系统获取用户使用的所述移动终端的移动电话号码。
具体的,本发明实施例中应用实体请求授权的方法可以参见上述对应的方法实施例,此处不再赘述。
本发明实施例中的应用实体,通过开放平台根据应用实体发送的请求信息中携带的APP key和scope,判断该应用实体是否有权限使用相应的OpenAPI,若是,则开放平台将生成的请求用户授权信息发送到用户的移动终端,进而在获得用户的授权之后,生成与APP key、scope和用户所使用的移动终端的移动电话号码对应的授权码,并将授权码发送给应用实体,从而应用实体能够利用获取到的授权码,向开放平台申请使用相应的Open API,访问与移动电话号码对应的用户的资源。在移动互联网的业务场景下,用户根据其所使用的移动终端接收到的消息,对应用实体的请求进行授权,保证了OpenAPI在安全的情况下开放给应用实体的同时,简化了用户进行授权的步骤,有效地提高了用户进行授权操作的效率。
图5为本发明通信系统实施例的结构示意图,如图5所示,该通信系统包括上述各实施例中任一开放平台1、应用实体2和移动终端3,开放平台1、应用实体2和移动终端3之间通信连接。
具体的,本发明实施例中通信系统请求授权的方法可以参见上述对应的方法实施例,此处不再赘述。
本发明实施例中的通信系统,通过开放平台根据应用实体发送的请求信息中携带的APP key和scope,判断该应用实体是否有权限使用相应的OpenAPI,若是,则开放平台将生成的请求用户授权信息发送到用户的移动终端,进而在获得用户的授权之后,生成与APP key、scope和用户所使用的移动终端的移动电话号码对应的授权码,并将授权码发送给应用实体,从而应用实体能够利用获取到的授权码,向开放平台申请使用相应的Open API,访问与移动电话号码对应的用户的资源。在移动互联网的业务场景下,用户根据其所使用的移动终端接收到的消息,对应用实体的请求进行授权,保证了OpenAPI在安全的情况下开放给应用实体的同时,简化了用户进行授权的步骤,有效地提高了用户进行授权操作的效率。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (17)
1.一种请求授权的方法,其特征在于,包括:
开放平台接收到应用实体所发送的请求信息之后,根据所述请求信息获取所述应用实体的应用标识、请求授权范围和用户的移动电话号码;
所述开放平台根据所述应用标识和所述请求授权范围,查询到授权范围数据库中存储的与所述应用标识对应的一个或多个Open API中包括与所述请求授权范围对应的Open API之后,根据所述应用标识和所述请求授权范围生成请求用户授权信息,所述授权范围数据库存储了为所述应用实体分配的、与所述应用标识对应的一个或多个Open API;
所述开放平台将所述请求用户授权信息发送至所述移动电话号码对应的移动终端,以供用户通过所述移动终端,对所述应用标识对应的应用实体的所述请求授权范围进行授权;
所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息之后,生成与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码;
所述开放平台将所述授权码发送至所述应用实体,以供所述应用实体向所述开放平台发送包括所述应用标识和所述授权码的调用请求,以调用所述开放平台上与所述应用标识和所述请求授权范围对应的Open API,访问与所述移动电话号码对应的用户的资源。
2.根据权利要求1所述的请求授权的方法,其特征在于,所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息之后,生成与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码包括:
所述开放平台接收到所述移动终端根据所述请求用户授权信息返回的确认信息,则生成与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码。
3.根据权利要求1所述的请求授权的方法,其特征在于,所述请求用户授权信息中携带有与所述应用标识对应的验证码;
相应地,所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息之后,生成与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码包括:
所述开放平台接收到所述应用实体在获得用户输入的验证码后所发送的包括所述应用标识和所述用户输入的验证码的验证信息,并在判断出所述验证信息中的验证码和与所述应用标识对应的验证码相同之后,生成与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码。
4.根据权利要求1、2或3所述的请求授权的方法,其特征在于,所述请求信息中携带有应用实体的应用标识、请求授权范围、访问所述应用实体的移动终端的IP地址和所述应用实体被访问的链接地址;
相应地,所述根据所述请求信息获取所述应用实体的应用标识、请求授权范围和用户的移动电话号码包括:
解析所述请求信息,获取所述应用标识、所述请求授权范围、所述移动终端的IP地址和所述链接地址;
根据所述移动终端的IP地址和所述链接地址,通过用户上网取号系统获取用户使用的所述移动终端的移动电话号码。
5.一种请求授权的方法,其特征在于,包括:
应用实体向开放平台发送请求信息,以供所述开放平台根据从所述请求信息中获取到的应用标识和请求授权范围,在授权范围数据库中查询到与所述应用标识对应的一个或多个Open API中包括与所述请求授权范围对应的Open API之后,根据所述应用标识和所述请求授权范围生成请求用户授权信息,并将所述请求用户授权信息发送至从所述请求信息中获取到的移动电话号码对应的移动终端;
所述应用实体接收到所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的所述授权码之后,向所述开放平台发送包括所述应用标识和所述授权码的调用请求,以调用所述开放平台上与所述应用标识和所述请求授权范围对应的Open API,访问与所述移动电话号码对应的用户的资源。
6.根据权利要求5所述的请求授权的方法,其特征在于,所述应用实体接收到所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的所述授权码包括:
所述应用实体接收到所述开放平台在获得所述移动终端根据所述请求用户授权信息返回的确认信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码。
7.根据权利要求5所述的请求授权的方法,其特征在于,所述请求用户授权信息中包括与所述应用标识对应的验证码;
相应地,所述应用实体接收到所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的所述授权码包括:
所述应用实体接收到所述开放平台在判断出验证信息中的验证码与所述应用标识对应的验证码相同的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码,所述验证信息为所述应用实体在获得用户输入的验证码之后向所述开放平台发送的,包括所述应用标识和所述用户输入的验证码的信息。
8.根据权利要求5、6或7所述的请求授权的方法,其特征在于,所述请求信息中携带有所述应用实体的应用标识、请求授权范围、访问所述应用实体的移动终端的IP地址和所述应用实体被访问的链接地址,以供所述开放平台解析所述请求信息,获取所述应用标识、所述请求授权范围、移动终端的IP地址和所述链接地址,并根据所述移动终端的IP地址和所述链接地址,通过用户上网取号系统获取用户使用的所述移动终端的移动电话号码。
9.一种开放平台,其特征在于,包括:
平台接收模块,用于接收到应用实体所发送的请求信息之后,根据所述请求信息获取所述应用实体的应用标识、请求授权范围和用户的移动电话号码;
第一平台处理模块,用于根据所述应用标识和所述请求授权范围,查询到授权范围数据库中存储的与所述应用标识对应的一个或多个Open API中包括与所述请求授权范围对应的Open API之后,根据所述应用标识和所述请求授权范围生成请求用户授权信息,所述授权范围数据库存储了为所述应用实体分配的、与所述应用标识对应的一个或多个Open API;
第一平台发送模块,用于将所述请求用户授权信息发送至所述移动电话号码对应的移动终端,以供用户通过所述移动终端,对所述应用标识对应的应用实体的所述请求授权范围进行授权;
第二平台处理模块,用于在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息之后,生成与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码;
第二平台发送模块,用于将所述授权码发送至所述应用实体,以供所述应用实体向所述开放平台发送包括所述应用标识和所述授权码的调用请求,以调用所述开放平台上与所述应用标识和所述请求授权范围对应的OpenAPI,访问与所述移动电话号码对应的用户的资源。
10.根据权利要求9所述的开放平台,其特征在于,所述第二平台处理模块具体用于,接收到所述移动终端根据所述请求用户授权信息返回的确认信息,则生成与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码。
11.根据权利要求9所述的开放平台,其特征在于,所述第一平台处理模块生成的所述请求用户授权信息中携带有与所述应用标识对应的验证码;
相应地,所述第二平台处理模块具体用于,接收到所述应用实体在获得用户输入的验证码后所发送的包括所述应用标识和所述用户输入的验证码的验证信息,并在判断出所述验证信息中的验证码和与所述应用标识对应的验证码相同之后,生成与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码。
12.根据权利要求9、10或11所述的开放平台,其特征在于,所述平台接收模块接收到的所述请求信息中携带有应用实体的应用标识、请求授权范围、访问所述应用实体的移动终端的IP地址和所述应用实体被访问的链接地址;
相应地,所述平台接收模块具体包括:
平台解析模块,用于在接收到所述应用实体所发送的请求信息之后,解析所述请求信息,获取所述应用标识、所述请求授权范围、所述移动终端的IP地址和所述链接地址;
平台获取模块,用于根据所述移动终端的IP地址和所述链接地址,通过用户上网取号系统获取用户使用的所述移动终端的移动电话号码。
13.一种应用实体,其特征在于,包括:
应用发送模块,用于向开放平台发送请求信息,以供所述开放平台根据从所述请求信息中获取到的应用标识和请求授权范围,在授权范围数据库中查询到与所述应用标识对应的一个或多个Open API中包括与所述请求授权范围对应的Open API之后,根据所述应用标识和所述请求授权范围生成请求用户授权信息,并将所述请求用户授权信息发送至从所述请求信息中获取到的移动电话号码对应的移动终端;
应用处理模块,用于接收到所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的所述授权码之后,向所述开放平台发送包括所述应用标识和所述授权码的调用请求,以调用所述开放平台上与所述应用标识和所述请求授权范围对应的Open API,访问与所述移动电话号码对应的用户的资源。
14.根据权利要求13所述的应用实体,其特征在于,所述应用处理模块接收到所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的所述授权码具体包括:
接收到所述开放平台在获得所述移动终端根据所述请求用户授权信息返回的确认信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码。
15.根据权利要求13所述的应用实体,其特征在于,所述请求用户授权信息中包括与所述应用标识对应的验证码;
相应地,所述应用处理模块接收到所述开放平台在获得用户对所述应用标识对应的应用实体的所述请求授权范围进行授权的信息的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的所述授权码具体包括:
接收到所述开放平台在判断出验证信息中的验证码与所述应用标识对应的验证码相同的情况下所返回的、与所述应用标识、所述请求授权范围和所述移动电话号码对应的授权码,所述验证信息为所述应用实体在获得用户输入的验证码之后向所述开放平台发送的,包括所述应用标识和所述用户输入的验证码的信息。
16.根据权利要求13、14或15所述的应用实体,其特征在于,所述应用发送模块向所述开放平台发送的所述请求信息中携带有所述应用实体的应用标识、请求授权范围、访问所述应用实体的移动终端的IP地址和所述应用实体被访问的链接地址,以供所述开放平台解析所述请求信息,获取所述应用标识、所述请求授权范围、移动终端的IP地址和所述链接地址,并根据所述移动终端的IP地址和所述链接地址,通过用户上网取号系统获取用户使用的所述移动终端的移动电话号码。
17.一种通信系统,其特征在于,包括如权利要求9-12中任一所述的开放平台,如权利要求13-16中任一所述的应用实体、以及移动终端,所述开放平台、所述应用实体和所述移动终端通信连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210177247.1A CN102710640B (zh) | 2012-05-31 | 2012-05-31 | 请求授权的方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210177247.1A CN102710640B (zh) | 2012-05-31 | 2012-05-31 | 请求授权的方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102710640A CN102710640A (zh) | 2012-10-03 |
CN102710640B true CN102710640B (zh) | 2015-03-18 |
Family
ID=46903196
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210177247.1A Active CN102710640B (zh) | 2012-05-31 | 2012-05-31 | 请求授权的方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102710640B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110046001A (zh) * | 2018-01-15 | 2019-07-23 | 华为技术有限公司 | 一种授权撤回的方法及装置 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104125063B (zh) | 2013-04-28 | 2016-10-12 | 腾讯科技(深圳)有限公司 | 授权认证方法、设备及系统 |
CN104144152B (zh) * | 2013-05-10 | 2017-12-08 | 中国电信股份有限公司 | 针对第三方资源提供方的授权方法与系统 |
CN103647695A (zh) * | 2013-10-31 | 2014-03-19 | 北京奇虎科技有限公司 | 一种客户端应用程序的用户注册方法、移动终端及服务器 |
CN103716317A (zh) * | 2013-12-25 | 2014-04-09 | 华为技术有限公司 | 一种资源网关、及资源访问授权方法 |
CN104869102B (zh) * | 2014-02-24 | 2019-04-02 | 腾讯科技(北京)有限公司 | 基于xAuth协议的授权方法、装置和系统 |
CN105282125B (zh) * | 2014-07-25 | 2018-07-06 | 中国电信股份有限公司 | Web实时通信中的访问控制方法和装置 |
CN104539589A (zh) * | 2014-12-10 | 2015-04-22 | 华为软件技术有限公司 | 授权方法、服务器和客户端 |
CN105763514B (zh) | 2014-12-17 | 2019-11-29 | 华为技术有限公司 | 一种处理授权的方法、设备和系统 |
CN105812314B (zh) * | 2014-12-29 | 2019-11-29 | 北京新媒传信科技有限公司 | 一种用户登录互联网应用程序的方法和统一认证平台 |
CN104754030B (zh) * | 2015-02-12 | 2017-05-10 | 腾讯科技(深圳)有限公司 | 用户信息获取方法及装置 |
CN104683219B (zh) * | 2015-02-13 | 2018-01-19 | 腾讯科技(深圳)有限公司 | 信息交互方法及装置 |
CN105187417B (zh) * | 2015-08-25 | 2018-10-02 | 北京京东尚科信息技术有限公司 | 权限获取方法和装置 |
CN106815234B (zh) * | 2015-11-30 | 2019-11-08 | 中国移动通信集团公司 | 一种分享健康数据的方法、装置及数据分享引擎系统 |
CN107026819A (zh) * | 2016-01-29 | 2017-08-08 | 中国移动通信集团四川有限公司 | 一种用户个人数据的授权方法及信息验真授权平台 |
CN107154912A (zh) * | 2016-03-02 | 2017-09-12 | 中兴通讯股份有限公司 | 一种终端服务的提供、获取方法、装置及终端 |
CN106302490A (zh) * | 2016-08-23 | 2017-01-04 | 浪潮电子信息产业股份有限公司 | 一种基于Token的Web会话构建和服务调用方法 |
CN106971099A (zh) * | 2016-11-09 | 2017-07-21 | 阿里巴巴集团控股有限公司 | 一种编程接口调用权限的控制方法及装置 |
CN108259413B (zh) * | 2016-12-28 | 2021-06-01 | 华为技术有限公司 | 一种获取证书、鉴权的方法及网络设备 |
CN107332861B (zh) * | 2017-08-11 | 2020-11-10 | 杭州奇亿云计算有限公司 | 一种基于OAuth协议的开放平台架构系统 |
CN108366132B (zh) * | 2018-03-13 | 2021-01-08 | 平安普惠企业管理有限公司 | 服务器间的服务管理方法、装置、计算机设备和存储介质 |
CN111274553A (zh) * | 2020-01-20 | 2020-06-12 | 深圳市米勒沙容达汽车科技有限公司 | 一种软件自动授权方法及系统、服务器和终端设备 |
CN114550316B (zh) * | 2022-04-27 | 2022-08-05 | 广州商景网络科技有限公司 | 一站式可信生物特征数据采集终端设备及采集、共享方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101562621A (zh) * | 2009-05-25 | 2009-10-21 | 阿里巴巴集团控股有限公司 | 一种用户授权的方法、系统和装置 |
CN102238007A (zh) * | 2010-04-20 | 2011-11-09 | 阿里巴巴集团控股有限公司 | 第三方应用获得用户的会话令牌的方法、装置及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102088634A (zh) * | 2009-12-07 | 2011-06-08 | 华为技术有限公司 | 网络电视系统业务权限的控制方法、装置及系统 |
CN102394887B (zh) * | 2011-11-10 | 2014-07-09 | 杭州东信北邮信息技术有限公司 | 基于OAuth协议的开放平台安全认证方法和系统 |
-
2012
- 2012-05-31 CN CN201210177247.1A patent/CN102710640B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101562621A (zh) * | 2009-05-25 | 2009-10-21 | 阿里巴巴集团控股有限公司 | 一种用户授权的方法、系统和装置 |
CN102238007A (zh) * | 2010-04-20 | 2011-11-09 | 阿里巴巴集团控股有限公司 | 第三方应用获得用户的会话令牌的方法、装置及系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110046001A (zh) * | 2018-01-15 | 2019-07-23 | 华为技术有限公司 | 一种授权撤回的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102710640A (zh) | 2012-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102710640B (zh) | 请求授权的方法、装置和系统 | |
CN111131242B (zh) | 一种权限控制方法、装置和系统 | |
CN103051630B (zh) | 基于开放平台实现第三方应用授权的方法、装置及系统 | |
CN106716960B (zh) | 用户认证方法和系统 | |
CN106716918B (zh) | 用户认证方法和系统 | |
US9419974B2 (en) | Apparatus and method for performing user authentication by proxy in wireless communication system | |
CN103609090A (zh) | 身份登录方法及设备 | |
CN104954330A (zh) | 一种对数据资源进行访问的方法、装置和系统 | |
CN105007280A (zh) | 一种应用登录方法和装置 | |
CN102724647A (zh) | 一种能力访问授权方法及系统 | |
CN103746812A (zh) | 一种接入认证方法及系统 | |
CN103200159B (zh) | 一种网络访问方法和设备 | |
CN105450582A (zh) | 业务处理方法、终端、服务器及系统 | |
CN106161475B (zh) | 用户鉴权的实现方法和装置 | |
CN104836812A (zh) | 一种Portal认证方法、装置及系统 | |
CN104935435A (zh) | 登录方法、终端及应用服务器 | |
CN102984261B (zh) | 基于手机终端的网络业务登录方法、设备和系统 | |
CN105791249A (zh) | 一种第三方应用处理方法、装置以及系统 | |
CN112131535B (zh) | 一种针对多部署环境的小程序授权一体化方法 | |
WO2013071836A1 (zh) | 客户端应用访问鉴权处理方法和装置 | |
CN105656856A (zh) | 资源管理方法和装置 | |
CN111935151B (zh) | 一种跨域统一登录方法、装置、电子设备及存储介质 | |
CN106487776B (zh) | 一种保护机器类通信设备的方法、网络实体及系统 | |
KR102300021B1 (ko) | Ip주소와 sms를 이용한 본인인증 방법 및 통신사 서버 | |
CN112364308A (zh) | 一种联网授权的安卓apk签名方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |