一种资源访问方法及用户资源网关技术

技术编号:9908090 阅读:132 留言:0更新日期:2014-04-11 10:13
本发明专利技术提供一种资源访问方法及用户资源网关,该方法包括:用户资源网关URG接收客户端发送的资源请求;其中,资源请求中包含一个或多个资源ID,每个资源ID对应一个资源;URG对客户端进行权限验证;URG在验证通过后基于一个或多个资源ID生成对应一个或多个资源服务器的一个或多个单个资源请求;每个单个资源请求中包含与所请求资源对应的访问令牌,访问令牌表征资源所有者允许URG访问资源;URG分别发送一个或多个单个资源请求给一个或多个资源服务器;URG从对应的资源服务器接收一个或多个单个资源请求的一个或多个响应消息,一个或多个响应消息中携带与一个或多个单个资源请求对应的资源;URG将资源发送给客户端。

【技术实现步骤摘要】
一种资源访问方法及用户资源网关
本专利技术涉及通信
,尤其涉及一种资源访问方法及用户资源网关。
技术介绍
OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是OAUTH的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此OAUTH是安全的。OAUTH2.0中有四个逻辑功能实体,分别为资源所有者、资源服务器、第三方客户端以及授权服务器。下面就对四个逻辑功能实体进行简要的阐释:资源所有者:一个实体能够授权访问一个受保护的资源。当资源所有者是一个人,就称为一个终端用户。资源服务器:用于接收第三方客户端发送的访问令牌,并返回第三方应用所需的相关数据,或返回相关应用业务的结果。第三方客户端:第三方应用系统通过开放平台入口,访问内部服务,从而完成跨域的业务整合。例如,第三方开发者为新浪微博开放平台开发的应用“新浪微博登陆”,可以使用自己的域名,独立运行在该第三方服务器上,通过远程应用程序编程接口(ApplicationProgrammingInterface;API)调用完成业务功能。授权服务器:开放平台中用于鉴别第三方客户端业务请求及颁布访问令牌的服务器。资源服务器与授权服务器可以是分离的也可以是一体的。OAUTH2.0的认证流程请参考图1所示:步骤A.第三方客户端向资源所有者发送认证请求,请求资源所有者给予授权许可;步骤B.资源所有者根据实际情况,选择对第三方客户端授权或者不授权,如果授权的话,则返回授权信息给第三方客户端;步骤C.第三方客户端发送资源所有者的授权信息给授权服务器;步骤D.授权服务器经过校验后,确认有效,给予访问令牌;步骤E.第三方客户端利用获得的访问令牌访问资源服务器,获取资源;步骤F.资源服务器把受保护的资源传送给第三方客户端。由以上流程可以看出,第三方客户端在不使用用户的用户名与密码就可以申请获得该用户资源的授权。然而,本专利技术人在实现本专利技术实施例中的技术方案的过程中发现,在上述授权访问过程中,第三方客户端可能要与服务提供商进行许多信令交互,例如交互访问协议等;进一步,对于访问同一资源服务器或者同一业务的多个资源的话,就需要资源所有者多次授权,所以就需要第三方客户端和授权服务器之间进行多次交互,所以访问资源的执行和响应时间长。
技术实现思路
本专利技术实施例提供一种资源访问方法及用户资源网关,用以解决现有技术中存在的客户端访问资源时客户端与资源服务器或者授权服务器之间信令交互多,所以访问资源的执行和响应时间长的技术问题。本专利技术第一方面提供了一种资源访问方法,包括:用户资源网关URG接收资源所有者发送的资源聚合请求,所述资源聚合请求中包含用户ID和M类业务的资源的资源标识;其中,M为正整数;所述URG基于所述资源聚合请求向与所述M类业务相关的一个或多个授权服务器发送授权请求;所述URG接收所述一个或多个授权服务器基于所述授权请求返回的一个或多个访问令牌;所述一个或多个访问令牌分别与所述M类业务相关联;所述URG存储所述一个或多个访问令牌;当所述URG接收到客户端发送的携带所述用户ID的资源请求时,对所述客户端进行权限验证,并在验证通过后使用所述一个或多个访问令牌中与所请求资源的业务类型相对应的访问令牌从一个或多个资源服务器获取所述资源;所述URG将所述资源发送给所述客户端。结合第一方面,在第一方面的第一种可能的实现方式中,在所述URG存储所述一个或多个访问令牌之后,还包括:接收所述客户端发送的所述资源请求;所述对所述客户端进行权限验证,包括:所述URG向所述资源所有者发送授权请求;所述URG接收所述资源所有者的授权响应消息,所述授权响应消息表征验证通过。结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,在所述资源请求中包含一个或多个资源ID,并涉及一个或多个资源服务器时,所述使用所述一个或多个访问令牌中与所请求资源的业务类型相对应的访问令牌从一个或多个资源服务器获取所述资源,具体包括:所述URG基于所述一个或多个资源ID生成对应所述一个或多个资源服务器的一个或多个单个资源请求;每个所述单个请求中包含与所请求资源对应的访问令牌;所述URG分别发送所述一个或多个单个资源请求给所述一个或多个资源服务器;所述URG从所述一个或多个资源服务器接收所述一个或多个单个资源请求的一个或多个响应消息,所述一个或多个响应消息中携带与所述一个或多个单个资源请求分别对应的资源。结合第一方面或第一方面的第一种可能的实现方式或第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述访问令牌在预定时间段内有效,则所述方法还包括:所述URG在所述一个或多个访问令牌超过所述预定时间段后删除所述一个或多个访问令牌;所述URG向所述一个或多个授权服务器发送授权请求。本专利技术第二方面提供一种用户资源网关,包括:第一接收单元,用于接收资源所有者发送的资源聚合请求,所述资源聚合请求中包含用户ID和M类业务的资源的资源标识;其中,M为正整数;第一发送单元,用于基于所述资源聚合请求向与所述M类业务相关的一个或多个授权服务器发送授权请求;第二接收单元,用于接收所述一个或多个授权服务器基于所述授权请求返回的一个或多个访问令牌;所述一个或多个访问令牌分别与所述M类业务相关联;处理单元,用于控制存储所述一个或多个访问令牌;并当所述URG接收到客户端发送的携带所述用户ID的资源请求时,对所述客户端进行权限验证,并在验证通过后使用所述一个或多个访问令牌中与所请求资源的业务类型相对应的访问令牌从一个或多个资源服务器获取所述资源;第二发送单元,用于将所述资源发送给所述客户端。结合第二方面,在第二方面的第一种可能的实现方式中,所述用户资源网关还包括:第三接收单元,用于接收所述客户端发送的所述资源请求;第三发送单元,用于向所述资源所有者发送授权请求;第四接收单元,用于接收所述资源所有者的授权响应消息;所述处理单元具体用户根据授权响应消息确定验证通过。结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,在所述资源请求中包含一个或多个资源ID,并涉及一个或多个资源服务器时,所述处理单元具体用于基于所述一个或多个资源ID生成对应所述一个或多个资源服务器的一个或多个单个资源请求;每个所述单个请求中包含与所请求资源对应的访问令牌;所述用户资源网关还包括:第四发送单元,用于分别发送所述一个或多个单个资源请求给所述一个或多个资源服务器;第五接收单元,用于从所述一个或多个资源服务器接收所述一个或多个单个资源请求的一个或多个响应消息,所述一个或多个响应消息中携带与所述一个或多个单个资源请求分别对应的资源。结合第二方面或第二方面的第一种可能的实现方式或第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述访问令牌在预定时间段内有效,所述处理单元还用于在所述一个或多个访问令牌超过所述预定时间段后删除所述一个或多个访问令牌;所述第一发送单元,还用于再向所述一个或多个授权服务器发送授权请求。本专利技术第三方面提供一种用户资源网关,包括:第一接收器,用于接收资源所有者发送的本文档来自技高网
...
一种资源访问方法及用户资源网关

【技术保护点】
一种资源访问方法,其特征在于,包括:用户资源网关URG接收资源所有者发送的资源聚合请求,所述资源聚合请求中包含用户ID和M类业务的资源的资源标识;其中,M为正整数;所述URG基于所述资源聚合请求向与所述M类业务相关的一个或多个授权服务器发送授权请求;所述URG接收所述一个或多个授权服务器基于所述授权请求返回的一个或多个访问令牌;所述一个或多个访问令牌分别与所述M类业务相关联;所述URG存储所述一个或多个访问令牌;当所述URG接收到客户端发送的携带所述用户ID的资源请求时,对所述客户端进行权限验证,并在验证通过后使用所述一个或多个访问令牌中与所请求资源的业务类型相对应的访问令牌从一个或多个资源服务器获取所述资源;所述URG将所述资源发送给所述客户端。

【技术特征摘要】
1.一种资源访问方法,其特征在于,包括:用户资源网关URG接收资源所有者发送的资源聚合请求,所述资源聚合请求中包含用户ID和M类业务的资源的资源标识;其中,M为正整数;所述URG基于所述资源聚合请求向与所述M类业务相关的一个或多个授权服务器发送授权请求;所述URG接收所述一个或多个授权服务器基于所述授权请求返回的一个或多个访问令牌;所述一个或多个访问令牌分别与所述M类业务相关联;所述URG存储所述一个或多个访问令牌;当所述URG接收到客户端发送的携带所述用户ID的资源请求时,对所述客户端进行权限验证,并在验证通过后使用所述一个或多个访问令牌中与所请求资源的业务类型相对应的访问令牌从一个或多个资源服务器获取所述资源;所述URG将所述资源发送给所述客户端。2.如权利要求1所述的方法,其特征在于,在所述URG存储所述一个或多个访问令牌之后,还包括:接收所述客户端发送的所述资源请求;所述对所述客户端进行权限验证,包括:所述URG向所述资源所有者发送授权请求;所述URG接收所述资源所有者的授权响应消息,所述授权响应消息表征验证通过。3.如权利要求1或2所述的方法,其特征在于,在所述资源请求中包含一个或多个资源ID,并涉及一个或多个资源服务器时,所述使用所述一个或多个访问令牌中与所请求资源的业务类型相对应的访问令牌从一个或多个资源服务器获取所述资源,具体包括:所述URG基于所述一个或多个资源ID生成对应所述一个或多个资源服务器的一个或多个单个资源请求;每个所述单个请求中包含与所请求资源对应的访问令牌;所述URG分别发送所述一个或多个单个资源请求给所述一个或多个资源服务器;所述URG从所述一个或多个资源服务器接收所述一个或多个单个资源请求的一个或多个响应消息,所述一个或多个响应消息中携带与所述一个或多个单个资源请求分别对应的资源。4.如权利要求1或2所述的方法,其特征在于,所述访问令牌在预定时间段内有效,则所述方法还包括:所述URG在所述一个或多个访问令牌超过所述预定时间段后删除所述一个或多个访问令牌;所述URG再向所述一个或多个授权服务器发送授权请求。5.一种资源访问方法,其特征在于,包括:用户资源网关URG接收客户端发送的资源请求;其中,所述资源请求中包含一个或多个资源ID,每个所述资源ID对应一个资源;所述URG对所述客户端进行权限验证;所述URG在验证通过后基于所述一个或多个资源ID生成对应一个或多个资源服务器的一个或多个单个资源请求;每个所述单个资源请求中包含与所请求资源对应的访问令牌,所述访问令牌表征资源所有者允许所述URG访问所述资源;所述URG分别发送所述一个或多个单个资源请求给所述一个或多个资源服务器;所述URG从所述一个或多个资源服务器接收所述一个或多个单个资源请求的一个或多个响应消息,所述一个或多个响应消息中携带与所述一个或多个单个资源请求对应的资源;所述URG将所述资源发送给所述客户端。6.如权利要求5所述的方法,其特征在于,所述URG对所述客户端进行权限验证,包括:所述URG向所述资源所有者发送授权请求;所述URG接收所述资源所有者的授权响应消息,所述授权响应消息表征验证通过。7.如权利要求5所述的方法,其特征在于,所述资源请求中携带访问标识,所述访问标识表征所述资源所有者允许所述客户端访问所述资源,所述URG对所述客户端进行权限验证,包括:所述URG基于所述访问标识对所述客户端进行权限验证。8.如权利要求7所述的方法,其特征在于,在所述用户资源网关URG接收客户端发送的资源请求之前,还包括:所述URG接收客户端发送的授权请求,请求授权访问所述资源;所述URG向所述资源所有者发送授权请求;所述URG接收所述资源所有者的授权响应消息;所述URG基于所述授权响应消息分配所述访问标识给所述客户端。9.如权利要求8所述的方法,其特征在于,在所述URG基于所述授权响应消息分配所述访问标识给所述客户端之前,还包括:所述URG接收所述资源所有者发送的资源聚合请求,所述资源聚合请求中包...

【专利技术属性】
技术研发人员:库塔斯哇拉朴拉胡尼兰石陈珊
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1