CN105141418A - 认证鉴权方法及系统 - Google Patents
认证鉴权方法及系统 Download PDFInfo
- Publication number
- CN105141418A CN105141418A CN201410226126.0A CN201410226126A CN105141418A CN 105141418 A CN105141418 A CN 105141418A CN 201410226126 A CN201410226126 A CN 201410226126A CN 105141418 A CN105141418 A CN 105141418A
- Authority
- CN
- China
- Prior art keywords
- authentication
- node
- authorization
- backup
- information
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 230000004044 response Effects 0.000 claims abstract description 9
- 238000013475 authorization Methods 0.000 claims description 132
- 239000000284 extract Substances 0.000 claims description 8
- 238000007726 management method Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 235000008694 Humulus lupulus Nutrition 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Landscapes
- Storage Device Security (AREA)
Abstract
本发明实施例公开了一种认证鉴权方法及系统,为认证鉴权中心设置一个以上的认证鉴权节点,一个以上的认证鉴权节点与所述认证鉴权中心连接;所述方法包括:认证鉴权中心接收到针对用户的认证鉴权请求后,从一个以上的认证鉴权节点中确定一个认证鉴权节点;将认证鉴权请求向所确定的认证鉴权节点发送,使所确定的认证鉴权节点对用户进行认证鉴权且向认证鉴权请求方发送认证鉴权响应。本发明实施例提高了认证鉴权的稳定性。
Description
技术领域
本发明涉及认证技术,尤其涉及一种基于分布式的认证鉴权方法及系统。
背景技术
用户使用云计算服务时,云平台需要对用户提供的认证信息进行验证,判断该用户是否为合法用户;用户进行资源操作时,云平台还需要对用户进行鉴权,判断该用户是否具备执行该操作的权限。通常,通过云平台中的认证鉴权模块来实现权限认证。
认证鉴权模块将用户的认证信息和鉴权信息事先存储在数据库中。当用户登录云平台或通过应用程序接口(API,ApplicationProgrammingInterface)调用云平台服务接口时,认证鉴权模块将用户提供的认证信息、以及此次操作行为与数据库中的认证信息和鉴权信息进行对比分析,若认证信息不相符,则直接认为该用户为非法用户;若认证信息相符、鉴权信息不符,则认为该用户为合法用户但无操作权限;若都相符,则认为该用户为合法用户,且具备本次操作权限。
现有方案中,认证与鉴权依赖于云平台中的认证鉴权模块及用于保存核心数据的数据库,具有以下缺点:认证鉴权模块集中化实现,可靠性差;基于关系数据库实现,扩展性差。
发明内容
为解决上述技术问题,本发明实施例提供一种认证鉴权方法及系统,以分布式方式设置认证鉴权节点,以提高认证鉴权的稳定性。
本发明实施例的技术方案是这样实现的:
一种认证鉴权方法,为认证鉴权中心设置一个以上的认证鉴权节点,所述一个以上的认证鉴权节点与所述认证鉴权中心连接;所述方法包括:
所述认证鉴权中心接收到针对用户的认证鉴权请求后,从所述一个以上的认证鉴权节点中确定一个认证鉴权节点;
将所述认证鉴权请求向所确定的认证鉴权节点发送,使所确定的认证鉴权节点对所述用户进行认证鉴权且向认证鉴权请求方发送认证鉴权响应。
优选地,所述方法还包括:
所述认证鉴权中心中存储有认证鉴权节点表,每一认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点;所述认证鉴权节点表中包括以下信息的至少一种:认证鉴权节点标识、认证鉴权节点的备份认证鉴权节点标识、认证鉴权节点的地址信息、以及认证鉴权节点与备份认证鉴权节点之间的关联关系;
所述认证鉴权中心确定有新的认证鉴权节点加入时,为所述新的认证鉴权节点设置备份认证鉴权节点,或者,为所述新的认证鉴权节点设置备份认证鉴权节点,并将所述新的认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点;
所述认证鉴权中心确定认证鉴权节点不可用时,删除与该不可用的认证鉴权节点相关的所有关联关系;并在确定存在未设置备份认证鉴权节点的认证鉴权节点时,为该未设置备份认证鉴权节点的认证鉴权节点设置至少一个备份认证鉴权节点。
优选地,所述每一认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点,包括:
假设有N个认证鉴权节点,将认证鉴权节点从编号从1至N依次排序,则按下述方式设置认证鉴权节点与其备份认证鉴权节点的关联关系:
将第N个认证鉴权节点作为第N-1个认证鉴权节点的备份认证鉴权节点,将第一个认证鉴权节点作为第N个认证鉴权节点的备份认证鉴权节点,N为大于1的整数;
对应地,所述认证鉴权中心确定有新的第N+1个认证鉴权节点加入时,将所述第N+1个认证鉴权节点作为第N个认证鉴权节点的备份认证鉴权节点,第一个认证鉴权节点作为所述第N+1个认证鉴权节点的备份认证鉴权节点;
所述认证鉴权中心确定第P个认证鉴权节点不可用时,将第P+1个认证鉴权节点作为第P-1个认证鉴权节点的备份认证鉴权节点,其中,P为小于N的正整数。
优选地,所述备份认证鉴权节点中存储有主认证鉴权节点的备份数据。
优选地,所述从所述一个以上的认证鉴权节点中确定一个认证鉴权节点,包括:
从所述一个以上的认证鉴权节点中确定认证鉴权的用户最少的认证鉴权节点作为所确定的认证鉴权节点;或者,
从所述一个以上的认证鉴权节点中确定与当前待认证鉴权用户的路由认证鉴权节点最少的认证鉴权节点作为所确定的认证鉴权节点。
优选地,所述方法还包括:
所述认证鉴权中心接收到用户的认证鉴权注册信息后,分别提取所述注册信息中的认证信息和鉴权信息,并将用户的认证信息和鉴权信息分别存储于所述一个以上的认证鉴权节点中,其中,以用户标识关联该用户的认证信息和鉴权信息;由所述认证鉴权中心对所述认证信息和鉴权信息进行加密,并向所述一个以上的认证鉴权节点通知加密密钥;
所述认证鉴权中心接收到用户更新的认证鉴权注册信息后,分别提取所述更新的注册信息中的认证信息和鉴权信息,并将用户更新的认证信息和鉴权信息分别替代存储于所述一个以上的认证鉴权节点中的认证信息和鉴权信息。
一种认证鉴权系统,包括认证鉴权中心和为所述认证鉴权中心设置一个以上的认证鉴权节点,所述一个以上的认证鉴权节点与所述认证鉴权中心连接;其中:
所述认证鉴权中心,用于在接收到针对用户的认证鉴权请求后,从所述一个以上的认证鉴权节点中确定一个认证鉴权节点;将所述认证鉴权请求向所确定的认证鉴权节点发送;
认证鉴权节点,用于接收到所述认证鉴权中心发送的认证鉴权请求后,对所述用户进行认证鉴权且向认证鉴权请求方发送认证鉴权响应。
优选地,所述认证鉴权中心中存储有认证鉴权节点表,每一认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点;所述认证鉴权节点表中包括以下信息的至少一种:认证鉴权节点标识、认证鉴权节点的备份认证鉴权节点标识、认证鉴权节点的地址信息、以及认证鉴权节点与备份认证鉴权节点之间的关联关系;
所述认证鉴权中心,还用于在确定有新的认证鉴权节点加入时,为所述新的认证鉴权节点设置备份认证鉴权节点,或者,为所述新的认证鉴权节点设置备份认证鉴权节点,并将所述新的认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点;
以及,确定认证鉴权节点不可用时,删除与该不可用的认证鉴权节点相关的所有关联关系;并在确定存在未设置备份认证鉴权节点的认证鉴权节点时,为该未设置备份认证鉴权节点的认证鉴权节点设置至少一个备份认证鉴权节点。
优选地,所述每一认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点,包括:
假设有N个认证鉴权节点,将认证鉴权节点从编号从1至N依次排序,则按下述方式设置认证鉴权节点与其备份认证鉴权节点的关联关系:
将第N个认证鉴权节点作为第N-1个认证鉴权节点的备份认证鉴权节点,将第一个认证鉴权节点作为第N个认证鉴权节点的备份认证鉴权节点,N为大于1的整数;
对应地,所述认证鉴权中心确定有新的第N+1个认证鉴权节点加入时,将所述第N+1个认证鉴权节点作为第N个认证鉴权节点的备份认证鉴权节点,第一个认证鉴权节点作为所述第N+1个认证鉴权节点的备份认证鉴权节点;
所述认证鉴权中心确定第P个认证鉴权节点不可用时,将第P+1个认证鉴权节点作为第P-1个认证鉴权节点的备份认证鉴权节点,其中,P为小于N的正整数。
优选地,所述备份认证鉴权节点中存储有主认证鉴权节点的备份数据。
优选地,所述认证鉴权中心还用于:
从所述一个以上的认证鉴权节点中确定认证鉴权的用户最少的认证鉴权节点作为所确定的认证鉴权节点;或者,
从所述一个以上的认证鉴权节点中确定与当前待认证鉴权用户的路由认证鉴权节点最少的认证鉴权节点作为所确定的认证鉴权节点。
优选地,所述认证鉴权中心,还用于在接收到用户的认证鉴权注册信息后,分别提取所述注册信息中的认证信息和鉴权信息,并将用户的认证信息和鉴权信息分别存储于所述一个以上的认证鉴权节点中,其中,以用户标识关联该用户的认证信息和鉴权信息;由所述认证鉴权中心对所述认证信息和鉴权信息进行加密,并向所述一个以上的认证鉴权节点通知加密密钥;
以及,在接收到用户更新的认证鉴权注册信息后,分别提取所述更新的注册信息中的认证信息和鉴权信息,并将用户更新的认证信息和鉴权信息分别替代存储于所述一个以上的认证鉴权节点中的认证信息和鉴权信息。
本发明实施例中,为认证鉴权中心设置一个以上的认证鉴权节点,所述一个以上的认证鉴权节点与所述认证鉴权中心连接;认证鉴权中心接收到针对用户的认证鉴权请求后,从一个以上的认证鉴权节点中确定一个认证鉴权节点,将认证鉴权请求向所确定的认证鉴权节点发送;使所确定的认证鉴权节点对所述用户进行认证鉴权,并由所确定的认证鉴权节点向认证鉴权请求方发送认证鉴权响应。
与现有技术相比,本发明实施例的技术方案至少有以下有益效果:
通过多认证鉴权节点并行处理,提高认证鉴权模块的处理性能及可扩展性;
以加密的文件形式存储用户的认证及鉴权信息,可提高并发处理能力,避免同时访问不同用户数据时的读写保护机制;
通过多认证鉴权节点数据备份机制,提高了数据可靠性。
附图说明
图1为本发明实施例的认证鉴权方法的流程图;
图2为本发明实施例的认证鉴权系统的结构示意图;
图3为本发明实施例的认证鉴权方法的一示例的流程图;
图4为本发明实施例的认证鉴权方法的另一示例的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下举实施例并参照附图,对本发明进一步详细说明。
图1为本发明实施例的认证鉴权方法的流程图,如图1所示,本发明实施例的认证鉴权方法包括以下步骤:
步骤101,为认证鉴权中心设置一个以上的认证鉴权节点,所述一个以上的认证鉴权节点与所述认证鉴权中心连接。
本发明实施例中,认证鉴权系统中包括至少一个认证鉴权中心,以及一个以上的认证鉴权节点。认证鉴权中心作为鉴权系统中的唯一认证接口,接收所有认证鉴权请求,并在接收到针对用户的认证鉴权请求后,在一个以上的认证鉴权节点中选择一个对用户进行认证鉴权。
步骤102,所述认证鉴权中心接收到针对用户的认证鉴权请求后,从所述一个以上的认证鉴权节点中确定一个认证鉴权节点;
具体地,在选择认证鉴权节点时,可以从所述一个以上的认证鉴权节点中确定认证鉴权的用户最少的认证鉴权节点作为所确定的认证鉴权节点;或者,
从所述一个以上的认证鉴权节点中确定与当前待认证鉴权用户的路由认证鉴权节点最少的认证鉴权节点作为所确定的认证鉴权节点。
当然,选择认证鉴权节点还可以有其他方式,本发明实施例并不作限定。
本发明实施例中,认证鉴权中心还对认证鉴权节点进行动态管理,具体地,认证鉴权中心中存储有认证鉴权节点表,每一认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点;所述认证鉴权节点表中包括以下信息的至少一种:认证鉴权节点标识、认证鉴权节点的备份认证鉴权节点标识、认证鉴权节点的地址信息、以及认证鉴权节点与备份认证鉴权节点之间的关联关系;
所述认证鉴权中心确定有新的认证鉴权节点加入时,为所述新的认证鉴权节点设置备份认证鉴权节点,或者,为所述新的认证鉴权节点设置备份认证鉴权节点,并将所述新的认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点;
所述认证鉴权中心确定认证鉴权节点不可用时,删除与该不可用的认证鉴权节点相关的所有关联关系;并在确定存在未设置备份认证鉴权节点的认证鉴权节点时,为该未设置备份认证鉴权节点的认证鉴权节点设置至少一个备份认证鉴权节点。
作为一种较佳的实现方式,本发明实施例中,认证鉴权中心以下述方式对认证鉴权节点进行动态管理:
假设有N个认证鉴权节点,将认证鉴权节点从编号从1至N依次排序,则按下述方式设置认证鉴权节点与其备份认证鉴权节点的关联关系:
将第N个认证鉴权节点作为第N-1个认证鉴权节点的备份认证鉴权节点,将第一个认证鉴权节点作为第N个认证鉴权节点的备份认证鉴权节点,N为大于1的整数;
对应地,所述认证鉴权中心确定有新的第N+1个认证鉴权节点加入时,将所述第N+1个认证鉴权节点作为第N个认证鉴权节点的备份认证鉴权节点,第一个认证鉴权节点作为所述第N+1个认证鉴权节点的备份认证鉴权节点;
所述认证鉴权中心确定第P个认证鉴权节点不可用时,将第P+1个认证鉴权节点作为第P-1个认证鉴权节点的备份认证鉴权节点,其中,P为小于N的正整数。
本发明实施例中,备份认证鉴权节点中存储有主认证鉴权节点的备份数据,以便在主认证鉴权节点宕机或出现故障时,由备份认证鉴权节点替代主认证鉴权节点完成当前子帧进行的认证鉴权。
本发明实施例中,认证鉴权中心还对用户的认证及鉴权信息进行维护,并在用户的认证鉴权信息更新后,将更新过的认证鉴权信息更新到各认证鉴权节点中。
认证鉴权中心接收到用户的认证鉴权注册信息后,分别提取所述注册信息中的认证信息和鉴权信息,并将用户的认证信息和鉴权信息分别存储于所述一个以上的认证鉴权节点中,其中,以用户标识关联该用户的认证信息和鉴权信息;由所述认证鉴权中心对所述认证信息和鉴权信息进行加密,并向所述一个以上的认证鉴权节点通知加密密钥;
所述认证鉴权中心接收到用户更新的认证鉴权注册信息后,分别提取所述更新的注册信息中的认证信息和鉴权信息,并将用户更新的认证信息和鉴权信息分别替代存储于所述一个以上的认证鉴权节点中的认证信息和鉴权信息。
本发明实施例中,通过将用户的认证信息和鉴权信息分别存储于各认证鉴权节点中,即使某一认证鉴权节点宕机或故障,也不会影响认证鉴权系统对用户认证鉴权的工作。
步骤103,将所述认证鉴权请求向所确定的认证鉴权节点发送,使所确定的认证鉴权节点对所述用户进行认证鉴权且向认证鉴权请求方发送认证鉴权响应。
认证鉴权节点在接收到所述认证鉴权中心发送的认证鉴权请求后,对所述用户进行认证鉴权,并向认证鉴权请求方发送认证鉴权响应。本发明实施例中,由认证鉴权节点在完成对用户的认证鉴权后,直接将认证鉴权的结果发送至认证鉴权的请求方。
以下通过具体示例,进一步阐明本发明技术方案的实质。
本发明实施例主要应用于云平台中的认证鉴权。即通过对认证鉴权系统进行重新设计,以分布式实现,以提高可靠性和认证鉴权的效率。
作为云平台的认证鉴权系统,需要具备以下能力:
用户通过门户使用云服务时
用户登录门户时,判断用户是否为合法用户;
用户登录门户后,执行某一操作,判断其是否具备操作权限;
用户通过API使用云服务时
在云平台接收到API调用后,认证鉴权系统判断该用户是否为合法用户;
判断当前的调用为API调用时,判断该待认证鉴权的用户是否具备使用该API的权限,API中的资源是否属于该用户的操作范围。
用户使用云主机时
对于linux主机,可使用公钥、私钥对登录云主机;
对于linux、windows主机,还可直接使用OS的用户名、密码登录云主机。
根据以上需求,建立认证鉴权模块的数据模型如下:
即为每一用户设置认证信息和鉴权信息(权限组信息)及资源实例组信息。
图2为本发明实施例的认证鉴权系统的结构示意图,如图2所示,本发明实施例的认证鉴权系统包括认证鉴权中心和为所述认证鉴权中心设置一个以上的认证鉴权节点,所述一个以上的认证鉴权节点与所述认证鉴权中心连接;其中:
所述认证鉴权中心,用于在接收到针对用户的认证鉴权请求后,从所述一个以上的认证鉴权节点中确定一个认证鉴权节点;将所述认证鉴权请求向所确定的认证鉴权节点发送;
认证鉴权节点,用于接收到所述认证鉴权中心发送的认证鉴权请求后,对所述用户进行认证鉴权且向认证鉴权请求方发送认证鉴权响应。
本发明实施例中,所述认证鉴权中心中存储有认证鉴权节点表,每一认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点;所述认证鉴权节点表中包括以下信息的至少一种:认证鉴权节点标识、认证鉴权节点的备份认证鉴权节点标识、认证鉴权节点的地址信息、以及认证鉴权节点与备份认证鉴权节点之间的关联关系;
所述认证鉴权中心,还用于在确定有新的认证鉴权节点加入时,为所述新的认证鉴权节点设置备份认证鉴权节点,或者,为所述新的认证鉴权节点设置备份认证鉴权节点,并将所述新的认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点;
以及,确定认证鉴权节点不可用时,删除与该不可用的认证鉴权节点相关的所有关联关系;并在确定存在未设置备份认证鉴权节点的认证鉴权节点时,为该未设置备份认证鉴权节点的认证鉴权节点设置至少一个备份认证鉴权节点。
作为一种优选实施例,认证鉴权中心以下述方式对认证鉴权节点进行动态管理:
假设有N个认证鉴权节点,将认证鉴权节点从编号从1至N依次排序,则按下述方式设置认证鉴权节点与其备份认证鉴权节点的关联关系:
将第N个认证鉴权节点作为第N-1个认证鉴权节点的备份认证鉴权节点,将第一个认证鉴权节点作为第N个认证鉴权节点的备份认证鉴权节点,N为大于1的整数;
对应地,所述认证鉴权中心确定有新的第N+1个认证鉴权节点加入时,将所述第N+1个认证鉴权节点作为第N个认证鉴权节点的备份认证鉴权节点,第一个认证鉴权节点作为所述第N+1个认证鉴权节点的备份认证鉴权节点;
所述认证鉴权中心确定第P个认证鉴权节点不可用时,将第P+1个认证鉴权节点作为第P-1个认证鉴权节点的备份认证鉴权节点,其中,P为小于N的正整数。
本发明实施例中,备份认证鉴权节点中存储有主认证鉴权节点的备份数据。这样,在主认证鉴权节点宕机或出现故障时,由备份认证鉴权节点替代主认证鉴权节点完成当前子帧进行的认证鉴权。
本发明实施例中,所述认证鉴权中心还用于:
从所述一个以上的认证鉴权节点中确定认证鉴权的用户最少的认证鉴权节点作为所确定的认证鉴权节点;或者,
从所述一个以上的认证鉴权节点中确定与当前待认证鉴权用户的路由认证鉴权节点最少的认证鉴权节点作为所确定的认证鉴权节点。
本发明实施例中,所述认证鉴权中心,还用于在接收到用户的认证鉴权注册信息后,分别提取所述注册信息中的认证信息和鉴权信息,并将用户的认证信息和鉴权信息分别存储于所述一个以上的认证鉴权节点中,其中,以用户标识关联该用户的认证信息和鉴权信息;由所述认证鉴权中心对所述认证信息和鉴权信息进行加密,并向所述一个以上的认证鉴权节点通知加密密钥;
以及,在接收到用户更新的认证鉴权注册信息后,分别提取所述更新的注册信息中的认证信息和鉴权信息,并将用户更新的认证信息和鉴权信息分别替代存储于所述一个以上的认证鉴权节点中的认证信息和鉴权信息。
认证鉴权中心具有至少以下功能:
a)请求分发
用于接收认证及鉴权请求,并根据用户标识将请求分发至合适的认证鉴权节点。分发功能的实现方式为:认证鉴权中心的请求分发模块保存一个分发表文件。新增用户时,在分发表为该用户增加一条记录,记录包括:用户ID、存储该用户认证及鉴权信息的服务器IP地址。选择服务器IP地址时,选取当前用户数最少的认证鉴权节点的IP。对API分发时查找该表中相应记录中的IP,并将API请求重定向至IP相应的认证鉴权节点中。当然,也可以选取认证鉴权节点到认证鉴权请求方路由跳数最少的认证鉴权节点,来对当前的认证鉴权请求进行认证。
该场景下,当认证鉴权中心收到请求后,先根据用户标识查找分发表,根据分发表即可定位到存储该用户数据的认证鉴权节点。
b)认证鉴权节点管理
用于对分布式系统中的认证鉴权节点进行管理,包括增删改查认证鉴权节点、认证鉴权节点间数据备份及同步管理等。
认证鉴权中心的认证鉴权节点管理模块中保存一张认证鉴权节点表,每条记录包括:认证鉴权节点标识、备份认证鉴权节点标识、替代认证鉴权节点标识、存储数据标识、认证鉴权节点IP。认证鉴权节点与备份认证鉴权节点形成了一张首尾相接的认证鉴权节点备份链表。
例如一共有四个认证鉴权节点A、B、C、D,假设认证鉴权节点A自身应存数据为A-data1,认证鉴权节点A要备份的数据为A-data2,A-data1=A-data2,认证鉴权节点表如表1所示:
表1
在上述场景下,当新增认证鉴权节点E时,将认证鉴权节点E加在认证鉴权节点表的最后,将认证鉴权节点E插入认证鉴权节点备份链表的最后。认证鉴权节点间数据同步操作为,认证鉴权节点D的备份数据位置指向认证鉴权节点E,数据复制至认证鉴权节点E。认证鉴权节点E的备份数据位置指向认证鉴权节点A,认证鉴权节点A不再保存认证鉴权节点D的备份数据。新增后的认证鉴权节点表如表2所示:
表2
在上述场景下,当认证鉴权节点B宕机时,数据恢复操作为,由认证鉴权节点C完全替代认证鉴权节点B。该场景下,认证鉴权节点A的备份数据复制到认证鉴权节点C,认证鉴权节点C中的B的备份数据成为主数据,认证鉴权节点B的备份数据复制到认证鉴权节点D。删除认证鉴权节点后的认证鉴权节点表如表3所示:
表3
本发明实施例中,认证鉴权模块可部署在不同的认证鉴权节点中,实现面向不同用户的认证鉴权处理。认证鉴权模块为每个用户分别创建三个文件。一个保存认证信息,以“用户标识-credential”命名。另一个保存权限信息,以“用户标识-permission”命名。另一个保存资源实例组信息,以“用户标识-source”命名。为保证用户认证及鉴权信息的安全性,上述三个文件采用加密压缩的方式进行保存。压缩方式可采用gzip等格式。
同一个认证鉴权节点中的认证鉴权模块中的文件加密压缩采用相同的密码,密码由认证鉴权分发模块统一管理和分发。
本发明实施例中,认证鉴权节点具有以下功能:
a)认证信息管理
用于根据相关请求,增删改查用户的认证信息,包括:登录门户的用户名及密码、访问云服务API的密钥、访问虚拟机的对称密钥。实现方式为根据用户标识,查找对应的“用户标识+credential”文件,对其中的信息进行修改。
b)鉴权信息管理
用于根据请求,增删改查用户的鉴权信息,包括:对权限组中的权限进行增删改查、对资源实例组中的资源进行增删改查。实现方式为根据用户标识,若修改权限,则查找对应的“用户标识+permission”文件,对其中的信息进行修改;若修改资源实例,则查找对应的“用户标识+source”文件。
c)认证及鉴权
用于根据认证鉴权请求,判断用户是否为合法用户,并进行鉴权。包括以下几部分:
用户登录门户时的认证请求:根据请求中携带的用户名及密码进行判断。流程如下:
API调用的认证及鉴权:根据请求中携带的用户标识、密钥ID、签名,判断用户是否合法,以及是否有权限。流程如下:
d)分布式数据同步:
用户的认证信息和鉴权信息进行改变时,进行数据的同步更新。每个认证鉴权模块中记录备份认证鉴权节点IP地址及数据同步方式。数据发生变化后,将更新后的用户文件更新至备份认证鉴权节点。
以下通过具体示例,进一步阐明本发明实施例中的认证鉴权流程。
图3为本发明实施例的认证鉴权方法的一示例的流程图,如图3所示,本示例实质上是认证的示例;本示例的认证鉴权方法包括以下步骤:
步骤301,用户通过云平台向认证鉴权中心发起门户登录认证请求。
步骤302,认证鉴权中心解析认证请求,通过该认证请求获取用户的标识信息。
认证鉴权中心针对当前的认证请求,在一个以上的认证鉴权节点中为用户选择一个认证鉴权节点。具体地,可以选择当前认证鉴权用户数量最少的认证鉴权节点,也可以选择到认证鉴权请求方路由跳数最少的认证鉴权节点。
步骤303,认证鉴权中心向某一认证鉴权节点发送重定向请求。
认证鉴权中心向所选取的认证鉴权节点发送重定向请求。
步骤304,认证鉴权节点接收到重定向请求后,根据用户标识在本地查找与用户标识对应的“用户标识+credential”文件,并对比用户名和密码,对用户进行认证,并将认证结果向认证请求方发送。
图4为本发明实施例的认证鉴权方法的另一示例的流程图,如图4所示,本示例实质上是鉴权的示例;本示例的认证鉴权方法包括以下步骤:
步骤401,用户通过云平台向认证鉴权中心发起API请求。
步骤402,认证鉴权中心解析API请求,通过该API请求获取用户的标识信息。
认证鉴权中心针对当前的认证鉴权请求,在一个以上的认证鉴权节点中为用户选择一个认证鉴权节点。具体地,可以选择当前认证鉴权用户数量最少的认证鉴权节点,也可以选择到认证鉴权请求方路由跳数最少的认证鉴权节点。
步骤403,认证鉴权中心向某一认证鉴权节点发送重定向请求。
认证鉴权中心向所选取的认证鉴权节点发送重定向请求。
步骤404,认证鉴权节点接收到重定向请求后,解析用户的ID、密钥ID、用户签名信息等。
步骤405,认证鉴权节点查找“用户标识+credential”文件以及定位密钥ID对应的密钥。
步骤406,认证鉴权节点使用用户密钥根据事先定义的签名生成方法重新生成新签名,对比用户签名和新签名,若一致则用户合法。
步骤407,若用户签名和新签名不一致,向认证鉴权方返回非法用户的鉴权结果。
步骤408,查找“用户标识+permission”文件,并对比API的接口消息是否在范围内,若在则有API权限。
步骤409,若不在,向认证鉴权方返回权限不足的鉴权结果。
步骤410,查找“用户标识+source”文件,并对比资源实例是否在范围内,若在则有资源操作权限,向认证鉴权方返回认证鉴权通过;若不在则向认证鉴权方返回权限不足的鉴权结果。
本发明实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。
在本发明所提供的几个实施例中,应该理解到,所揭露的方法、装置和电子设备,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加应用功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明实施例上述集成的单元如果以应用功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以应用产品的形式体现出来,该计算机应用产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明的保护范围并不局限于此,熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。
Claims (12)
1.一种认证鉴权方法,其特征在于,为认证鉴权中心设置一个以上的认证鉴权节点,所述一个以上的认证鉴权节点与所述认证鉴权中心连接;所述方法包括:
所述认证鉴权中心接收到针对用户的认证鉴权请求后,从所述一个以上的认证鉴权节点中确定一个认证鉴权节点;
将所述认证鉴权请求向所确定的认证鉴权节点发送,使所确定的认证鉴权节点对所述用户进行认证鉴权且向认证鉴权请求方发送认证鉴权响应。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述认证鉴权中心中存储有认证鉴权节点表,每一认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点;所述认证鉴权节点表中包括以下信息的至少一种:认证鉴权节点标识、认证鉴权节点的备份认证鉴权节点标识、认证鉴权节点的地址信息、以及认证鉴权节点与备份认证鉴权节点之间的关联关系;
所述认证鉴权中心确定有新的认证鉴权节点加入时,为所述新的认证鉴权节点设置备份认证鉴权节点,或者,为所述新的认证鉴权节点设置备份认证鉴权节点,并将所述新的认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点;
所述认证鉴权中心确定认证鉴权节点不可用时,删除与该不可用的认证鉴权节点相关的所有关联关系;并在确定存在未设置备份认证鉴权节点的认证鉴权节点时,为该未设置备份认证鉴权节点的认证鉴权节点设置至少一个备份认证鉴权节点。
3.根据权利要求2所述的方法,其特征在于,所述每一认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点,包括:
假设有N个认证鉴权节点,将认证鉴权节点从编号从1至N依次排序,则按下述方式设置认证鉴权节点与其备份认证鉴权节点的关联关系:
将第N个认证鉴权节点作为第N-1个认证鉴权节点的备份认证鉴权节点,将第一个认证鉴权节点作为第N个认证鉴权节点的备份认证鉴权节点,N为大于1的整数;
对应地,所述认证鉴权中心确定有新的第N+1个认证鉴权节点加入时,将所述第N+1个认证鉴权节点作为第N个认证鉴权节点的备份认证鉴权节点,第一个认证鉴权节点作为所述第N+1个认证鉴权节点的备份认证鉴权节点;
所述认证鉴权中心确定第P个认证鉴权节点不可用时,将第P+1个认证鉴权节点作为第P-1个认证鉴权节点的备份认证鉴权节点,其中,P为小于N的正整数。
4.根据权利要求2或3所述的方法,其特征在于,所述备份认证鉴权节点中存储有主认证鉴权节点的备份数据。
5.根据权利要求1所述的方法,其特征在于,所述从所述一个以上的认证鉴权节点中确定一个认证鉴权节点,包括:
从所述一个以上的认证鉴权节点中确定认证鉴权的用户最少的认证鉴权节点作为所确定的认证鉴权节点;或者,
从所述一个以上的认证鉴权节点中确定与当前待认证鉴权用户的路由认证鉴权节点最少的认证鉴权节点作为所确定的认证鉴权节点。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述认证鉴权中心接收到用户的认证鉴权注册信息后,分别提取所述注册信息中的认证信息和鉴权信息,并将用户的认证信息和鉴权信息分别存储于所述一个以上的认证鉴权节点中,其中,以用户标识关联该用户的认证信息和鉴权信息;由所述认证鉴权中心对所述认证信息和鉴权信息进行加密,并向所述一个以上的认证鉴权节点通知加密密钥;
所述认证鉴权中心接收到用户更新的认证鉴权注册信息后,分别提取所述更新的注册信息中的认证信息和鉴权信息,并将用户更新的认证信息和鉴权信息分别替代存储于所述一个以上的认证鉴权节点中的认证信息和鉴权信息。
7.一种认证鉴权系统,其特征在于,所述系统包括认证鉴权中心和为所述认证鉴权中心设置一个以上的认证鉴权节点,所述一个以上的认证鉴权节点与所述认证鉴权中心连接;其中:
所述认证鉴权中心,用于在接收到针对用户的认证鉴权请求后,从所述一个以上的认证鉴权节点中确定一个认证鉴权节点;将所述认证鉴权请求向所确定的认证鉴权节点发送;
认证鉴权节点,用于接收到所述认证鉴权中心发送的认证鉴权请求后,对所述用户进行认证鉴权且向认证鉴权请求方发送认证鉴权响应。
8.根据权利要求7所述的系统,其特征在于,所述认证鉴权中心中存储有认证鉴权节点表,每一认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点;所述认证鉴权节点表中包括以下信息的至少一种:认证鉴权节点标识、认证鉴权节点的备份认证鉴权节点标识、认证鉴权节点的地址信息、以及认证鉴权节点与备份认证鉴权节点之间的关联关系;
所述认证鉴权中心,还用于在确定有新的认证鉴权节点加入时,为所述新的认证鉴权节点设置备份认证鉴权节点,或者,为所述新的认证鉴权节点设置备份认证鉴权节点,并将所述新的认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点;
以及,确定认证鉴权节点不可用时,删除与该不可用的认证鉴权节点相关的所有关联关系;并在确定存在未设置备份认证鉴权节点的认证鉴权节点时,为该未设置备份认证鉴权节点的认证鉴权节点设置至少一个备份认证鉴权节点。
9.根据权利要求8所述的系统,其特征在于,所述每一认证鉴权节点作为至少一个其他的认证鉴权节点的备份认证鉴权节点,包括:
假设有N个认证鉴权节点,将认证鉴权节点从编号从1至N依次排序,则按下述方式设置认证鉴权节点与其备份认证鉴权节点的关联关系:
将第N个认证鉴权节点作为第N-1个认证鉴权节点的备份认证鉴权节点,将第一个认证鉴权节点作为第N个认证鉴权节点的备份认证鉴权节点,N为大于1的整数;
对应地,所述认证鉴权中心确定有新的第N+1个认证鉴权节点加入时,将所述第N+1个认证鉴权节点作为第N个认证鉴权节点的备份认证鉴权节点,第一个认证鉴权节点作为所述第N+1个认证鉴权节点的备份认证鉴权节点;
所述认证鉴权中心确定第P个认证鉴权节点不可用时,将第P+1个认证鉴权节点作为第P-1个认证鉴权节点的备份认证鉴权节点,其中,P为小于N的正整数。
10.根据权利要求8或9所述的系统,其特征在于,所述备份认证鉴权节点中存储有主认证鉴权节点的备份数据。
11.根据权利要求7所述的系统,其特征在于,所述认证鉴权中心还用于:
从所述一个以上的认证鉴权节点中确定认证鉴权的用户最少的认证鉴权节点作为所确定的认证鉴权节点;或者,
从所述一个以上的认证鉴权节点中确定与当前待认证鉴权用户的路由认证鉴权节点最少的认证鉴权节点作为所确定的认证鉴权节点。
12.根据权利要求7所述的系统,其特征在于,所述认证鉴权中心,还用于在接收到用户的认证鉴权注册信息后,分别提取所述注册信息中的认证信息和鉴权信息,并将用户的认证信息和鉴权信息分别存储于所述一个以上的认证鉴权节点中,其中,以用户标识关联该用户的认证信息和鉴权信息;由所述认证鉴权中心对所述认证信息和鉴权信息进行加密,并向所述一个以上的认证鉴权节点通知加密密钥;
以及,在接收到用户更新的认证鉴权注册信息后,分别提取所述更新的注册信息中的认证信息和鉴权信息,并将用户更新的认证信息和鉴权信息分别替代存储于所述一个以上的认证鉴权节点中的认证信息和鉴权信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410226126.0A CN105141418A (zh) | 2014-05-26 | 2014-05-26 | 认证鉴权方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410226126.0A CN105141418A (zh) | 2014-05-26 | 2014-05-26 | 认证鉴权方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105141418A true CN105141418A (zh) | 2015-12-09 |
Family
ID=54726638
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410226126.0A Pending CN105141418A (zh) | 2014-05-26 | 2014-05-26 | 认证鉴权方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105141418A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107196957A (zh) * | 2017-06-20 | 2017-09-22 | 北京明朝万达科技股份有限公司 | 一种分布式身份认证方法及系统 |
WO2018014881A1 (zh) * | 2016-07-22 | 2018-01-25 | 中兴通讯股份有限公司 | 交互式网络电视iptv平台的鉴权方法、装置及系统 |
CN112995164A (zh) * | 2021-02-10 | 2021-06-18 | 北京金山云网络技术有限公司 | 资源访问的鉴权方法及装置、存储介质、电子设备 |
CN113434830A (zh) * | 2020-03-23 | 2021-09-24 | 杭州海康威视数字技术股份有限公司 | 一种权限控制的方法及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101030859A (zh) * | 2007-02-06 | 2007-09-05 | 上海交通大学 | 一种分布式网络的认证方法和系统 |
CN101447842A (zh) * | 2008-09-27 | 2009-06-03 | 百视通网络电视技术发展有限责任公司 | 采用2级架构的分布式数字版权管理系统 |
CN101478405A (zh) * | 2009-02-02 | 2009-07-08 | 中国网络通信集团公司 | 认证授权方法、服务器及系统 |
CN101714996A (zh) * | 2009-12-31 | 2010-05-26 | 中兴通讯股份有限公司 | 基于对等计算网络的认证系统及方法 |
CN101902770A (zh) * | 2010-08-20 | 2010-12-01 | 中兴通讯股份有限公司 | 数字集群通信系统的调度子系统及其业务受理方法 |
CN102223248A (zh) * | 2011-06-09 | 2011-10-19 | 中国电信股份有限公司 | 呼叫业务处理方法与系统 |
CN102255747A (zh) * | 2011-06-09 | 2011-11-23 | 中国电信股份有限公司 | 呼叫业务处理方法与系统 |
CN102710419A (zh) * | 2011-12-21 | 2012-10-03 | 大唐软件技术股份有限公司 | 一种用户认证的方法及装置 |
CN103516734A (zh) * | 2012-06-20 | 2014-01-15 | 阿里巴巴集团控股有限公司 | 数据处理方法、设备和系统 |
-
2014
- 2014-05-26 CN CN201410226126.0A patent/CN105141418A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101030859A (zh) * | 2007-02-06 | 2007-09-05 | 上海交通大学 | 一种分布式网络的认证方法和系统 |
CN101447842A (zh) * | 2008-09-27 | 2009-06-03 | 百视通网络电视技术发展有限责任公司 | 采用2级架构的分布式数字版权管理系统 |
CN101478405A (zh) * | 2009-02-02 | 2009-07-08 | 中国网络通信集团公司 | 认证授权方法、服务器及系统 |
CN101714996A (zh) * | 2009-12-31 | 2010-05-26 | 中兴通讯股份有限公司 | 基于对等计算网络的认证系统及方法 |
CN101902770A (zh) * | 2010-08-20 | 2010-12-01 | 中兴通讯股份有限公司 | 数字集群通信系统的调度子系统及其业务受理方法 |
CN102223248A (zh) * | 2011-06-09 | 2011-10-19 | 中国电信股份有限公司 | 呼叫业务处理方法与系统 |
CN102255747A (zh) * | 2011-06-09 | 2011-11-23 | 中国电信股份有限公司 | 呼叫业务处理方法与系统 |
CN102710419A (zh) * | 2011-12-21 | 2012-10-03 | 大唐软件技术股份有限公司 | 一种用户认证的方法及装置 |
CN103516734A (zh) * | 2012-06-20 | 2014-01-15 | 阿里巴巴集团控股有限公司 | 数据处理方法、设备和系统 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018014881A1 (zh) * | 2016-07-22 | 2018-01-25 | 中兴通讯股份有限公司 | 交互式网络电视iptv平台的鉴权方法、装置及系统 |
CN107645658A (zh) * | 2016-07-22 | 2018-01-30 | 南京中兴新软件有限责任公司 | 交互式网络电视iptv平台的鉴权方法、装置及系统 |
CN107196957A (zh) * | 2017-06-20 | 2017-09-22 | 北京明朝万达科技股份有限公司 | 一种分布式身份认证方法及系统 |
CN113434830A (zh) * | 2020-03-23 | 2021-09-24 | 杭州海康威视数字技术股份有限公司 | 一种权限控制的方法及系统 |
CN113434830B (zh) * | 2020-03-23 | 2023-01-31 | 杭州海康威视数字技术股份有限公司 | 一种权限控制的方法及系统 |
CN112995164A (zh) * | 2021-02-10 | 2021-06-18 | 北京金山云网络技术有限公司 | 资源访问的鉴权方法及装置、存储介质、电子设备 |
CN112995164B (zh) * | 2021-02-10 | 2023-04-14 | 北京金山云网络技术有限公司 | 资源访问的鉴权方法及装置、存储介质、电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9961053B2 (en) | Detecting compromised credentials | |
CN107277049B (zh) | 一种应用系统的访问方法及装置 | |
CN113421097B (zh) | 一种数据处理方法、装置、计算机设备及存储介质 | |
EP3890266A1 (en) | Verification method, apparatus, and system used for network application access | |
US11121876B2 (en) | Distributed access control | |
CN106790156B (zh) | 一种智能设备绑定方法及装置 | |
US9576144B2 (en) | Secured file system management | |
CN103095847B (zh) | 一种云存储系统安全保障方法及其系统 | |
US20130054611A1 (en) | Apparatus and method for processing partitioned data for securing content | |
CN104320389B (zh) | 一种基于云计算的融合身份保护系统及方法 | |
CN108683668B (zh) | 内容分发网络中的资源校验方法、装置、存储介质及设备 | |
US10783277B2 (en) | Blockchain-type data storage | |
CN109347839B (zh) | 集中式密码管理方法、装置、电子设备及计算机存储介质 | |
US11256662B2 (en) | Distributed ledger system | |
US9514325B2 (en) | Secured file system management | |
CN107145531B (zh) | 分布式文件系统及分布式文件系统的用户管理方法 | |
US9930063B2 (en) | Random identifier generation for offline database | |
CN109726041B (zh) | 恢复虚拟机磁盘中的文件的方法、设备和计算机可读介质 | |
US11636221B2 (en) | Mechanism for multi-factor authentication based on data | |
CN112948842A (zh) | 一种鉴权方法及相关设备 | |
JP4875781B1 (ja) | データ分散保管システム | |
CN105141418A (zh) | 认证鉴权方法及系统 | |
CN107992340B (zh) | 用于分布式集群系统的系统退出方法及分布式集群系统 | |
CN112865981B (zh) | 一种令牌获取、验证方法及装置 | |
CN111817860B (zh) | 一种通信认证方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151209 |