一种对数据资源进行访问的方法、装置和系统的制作方法_2

文档序号:9238120阅读:来源:国知局
明实施例提供了一种对数据资源进行访问的方法,该方法可以由终端、第一账户服务器、第二账户服务器和资源服务器共同实现。终端是资源请求者使用的终端,可以是任意终端。资源服务器是资源所有者存储数据资源的服务器。第一账户服务器可以是资源请求者账户的账户服务器,第二账户服务器可以是资源所有者账户的账户服务器,第一账户服务器和第二账户服务器可以是业务系统的账户服务器(如新浪账户服务器、QQ账户服务器等)。优选的,第一账户服务器和第二账户服务器也可以是IdP(Identity Provider,身份提供商)的账户服务器。IdP是通过OpenID (开放式身份)技术为互联网中不同的业务提供账户密码管理和登录管理的服务提供商,如google、yahoo等,业务提供商可以无需设置各自独立的账户系统,多个业务提供商可以使用同一 IdP提供的账户密码,用户可以使用在IdP的账户服务器注册账户登录多个业务系统。
[0048]如图3所示,该方法的处理流程可以包括如下的步骤:
[0049]步骤301,第一账户服务器接收终端发送的携带有第一账户标识和资源标识的第一访问权信息请求。
[0050]资源请求者可以在终端启动第一客户端程序(应用程序或网页程序),登录第一账户标识(可以是账号,如邮箱账号)对应的第一账户(可以是在业务系统注册的账户也可以是在IdP注册的账户)。然后,资源请求者可以在第一客户端程序中点击相应的数据资源的链接,请求访问相应的数据资源,该数据资源可以是第一客户端程序所属的业务系统的资源服务器中的数据资源,也可以是其它业务系统中的数据资源。终端会根据用户点击选择的数据资源的数据资源标识和资源请求者账户的第一账户标识,生成第一访问权信息请求,并发送给第一账户标识所属的第一账户服务器。访问权信息是用于证明具有访问相应的数据资源的权限的信息。第一访问权信息请求用于终端向第一账户服务器请求访问权信息。第一访问权信息请求还可以携带有终端的回调地址,用于后续第一账户服务器向终端反馈访问权信息。
[0051]步骤302,第一账户服务器向资源标识对应的资源所有者账户所属的第二账户服务器发送授权请求,该授权请求中携带有第一账户标识、第二账户标识和资源标识,第二账户标识为该资源所有者账户的账户标识。授权请求中还可以携带有第一账户服务器的回调地址,用于后续的第二账户服务器向第一账户服务器反馈授权信息。
[0052]具体的,首先,第一账户服务器将资源标识发送给该资源标识对应的资源服务器,并接收资源服务器反馈的资源标识对应的资源所有者账户的第二账户标识。在资源服务器中存储有数据资源,而且可以存储数据资源的资源标识和数据资源所属的资源所有者账户的账户标识的对应关系。根据该对应关系可以查询出上述资源标识对应的账户标识为第二账户标识。
[0053]然后,第一账户服务器向第二账户标识所属的第二账户服务器发送授权请求。具体的,第一账户服务器可以根据预先存储的账户标识和账户服务器的从属关系,确定第二账户标识所属的第二账户服务器;第一账户服务器向第二账户服务器发送授权请求。
[0054]优选的,还可以对授权请求进行签名加密,以下给出了两种优选的加密方式,具体的,在第一账户服务器向资源标识对应的资源所有者账户所属的第二账户服务器发送授权请求之前,可以进行以下处理:
[0055]处理一,第一账户服务器从资源服务器获取签名算法和签名密钥;第一账户服务器根据签名算法和签名密钥,对授权请求进行签名加密。
[0056]资源服务器可以预先存储有用于签名加密的签名算法和签名密钥。第一账户服务器可以根据获取的签名算法和签名密钥对授权请求进行计算得到其摘要,作为签名信息加入授权请求中,生成经过签名加密的授权请求。
[0057]处理二,第一账户服务器向资源服务器发送携带有该授权请求的签名加密请求,以使资源服务器根据存储的签名算法和签名密钥对该授权请求进行签名加密;第一账户服务器接收资源服务器发送的经过签名加密的授权请求。
[0058]资源服务器可以预先存储有用于签名加密的签名算法和签名密钥。资源服务器可以根据签名算法和签名密钥对授权请求进行计算得到其摘要,作为签名信息加入授权请求中,生成经过签名加密的授权请求。
[0059]步骤303,第二账户服务器接收第一账户服务器发送的授权请求。
[0060]步骤304,第二账户服务器根据预设的授权机制,对授权请求进行授权,并向第一账户服务器返回授权信息。
[0061]对于上述第一账户服务器对授权请求进行签名加密(即授权请求中携带有签名信息)的情况,第二账户服务器可以对授权请求进行签名验证,以下给出了两种优选的签名验证的方法,相应的步骤304的处理可以如下:
[0062]方法一,第二账户服务器从资源服务器获取签名算法和签名密钥;第二账户服务器根据签名算法和签名密钥,对授权请求进行签名验证,在验证通过后,根据预设的授权机制,对授权请求进行授权。
[0063]第二账户服务器可以根据授权请求中的资源标识确定所属的资源服务器。资源服务器可以预先存储有用于签名加密的签名算法和签名密钥。第二账户服务器可以根据获取的签名算法和签名密钥对授权请求进行计算得到其摘要(可以是计算授权请求除去签名信息的部分的摘要),然后将得到的摘要与签名信息进行比较,如果相同则验证通过,否则验证不通过。
[0064]方法二,第二账户服务器向资源服务器发送携带有该授权请求的签名验证请求,以使资源服务器根据存储的签名算法和签名密钥对所述授权请求进行签名验证,并在验证通过后向第二账户服务器发送验证成功信息;第二账户服务器在接收到资源服务器发送的验证成功信息后,根据预设的授权机制,对授权请求进行授权。
[0065]第二账户服务器可以根据授权请求中的资源标识确定所属的资源服务器。资源服务器可以预先存储有用于签名加密的签名算法和签名密钥。资源服务器可以根据签名算法和签名密钥对授权请求进行计算得到其摘要(可以是计算授权请求除去签名信息的部分的摘要),然后将得到的摘要与签名信息进行比较,如果相同则验证通过,否则验证不通过。
[0066]如果上述签名验证不通过,第二账户服务器可以向第一账户服务器返回签名验证失败的息。
[0067]在实施中,预设的授权机制可以有很多种,可以由资源所有者通过资源所有者账户来设置,或者可以由资源服务器提供多种授权机制并由资源所有者选择。预设的授权机制可以是,对携带有预先设定的账户标识的授权请求进行授权,其它授权请求不进行授权。或者,优选的,预设的授权机制可以如下:
[0068]首先,第二账户服务器向第二账户标识对应的账户(即资源所有者账户)发送授权请求通知,授权请求通知中携带有第一账户标识和资源标识。
[0069]具体的,第二账户服务器可以通过第二账户标识对应的业务系统向第二账户标识对应的账户以系统通知的形式发送授权请求通知,或者,也可以向第二账户标识对应的账户所关联的邮箱发送授权请求通知。在授权请求通知中可以设置地址链接,资源所有者收到通知后,可以根据其中的第一账户标识和资源标识,判断是否允许第一账户标识对应的账户访问资源标识对应的数据资源,可以点击地址链接,进入授权界面中,点击“授权”或“拒绝”的选项。
[0070]然后,第二账户服务器在接收到对应授权请求通知的授权确认后,向第一账户服务器返回授权信息。可以根据第一账户服务器的回调地址向第一账户服务器返回授权信肩、O
[0071]上述用户点击“授权”的选项后,则向第二账户服务器发送对应上述授权请求通知的授权确认。第二账户服务器接收到授权确认后,可以获取授权信息(授权信息可以临时生成,也可以预先存储),并发送给第一账户服务器。第二账户服务器还可以将授权信息与第一账户标识、第二账户标识、资源标识对应的进行存储。授权信息可以具体为授权码。
[0072]步骤305,第一账户服务器在接收到授权信息后,根据授权信息,从资源标识对应的资源服务器获取访问权信息。具体的,该步骤可以按照如下方式执行:
[0073]首先,第一账户服务器可以在接收到授权信息后,向资源标识对应的资源服务器发送第二访问权信息请求,第二访问权信息请求中携带有第一账户标识、第二账户标识、资源标识和授权信息;以使资源服务器对授权信息进行验证,并在验证通过后,生成访问权信息,发送给第一账户服务器。
[0074]其中,第二访问权信息请求用于第一账户服务器向资源服务器请求访问权信息。
[0075]具体的,资源服务器可以将第一账户标识、第二账户标识、资源标识和授权信息发送给第二账户服务器进行验证,并在验证通过后,生成访问权信息,发送给第一账户服务器。
[0076]基于上述第二账户服务器存储的授权信息与第一账户标识、第二账户标识、资源标识的对应关系,资源服务器对授权信息验证的过程可以包括:资源服务器向第二账户服务器发送授权信息验证请求,授权信息验证请求中携带有第二访问权信息请求中携带的第一账户标识、第二账户标识、资源标识和授权信息;第二账户服务器根据其存储的授权信息与第一账户标识、第二账户标识、资源标识的对应关系对授权信息验证请求进行验证(判断存储的对应关系中是否有授权信息验证请求中携带的第一账户标识、第二账户标识、资源标识和授权信息的对应关系),如果验证通过,则向资源服务器发送成功信息,如果验证不通过,则向资源服务器发送失败信息。资源服务器在接收到成功信息后确定对授权信息验证通过。
[0077]资源服务器可以存储访问权信息与第一账户标识、第二账户标识、资源标识的对应关系,用于在资源请求者进行数据资源访问时验证其是否被授权。
[0078]然后,第一账户服务器接收资源服务器发送的访问权信息。
[0079]上述的访问权信息中可以包括访问码。其次,还可以包括更新码。另外,还可以包括访问码的有效期。<
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1