用于控制资源访问的方法和装置的制造方法_4

文档序号:9380185阅读:来源:国知局
资源的请求。作为响应,在步骤S604利用授权服务器201对用户身份进行认证。特别地,根据本发明的实施例,对用户的认证可以基于用户、用户设备、资源和/或其他任何可能的相关因素而被定制。
[0067]而且,在OAuth架构下,在步骤S603和S604处还可以完成用户对客户端应用203的授权。例如,用户可以指定授权客户端应用203访问的资源类型,等等。该授权可以是一个隐式过程,例如基于预定义配置。备选地,授权也可以被显式地完成,例如基于网页表单、语音、手势输入等用户输入。用户对客户端应用203的授权信息将被存储在授权服务器201可访问的存储位置,以便在生成访问令牌时使用。
[0068]如果用户通过认证,则用户代理204在步骤S605将授权服务器201生成的一个代码转发给客户端应用203。客户端应用203继而在步骤S606向授权服务器201请求访问令牌。特别地,根据本发明的实施例,在步骤S606处发送的请求不仅可以包括先前由第一设备201生成的代码,而且可以包括特定于客户端应用的认证信息,例如证书、签名、加密数据段,等等。
[0069]响应于该请求,授权服务器在步骤S607基于令牌请求中的认证信息对客户端应用执行定制的认证。如果通过认证,在步骤S608,利用授权服务器201生成并且定制访问令牌。如上所述,根据本发明的实施例,定制的访问令牌不仅可以指示访问请求被允许,还可以具有一个或多个访问约束以用于实现对资源访问的更为全面和精细的控制。与访问令牌相关联的访问约束可以被集成在访问令牌中,也可以存储在授权服务器201处或者任何授权服务器201可访问的存储设备中。此外,在OAuth架构下,在步骤S604处存储的用户对于客户端应用203的授权信息也可以被转换为相应的约束,并且被包括在访问令牌中。
[0070]定制的访问令牌在步骤S609从授权服务器201被提供给客户端应用203。客户端应用203继而使用访问令牌在步骤S610从资源服务器202请求资源。响应于该请求,在步骤S611,资源服务器202将定制的访问令牌返回给授权服务器201,以验证访问令牌的有效性。根据本发明的实施例,授权服务器201在步骤S612至少通过确定与访问令牌相关联的访问约束是否得到满足来验证访问令牌是否有效。如上所述,在确定访问约束是否满足时,可能需要访问其他服务,例如位置服务。
[0071]如果访问令牌被验证为有效,则授权服务器201在步骤S613向资源分服务器202确认令牌有效。作为响应,资源服务器202可以在步骤S614将所请求的资源返回给客户端应用203。
[0072]图7示出了根据本发明实施例的用于控制资源访问的装置700的示意性框图。如图所示,根据本发明的实施例,装置700包括:认证单元701,被配置为响应于针对资源的访问的请求,利用第一设备确定是否授权对所述资源的所述访问,所述资源由独立于所述第一设备的第二设备提供;以及令牌定制单元702,被配置为利用关于所述访问的访问约束来定制访问令牌,以用于控制对所述资源的所述访问,所述访问令牌响应于确定授权对所述资源的所述访问而被生成。
[0073]在某些实施例中,装置700还可以包括访问约束生成单元,其被配置为基于以下至少一个而生成所述访问约束:在针对所述资源的所述访问的所述请求中包括的关于所述访问的要求;在针对所述访问令牌的请求中包括的关于所述访问的要求;以及事先存储的关于所述访问的预定义要求。
[0074]在某些实施例中,所述访问约束包括以下至少一项:关于所述访问的时间约束;关于所述访问的次数约束;以及关于所述访问的位置约束。
[0075]在某些实施例中,装置700还可以包括:令牌提供单元,被配置为提供所述访问令牌,使得所述访问令牌由所述第二设备获得;令牌接收单元,被配置为从所述第二设备接收所述访问令牌;以及令牌验证单元,被配置为至少部分地通过确定所述访问约束是否被满足,来验证所述访问令牌的有效性。
[0076]在某些实施例中,所述令牌定制单元702可以包括:访问约束集成单元,被配置为将所述访问约束集成在所述访问令牌中。备选地或附加地,在某些实施例中,所述令牌定制单元702可以包括:访问约束存储单元,被配置为将所述访问约束与所述访问令牌相关联地存储在所述第一设备可访问的存储设备中。
[0077]在某些实施例中,所述认证单元701可以包括:用户身份认证单元,配置为基于关于以下至少一项的信息来认证请求访问所述资源的用户的身份:所述用户,所述用户所使用的用户设备,以及所述资源。备选地或附加地,在某些实施例中,所述认证单元701可以包括:客户端应用认证单元,被配置为至少部分地基于特定于请求对所述资源的所述访问的用户所使用的客户端应用的认证信息来认证所述客户端应用,所述认证信息由所述客户端应用基于预定协议添加到针对所述访问令牌的请求中。
[0078]在某些实施例中,所述第一设备是OAuth架构中的授权服务器,并且其中所述第二设备是所述OAuth架构中的资源服务器。
[0079]应当注意,为清晰起见,图7中没有示出装置700所包括的可选单元或者子单元。上文所描述的所有特征和操作分别适用于装置700,故在此不再赘述。而且,装置700中的单元或子单元的划分不是限制性的而是示例性的,旨在从逻辑上描述其主要功能或操作。一个单元的功能可以由多个单元来实现;反之,多个单元亦可由一个单元来实现。本发明的范围在此方面不受限制。
[0080]而且,装置700所包含的单元可以利用各种方式来实现,包括软件、硬件、固件或其任意组合。例如,在某些实施方式中,装置700可以利用软件和/或固件来实现。备选地或附加地,装置700可以部分地或者完全地基于硬件来实现。例如,装置700中的一个或多个单元可以实现为集成电路(IC)芯片、专用集成电路(ASIC)、片上系统(SOC)、现场可编程门阵列(FPGA),等等。本发明的范围在此方面不受限制。特别地,在某些实施例中,装置700可以实现为部署在第一设备201处的插件,作为第一设备201—部分的部件,或者以其他方式与第一设备201协同工作的独立装置。
[0081]本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
[0082]计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是一但不限于一电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPR0M或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(⑶-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
[0083]这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
[0084]用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言一诸如Java、Smalltalk、C++等,以及常规的过程式编程语目一诸如“C”语目或类似的编程语目。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1