专利名称:一种云端认证方法、系统及装置的制作方法
技术领域:
本发明涉及互联网云服务技术领域,特别涉及一种云端认证方法、系统及云端服务器。
背景技术:
目前的云服务平台,为了保证安全性,在用户访问云服务平台提供的资源时,需要对用户的访问请求进行身份认证。现有的云服务权限系统主要包括两部分:请求者身份认证与请求者对于被请求资源的访问权限认证。当用户请求访问云服务平台的资源时,需要先后完成用户身份认证和资源访问权限认证,二者全部通过后才能继续访问。同时,身份认证又分为身份凭据合法性判定和请求者-子系统从属关系判定两部分。故而权限系统每次进行用户对资源的访问权限认证时,必须进行三次数据库或存储机群访问(分别用来读取身份凭据数据、请求者-子系统从属关系数据和资源的权限判定数据),导致单次认证时间大于10ms,认证效率因而受到严重影响。现有系统的cache (缓存)从数据存储位置可分为单机cache和网络cache, cache中的数据是存储系统中的镜像(例如数据库cache)。现有系统中存在如下缺点:单机cache受操作系统稳定性和硬件资源限制,无法保证高可用性,同时还会带来多点cache间的数据同步问题。网络cache可以解决单机cache上述问题,但是单纯缓存存储系统中数据的镜像会导致cache系统的频繁访问,导致网络性能成为瓶颈。
发明内容
本发明旨在至少在一定程度上解决上述技术问题之一或至少提供一种有用的商业选择。为此,本发明的目的在于提出一种云端认证方法及装置,减少数据访问,提高云端服务器缓存的访问效率,缩短每次认证的认证时间。为达到上述目的,本发明第一方面的实施例提出了一种云端认证方法,包括以下步骤:云端服务器接收客户端发送的请求消息,其中,所述请求消息包括认证凭据和被请求的云资源的云资源信息;所述云端服务器根据所述认证凭据查询所述云端服务器缓存的认证记录以获得第一查询结果,其中,所述认证记录包括主键值、副键值和认证结果,所述主键值与云资源信息,所述副键值与认证凭据相关;所述云端服务器根据所述云资源信息在所述第一查询结果中进一步查询所述认证记录;所述云端服务器判断是否在所述第一查询结果中查询到与所述请求消息匹配的认证记录;如果在所述第一查询结果中查询到与所述请求消息匹配的认证记录,则所述云端服务器根据所述认证记录中记录的认证结果对所述请求消息进行认证。在本发明的一个实施例中,所述云端服务器对所述云资源的访问权限信息进行监控;当所述云资源的访问权限信息变化时,所述云端服务器根据所述云资源的云资源信息删除对应的认证记录。
在本发明的一个实施例中,所述云端服务器根据所述认证凭据获得认证凭据所属用户的身份信息;所述云端服务器根据所述身份信息对所述请求消息进行身份认证。在本发明的一个实施例中,所述云端服务器根据所述云资源信息获得所述云资源的属主信息;所述云端服务器根据所述属主信息对所述请求消息进行资源权限认证。在本发明的一个实施例中,所述用户的身份信息和所述属主信息优先从所述云端服务器缓存的数据中获取。根据本发明实施例的云端认证方法,通过云端服务器缓存认证记录,批量接收用户的请求信息并查询,减少了数据访问,显著地缩短了每次认证的认证时间。本发明第二方面的实施例提出了一种云端认证系统,包括:客户端和云端服务器,其中,客户端用于向所述云端服务器发送请求消息,其中,所述请求消息包括认证凭据和被请求的云资源的云资源信息;云端服务器用于接收所述请求消息,根据所述认证凭据查询所述云端服务器缓存的认证记录以获得第一查询结果,以及根据所述云资源信息在所述第一查询结果中进一步查询所述认证记录,判断是否在所述第一查询结果中查询到与所述请求消息匹配的认证记录,并在所述第一查询结果中查询到与所述请求消息匹配的认证记录时,根据所述认证记录中记录的认证结果对所述请求消息进行认证,其中,所述认证记录包括主键值、副键值和认证结果,所述主键值与云资源信息,所述副键值与认证凭据相关。在本发明的一个实施例中,所述云端服务器还用于对所述云资源的访问权限信息进行监控,以及当所述云资源的访问权限信息变化时,根据所述云资源的云资源信息删除对应的认证记录。在本发明的一个实施例中,所述云端服务器还用于根据所述认证凭据获得认证凭据所属用户的身份信息,以及根据所述身份信息对所述请求消息进行身份认证。在本发明的一个实施例中,所述云端服务器还用于根据所述云资源信息获得所述云资源的属主信息,以及根据所述属主信息对所述请求消息进行资源权限认证。在本发明的一个实施例中,所述用户的身份信息和所述属主信息优先从所述云端服务器缓存的数据中获取。根据本发明实施例的云端认证系统,通过云端服务器缓存认证记录,批量接收用户的请求信息并查询,减少了数据访问,显著地缩短了每次认证的认证时间。本发明第三方面的实施例提出了一种云端服务器,包括:用户交互模块,用于接收客户端发送的请求消息,其中,所述请求消息包括认证凭据和被请求的云资源的云资源信息;存储模块,用于存储认证记录,其中,所述认证记录包括主键值、副键值和认证结果,所述主键值与云资源信息,所述副键值与认证凭据相关;查询模块,用于根据所述认证凭据查询所述存储模块缓存的认证记录以获得第一查询结果,并根据所述云资源信息在所述第一查询结果中进一步查询所述认证记录,并判断是否在所述第一查询结果中查询到与所述请求消息匹配的认证记录;认证模块,用于在所述第一查询结果中查询到与所述请求消息匹配的认证记录时,根据所述认证记录中记录的认证结果对所述请求消息进行认证。在本发明的一个实施例中,所述云端服务器还包括:监控模块,用于对所述云资源的访问权限信息进行监控,并且当所述云资源的访问权限信息变化时,所述存储模块根据所述云资源的云资源信息删除对应的认证记录。在本发明的一个实施例中,所述认证模块还用于根据所述认证凭据获得认证凭据所属用户的身份信息,并根据所述身份信息对所述请求消息进行身份认证。在本发明的一个实施例中,所述认证模块还用于根据所述云资源信息获得所述云资源的属主信息,并根据所述属主信息对所述请求消息进行资源权限认证。在本发明的一个实施例中,所述用户的身份信息和所述属主信息优先从所述云端服务器缓存的数据中获取。根据本发明实施例的云端服务器,通过云端服务器缓存认证记录,批量接收用户的请求信息并查询,减少了数据访问,显著地缩短了每次认证的认证时间。本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:图1为本发明一个实施例的云端认证方法的流程图;图2为本发明一个实施例的资源的访问权限发生变化时进行处理的流程图;图3为本发明另一个实施例的云端认证方法的流程图;图4为本发明一个实施例的云端服务器cache批量查询的数据及算法示意图;图5为本发明一个实施例的云端认证系统的示意图;以及图6为本发明一个实施例的云端服务器的示意图。
具体实施例方式下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。下面分别参考图1至图3对本发明实施例的云端认证方法的流程进行描述。如图1所示,根据本发明第一方面的实施例的云端认证方法,包括以下步骤:SlOl:云端服务器接收客户端发送的请求消息,其中,请求消息包括认证凭据和被请求的云资源的云资源信息。具体地,认证凭据包括但并不仅限于以下几类:1.Access key 对应 secret key、用户 ID;2.开发平台token (令牌)对应用户ID;3.云 token 对应用户 ID;4.passport (百度外部用户登录系统)用户名、密码对应用户ID;5.uuap (百度内网统一登录系统)用户名、密码对应用户ID。
云资源的云资源信息包括资源名等的信息。S102:云端服务器根据认证凭据查询所述云端服务器缓存的认证记录以获得第一查询结果,其中,认证记录包括主键值、副键值和认证结果,主键值与云资源信息,副键值与认证凭据相关。使用资源名作为主key(关键字),用户的认证凭据作为副key,在云端服务器cache中查询认证记录,如果在云端服务器cache中查询到已有的认证记录,则将该已有的认证记录的认证结果作为本次认证的认证结果。S103:云端服务器根据云资源信息在第一查询结果中进一步查询认证记录。S104:如果在第一查询结果中查询到与请求消息匹配的认证记录,则云端服务器根据认证记录中记录的认证结果对请求消息进行认证。当资源的访问权限发生变化时,例如用户购买了某些网站提供的限时有效类的服务,如下载类软件的付费高速下载、网络小说站点的付费浏览VIP章节等,此时用户对于这些资源的访问权限从禁止访问变为允许访问,则云端服务器缓存中的认证记录数据需要更改,如图3所示,具体包括:S201:云端服务器对云资源的访问权限信息进行监控。S202:当云资源的访问权限信息变化时,云端服务器根据云资源的云资源信息删除对应的认证记录。资源的访问权限发生变化时,将该资源的资源名作为关键字在云端服务器cache中对认证结果进行筛选查询,并清除筛选查询中命中该关键字的认证结果数据。清除了相应的认证结果数据后,用户对已提出过认证请求的资源重新发出认证请求时,将重新进行查询,获得正确的认证结果。数据的实时同步问题得到了解决。如图3所示,当在云端服务器缓存中没有查询到与请求消息匹配的认证记录时,本发明的一个实施例的云端认证方法还包括:S105:云端服务器根据认证凭据获得认证凭据所属用户的身份信息。S106:云端服务器根据身份信息对请求消息进行身份认证。使用用户的认证凭据作为主key,查询用户的身份信息并根据身份信息进行用户的身份认证。用户的凭据信息包括但并不仅限于:access_key、secret_key、acess_key状态、授予时间等。用户的身份信息包括但并不仅限于:用户ID、用户名、email、手机号码、状态(status)、该用户ID有访问权限的云计算子系统列表等信息。用户的身份认证信息优先从云端服务器缓存的数据中获取。如果未在缓存中获取到身份认证信息,则在本次身份认证通过时,将本次身份认证的结果保存在缓存中。在本发明的一个实施例中,将用户的凭据信息与用户的身份信息组织进同一数据结构中存储,减少一次cache的访问以提高cache访问效率。只有请求者通过了用户身份认证,才能继续进行资源访问权限认证,如果用户身份认证失败,则直接向客户端返回认证失败的提示。资源访问权限认证包括以下步骤:S107:云端服务器根据云资源信息获得云资源的属主信息。在本实施例中,使用资源名作为主key,常量字符串“ownership”作为副key,查询资源属主的用户ID和对应的用户名等用户信息,以便检查当前认证请求是否来自资源属主。用户的身份信息优先从云端服务器缓存的数据中获取。
S108:云端服务器根据属主信息对请求消息进行资源权限认证。通过了身份认证和资源权限认证后,则请求消息认证通过;身份认证中资源权限认证中有一项认证失败,则请求消息认证失败。在本发明的一个实施例中,S102、S105、S107步骤中进行的三次查询操作,因为三次查询的关键字都在用户的认证请求中提供,所以可以对这三次查询操作进行批量处理,如图4所示,云端服务器cache提供了批量操作接口,一次批量操作中包括了在云端cache中查询最终认证结果、请求者身份认证、在云端cache中查询资源属主信息、访问权限认证,云端只需要接受一次数据,执行批量操作,就可返回认证结果。与现有技术的身份凭据合法性判定、从属关系判定、资源访问权限认证需三次访问数据库相比,进行批量处理,减少了对云端cache的访问次数,减少了网络带宽的占用,尽可能地降低了 cache失配情况下的cache访问的额外时间消耗。本发明一个实施例的云端认证方法还包括:S109:认证完成后,将认证结果储存到云端服务器缓存的认证记录中。在每次认证结束后,将这一次认证的认证结果(认证通过或认证失败)保存在云端服务器cache中。在实际应用中,比如用户在某个网站浏览时,经常在同一网站中的各网页之间跳转,此时经常会出现用户多次访问同一资源的情形,将认证结果保存在云端服务器缓存中,则以后该用户再次访问该资源进行认证时,可以如S102步骤所述,从云端服务器缓存中查询已有的认证结果,可以显著地降低认证时间。根据本发明实施例的云端认证方法,通过云端服务器缓存认证记录,批量接收用户的请求信息并查询,减少了数据访问,并且优化了云端服务器缓存中的数据结构,提高了缓存的访问效率,显著地缩短了每次认证的认证时间。如图5所示,根据本发明第二方面实施例的云端认证系统,包括:客户端310和云端服务器320。具体地,客户端310向云端服务器320发送请求消息,其中请求消息包括认证凭据和被请求的云资源的云资源信息。具体地,云资源信息包括资源的资源名等信息,认证凭据包括但并不仅限于以下几类:1.Access key 对应 secret key、用户 ID;2.开发平台token (令牌)对应用户ID;3.云 token 对应用户 ID;4.passport (百度外部用户登录系统)用户名、密码对应用户ID;5.uuap (百度内网统一登录系统)用户名、密码对应用户ID。云端服务器320接收该请求消息后,根据认证凭据查询自身缓存的认证记录以获得第一查询结果,再根据云资源信息在第一查询结果中进一步查询认证记录,并判断是否在第一查询结果中查询到与请求消息匹配的认证记录,其中,认证记录包括主键值、副键值和认证结果,所述主键值与云资源信息,所述副键值与认证凭据相关。使用资源名作为主key (关键字),用户的认证凭据作为副key,在云端服务器cache中查询认证记录,如果在云端服务器cache中查询到与该请求消息匹配的认证记录,则根据认证记录中记录的认证结果对请求消息进行认证,即,将该已有的认证记录的认证结果作为本次认证的认证结果。在本发明的一个实施例中,云端服务器320还用于对云资源的访问权限信息进行监控,当资源的访问权限发生变化时,例如用户购买了某些网站提供的限时有效类的服务,如下载类软件的付费高速下载、网络小说站点的付费浏览VIP章节等,此时用户对于这些资源的访问权限从禁止访问变为允许访问,则云端服务器缓存中的认证记录数据需要更改,具体可通过:根据云资源的云资源信息删除对应云端服务器缓存中的认证记录来实现。在本发明的一个实施例中,当在云端服务器320的缓存中未查询到与请求消息匹配的认证记录时,云端服务器320根据认证凭据获得所属用户的身份信息,并根据身份信息对请求消息进行身份认证。使用用户的认证凭据作为主key,查询用户的身份信息并根据身份信息进行用户的身份认证。用户的身份信息包括但并不仅限于:用户ID、用户名、email、手机号码、状态(status)、该用户ID有访问权限的云计算子系统列表等信息。用户的身份信息优先从云端服务器缓存的数据中获取。在本发明的一个实施例中,将用户的凭据信息与用户的身份信息组织进同一数据结构中存储,减少一次cache的访问以提高cache访问效率。如果通过身份认证,云端服务器320根据云资源信息获得云资源的属主信息,以及根据属主信息对请求消息进行资源权限认证。使用资源名作为主key,常量字符串“ownership”作为副key,查询资源属主的用户ID和对应的用户名等用户信息,以便检查当前认证请求是否来自资源属主。用户的身份信息优先从云端服务器缓存的数据中获取。根据本发明实施例的云端认证系统,通过云端服务器缓存认证记录,减少了数据访问,并且优化了云端服务器缓存中的数据结构,提高了缓存的访问效率,显著地缩短了每次认证的认证时间。如图6所示,根据本发明第三方面的实施例的云端服务器,包括:用户交互模块410、存储模块420、查询模块430、认证模块440。具体地,用户交互模块410接收客户端发送的请求消息。其中,请求消息包括认证凭据和被请求的云资源的云资源信息。具体地,云资源信息包括资源的资源名等信息,认证凭据包括但并不仅限于以下几类:1.Access key 对应 secret key、用户 ID;2.开发平台token (令牌)对应用户ID;3.云 token 对应用户 ID;4.passport (百度外部用户登录系统)用户名、密码对应用户ID;5.uuap (百度内网统一登录系统)用户名、密码对应用户ID。存储模块420存储认证记录,其中,认证记录包括主键值、副键值和认证结果,主键值与云资源信息相关,副键值与认证凭据相关。本实施例中,存储模块420为云端服务器缓存。查询模块430根据认证凭据查询在存储模块420中缓存的认证记录以获得第一查询结果,再根据所述云资源信息在所述第一查询结果中进一步查询所述认证记录,判断是否在所述第一查询结果中查询到与所述请求消息匹配的认证记录,如果查询到与请求消息匹配的认证记录,则认证模块440根据该认证记录中记录的认证结果对请求消息进行认证。在本发明的一个实施例中,云端服务器还包括:监控模块450。监控模块450对云资源的访问权限信息进行监控,并且当云资源的访问权限信息变化时,由存储模块420根据云资源的云资源信息删除对应的认证记录。当资源的访问权限发生变化时,例如用户购买了某些网站提供的限时有效类的服务,如下载类软件的付费高速下载、网络小说站点的付费浏览VIP章节等,此时用户对于这些资源的访问权限从禁止访问变为允许访问,云端服务器的监控模块监测到此资源的访问权限发生变化,将该资源的资源名作为关键字在云端服务器缓存中对认证记录进行筛选查询;然后,清除筛选查询中命中该关键字的认证记录数据。清除了相应的认证记录数据后,用户对已提出过认证请求的资源重新发出认证请求时,将重新进行查询,获得正确的认证结果。数据的实时同步问题得到了解决。当在云端服务器的缓存中没有查询到匹配的认证记录时,认证模块440根据认证凭据获得认证凭据所属用户的身份信息,并根据身份信息对请求消息进行身份认证。使用用户的认证凭据作为主key在存储模块420中进行查询,查询用户的用户信息并根据用户信息进行用户的身份认证。用户信息包括但并不仅限于:用户ID、用户名、email、手机号码、状态(status)、该用户ID有访问权限的云计算子系统列表等信息。当通过用户身份认证后,认证模块440根据云资源信息获得云资源的属主信息,并根据属主信息对请求消息进行资源权限认证。在本实施例中,使用资源名作为主key,常量字符串“ownership”作为副key,查询资源属主的用户ID和对应的用户名等用户信息,以便检查当前认证请求是否来自资源属主。如果资源不属于该用户,由认证模块440检测用户是否拥有对该资源的访问权限。在本发明的一个实施例中,将用户的凭据信息与用户的身份信息组织进同一数据结构中存储,减少一次cache的访问以提高cache访问效率。在每次认证结束后,将这一次的认证结果保存在存储模块420 (即云端服务器缓存)的认证记录中。在实际应用中,比如用户在某个网站浏览时,经常在同一网站中的各网页之间跳转,此时经常会出现用户多次访问同一资源的情形,将认证结果保存在云端服务器缓存中,则以后该用户再次访问该资源进行认证时,可以从云端服务器缓存中查询已有的认证结果,可以显著地降低认证时间。根据本发明实施例的云端服务器,通过云端服务器缓存认证记录,减少了数据访问,并且优化了云端服务器缓存中的数据结构,提高了缓存的访问效率,显著地缩短了每次认证的认证时间。流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(⑶ROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
权利要求
1.一种云端认证方法,其特征在于,包括以下步骤: 云端服务器接收客户端发送的请求消息,其中,所述请求消息包括认证凭据和被请求的云资源的云资源信息; 所述云端服务器根据所述认证凭据查询所述云端服务器缓存的认证记录以获得第一查询结果,其中,所述认证记录包括主键值、副键值和认证结果,所述主键值与云资源信息,所述副键值与认证凭据相关; 所述云端服务器根据所述云资源信息在所述第一查询结果中进一步查询所述认证记录; 所述云端服务器判断是否在所述第一查询结果中查询到与所述请求消息匹配的认证记录;以及 如果在所述第一查询结果中查询到与所述请求消息匹配的认证记录,则所述云端服务器根据所述认证记录中记录的认证结果对所述请求消息进行认证。
2.如权利要求1所述的云端认证方法,其特征在于,还包括: 所述云端服务器对所述云资源的访问权限信息进行监控;以及 当所述云资源的访问权限信息变化时,所述云端服务器根据所述云资源的云资源信息删除对应的认证记录。
3.如权利要求1或2所述的云端认证方法,其特征在于,还包括: 所述云端服务器根据所述认证凭`据获得认证凭据所属用户的身份信息;以及 所述云端服务器根据所述身份信息对所述请求消息进行身份认证。
4.如权利要求1-3任一项所述的云端认证方法,其特征在于,还包括: 所述云端服务器根据所述云资源信息获得所述云资源的属主信息;以及 所述云端服务器根据所述属主信息对所述请求消息进行资源权限认证。
5.如权利要求3或4所述的云端认证方法,其特征在于,所述用户的身份信息和所述属主信息优先从所述云端服务器缓存的数据中获取。
6.如权利要求4所述的云端认证方法,其特征在于,还包括: 认证完成后,将认证结果储存到所述云端服务器缓存的认证记录中。
7.—种云端认证系统,其特征在于,包括:客户端和云端服务器,其中, 客户端,用于向所述云端服务器发送请求消息,其中,所述请求消息包括认证凭据和被请求的云资源的云资源信息; 云端服务器,用于根据所述认证凭据查询所述云端服务器缓存的认证记录以获得第一查询结果,并根据所述云资源信息在所述第一查询结果中进一步查询所述认证记录,并在所述第一查询结果中查询到与所述请求消息匹配的认证记录时,根据所述认证记录中记录的认证结果对所述请求消息进行认证,其中,所述认证记录包括主键值、副键值和认证结果,所述主键值与云资源信息,所述副键值与认证凭据相关。
8.如权利要求7所述的云端认证系统,其特征在于,所述云端服务器还用于对所述云资源的访问权限信息进行监控,以及当所述云资源的访问权限信息变化时,根据所述云资源的云资源信息删除对应的认证记录。
9.如权利要求8所述的云端认证系统,其特征在于,所述云端服务器还用于对所述云资源的访问权限信息进行监控,以及当所述云资源的访问权限信息变化时,根据所述云资源的云资源信息删除对应的认证记录。
10.如权利要求8或9所述的云端认证系统,其特征在于,所述云端服务器还用于根据所述认证凭据获得认证凭据所属用户的身份信息,以及根据所述身份信息对所述请求消息进行身份认证。
11.如权利要求8或9所述的云端认证系统,其特征在于,所述云端服务器还用于根据所述云资源信息获得所述云资源的属主信息,以及根据所述属主信息对所述请求消息进行资源权限认证。
12.如权利要求11所述的云端认证系统,其特征在于,所述用户的身份信息和所述属主信息优先从所述云端服务器缓存的数据中获取。
13.—种云端服务器,其特征在于,包括: 用户交互模块,用于接收客户端发送的请求消息,其中,所述请求消息包括认证凭据和被请求的云资源的云资源信息; 存储模块,用于存储认证记录,其中,所述认证记录包括主键值、副键值和认证结果,所述主键值与云资源信息,所述副键值与认证凭据相关; 查询模块,用于根据所述认证凭据查询所述云端服务器缓存的认证记录以获得第一查询结果,并根据所述云资源信息在所述第一查询结果中进一步查询所述认证记录,并判断是否在所述第一查询 结果中查询到与所述请求消息匹配的认证记录;以及 认证模块,用于在所述第一查询结果中查询到与所述请求消息匹配的认证记录时,根据所述认证记录中记录的认证结果对所述请求消息进行认证。
14.如权利要求13所述的云端服务器,其特征在于,还包括: 监控模块,用于对所述云资源的访问权限信息进行监控,并且当所述云资源的访问权限信息变化时,所述存储模块根据所述云资源的云资源信息删除对应的认证记录。
15.如权利要求13所述的云端服务器,其特征在于,所述认证模块还用于根据所述认证凭据获得认证凭据所属用户的身份信息,并根据所述身份信息对所述请求消息进行身份认证。
16.如权利要求15所述的云端服务器,其特征在于,所述认证模块还用于根据所述云资源信息获得所述云资源的属主信息,并根据所述属主信息对所述请求消息进行资源权限认证。
17.如权利要求16所述的云端服务器,其特征在于,所述用户的身份信息和所述属主信息优先从所述云端服务器缓存的数据中获取。
全文摘要
本发明提出了一种云端认证方法,包括以下步骤云端服务器接收客户端发送的请求消息,其中,请求消息包括认证凭据和被请求的云资源的云资源信息;云端服务器根据认证凭据查询所述云端服务器缓存的认证记录以获得第一查询结果;云端服务器根据云资源信息在第一查询结果中进一步查询认证记录;如果在第一查询结果中查询到与请求消息匹配的认证记录,则云端服务器根据认证记录中记录的认证结果对请求消息进行认证。本发明还提出了一种云端认证系统及云端服务器。本发明通过云端服务器缓存认证结果,批量接收用户的请求信息并查询,减少了数据访问,提高了缓存的访问效率,显著地缩短了每次认证的认证时间。
文档编号H04L29/08GK103107985SQ201210515050
公开日2013年5月15日 申请日期2012年12月4日 优先权日2012年12月4日
发明者杨晨 申请人:百度在线网络技术(北京)有限公司