安全认证机制的系统及其安全认证的方法

文档序号:7863666阅读:241来源:国知局
专利名称:安全认证机制的系统及其安全认证的方法
技术领域
本发明涉及网络通信与安全认证,尤其涉及一种安全认证机制的系统及其安全认证的方法。
背景技术
随着网络技术的飞速发展,基于互联网的分布式软件系统越来越普及,以前基于互联网的分布式软件系统,成本高昂,需要高速网络的支撑,甚至需要专线或者VPN设备才能运行。随着网络速度越来越快,成本越来越低,高速并且稳定的带宽成为分布式应用的基础,越来越多的系统转而采用分布式架构。分布式软件系统的技术发展可以分为三个重要的阶段,第一个阶段是以DCOM技术和Java RMI为代表的分布式应用;第二阶段是以WebService为代表的SOA分布式架构;第三阶段是REST (Representational State Transfer,表述性状态转移)服务模式,REST服务作为一种新的架构模式,正越来越流行,越来越多的系统正在使用REST构建其后台服务或者正升级到REST服务。REST架构模式是最近几年才流行开的一种分布式软件的实现技术,它是在SOA基础发展而来,借鉴SOA的优点,克服SOA的缺点。REST架构是一次技术上的返璞归真,是一种简化、再简化的技术思想。REST架构强调网络上的每个资源都应该有一个唯一的标识,资源的状态修改使用标准的方法,Request和Response自描述,服务不应该有状态等几点约束。REST服务使用HTTP协议,数据使用JSON或者XML格式。REST不是一种新的技术,而类似一种规范。由于REST服务的这些特性,所以REST最适合的应用场景是需要对外暴露服务的时候,可以充分利用REST的自描述、无状态、唯一标识等特性来提供清晰、友好的API。然而,REST架构没有完整的规范,实现不统一,且无安全认证。

发明内容
有鉴于此,有必要提供一种安全认证机制的系统及其安全认证的方法。本发明提供的安全认证机制的系统,包括服务装置,用于接收用户登录信息,并发送所述用户登录信息;应用服务器,包括通信模块,用于接收所述用户登录信息;判断模块,用于判断所述服务装置是否在白名单中,且在所述服务装置在所述白名单中时验证所述用户登录信息是否有效;以及令牌发放模块,用于在所述判断模块验证所述用户登录信息有效时发送REST (Representational State Transfer,表述性状态转移)服务访问令牌至服务装置,其中,服务装置还用于接收REST服务访问令牌后发送REST请求。本发明提供的安全认证的方法,用于服务装置与应用服务器之间进行认证,包括所述服务装置接收用户登录信息,并将所述用户登录信息发送到所述应用服务器。所述应用服务器接收来自所述服务装置的所述用户登录信息;所述应用服务器判断所述服务装置是否在白名单中;若是,则所述应用服务器验证所述用户登录信息是否有效;以及若所述用户登录信息有效,则所述应用服务器发放REST服务访问令牌至服务装置,以及服务装置接收到REST服务访问令牌后发送REST请求。本发明实施方式中的安全认证机制的系统及其安全认证的方法通过验证所述用户登录信息的有效性以及服务装置是否在白名单中来确定是否发放REST服务访问令牌,有效的提高了 REST架构的安全性。


图I为本发明一实施方式中REST系统架构图;图2为本发明一实施方式中安全认证机制的系统的模块图;图3为本发明一实施方式中安全认证方法的流程图;图4为本发明一实施方式中应用服务器中REST服务验证方法的流程图。·
具体实施例方式下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。在本发明的描述中,术语“内”、“外”、“纵向”、“横向”、“上”、“下”、“顶”、“底”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明而不是要求本发明必须以特定的方位构造和操作,因此不能理解为对本发明的限制。请参阅图1,图I所示为本发明一实施方式中REST系统架构图。在本实施方式中,为了适应全球化的部署战略服务必须能从全球任何的地方访问;为了支持高并发量的用户,服务必须支持集群和负载均衡技术,为了支持跨服务器,跨地域的调用,服务最好是无状态的。因此,用户通过网络连接到前端的服务装置10,服务装置10调用后台的应用服务器20,其中所有的业务逻辑由应用服务器20承载,以REST服务方式对外公布。在本实施方式中,服务装置10分别部署在全球各个区域,应用服务器20集中部署在数据中心。在本实施方式中,应用服务器20负责业务逻辑的处理,访问用户数据库和文档,应用服务器20使用集群方式部署,Web服务10通过网络请求应用服务器20。在本实施方式中,应用服务器20限定访问REST服务的IP,只有指定列表(白名单)中的IP可以连接到应用服务器,其他的IP地址的服务装置10的请求一律忽略。 在本发明实施方式中,服务装置10为WEB服务器。在本发明其他实施方式中,月艮务装置10可以为客户端等。请参阅图2,所示为本发明一实施方式中安全认证机制的系统的模块图。在本实施方式中,安全认证机制的系统包括服务装置10以及应用服务器20。在本实施方式中,服务装置10用于接收用户登录信息,并发送所述用户登录信息。在本实施方式中,用户请求服务装置10登录页面,服务装置10返回给用户一客户ID,用于标识用户的唯一性,同时产生一个随机的键值(key)返给用户,用户输入自己的用户登录信息,并提交到服务装置10。在本实施方式中,所述用户登录信息包括账户、密码以及标识符。
应用服务器20包括通信模块210、判断模块220、令牌发放模块230以及存储模块 240。在本实施方式中,通信模块210用于接收服务装置10发送的所述用户登录信息。判断模块220用于判断所述服务装置10是否在白名单中,且在所述服务装置10在所述白名单中时验证所述用户登录信息是否有效。在本实施方式中,所述白名单存储在所述应用服务器20的存储模块240中,为IP列表或网段列表。在本发明其他实施方式中,所述白名单亦可以存储在用于存储文 件的文件服务器中。令牌发放模块230用于在所述判断模块220验证所述用户登录信息有效时发送REST (Representational State Transfer,表述性状态转移)服务访问令牌。在本实施方式中,所述服务装置10还用于接收所述REST服务访问令牌后发送REST请求,所述通信模块210还用于接收来自所述服务装置10的REST请求,所述判断模块220判断所述服务装置10是否在白名单中,所述通信模块210还用于在所述WEB服务10是白名单中时获取所述REST服务访问令牌,所述判断模块220还用验证所述REST服务访问令牌是否有效,通信模块210还用于在所述REST服务访问令牌有效时返回请求数据至服务装置10。在本实施方式中,所述REST服务访问令牌包括用户标识、到期时间以及加密的验证码。在本实施方式中,所述判断模块220通过加密算法验证所述REST服务访问令牌是否有效。在本实施方式中,所述判断模块220通过判断所述服务装置10的IP地址来确定所述服务装置10是否在白名单中。请参阅图3,图3所示为本发明一实施方式中安全认证方法的流程图。在本实施方式中,安全认证的方法用于服务装置10与应用服务器20之间进行认证,包括在步骤S100,所述服务装置10接收用户登录信息,并将所述用户登录信息发送到所述应用服务器20。在本实施方式中,所述用户登录信息包括账户、密码以及标识符。在步骤S102,所述应用服务器20接收来自所述服务装置10的所述用户登录信息。在步骤S104,所述应用服务器20判断所述服务装置10是否在白名单中。在本实施方式中,所述白名单存储在所述应用服务器20中,为IP列表或网段列表。在本实施方式中,所述应用服务器20通过判断所述服务装置10的IP地址来确定所述服务装置10是否在白名单中。若是,则在步骤S106,所述应用服务器20验证所述用户登录信息是否有效。若所述用户登录信息有效,则在步骤S108,所述应用服务器20发放REST服务访问令牌至服务装置10。在本实施方式中,所述REST服务访问令牌包括用户标识、到期时间以及加密的验证码。在步骤SI 10,所述服务装置10接收REST服务访问令牌,并发送REST请求。请参阅图4,所示为本发明一实施方式中应用服务器中REST服务验证方法的流程图在步骤S200,所述应用服务器20接收来自所述服务装置10的REST请求。在步骤S204,所述应用服务器20判断所述服务装置10是否在白名单中。在本实施方式中,所述白名单存储在所述应用服务器20中,为IP列表或网段列表。在本实施方式中,所述应用服务器20通过判断所述服务装置10的IP地址来确定所述服务装置10是否在白名单中。若是,则在步骤S206,所述应用服务器20获取服务装置10所发送的所述REST服务访问令牌。在步骤S208,所述应用服务器20验证所述REST服务访问令牌是否有效;若所述REST服务访问令牌有效,则在步骤S210,所述应用服务器20返回请求数 据。在本实施方式中,所述应用服务器20通过加密算法验证所述REST服务访问令牌是否有效。本发明实施方式中的安全认证机制的系统及其安全认证的方法通过验证所述用户登录信息的有效性以及服务装置10是否在白名单中来确定是否发放REST服务访问令牌,在用户发送REST请求来请求应用服务器20上的数据时,验证服务装置10是否在白名单以及REST服务访问令牌是否有效来确定是否返回请求数据,在有效的提高了 REST架构的安全性。虽然本发明参照当前的较佳实施方式进行了描述,但本领域的技术人员应能理解,上述较佳实施方式仅用来说明本发明,并非用来限定本发明的保护范围,任何在本发明的精神和原则范围之内,所做的任何修饰、等效替换、改进等,均应包含在本发明的权利保护范围之内。
权利要求
1.一种安全认证机制的系统,包括 服务装置,用于接收用户登录信息,并发送所述用户登录信息; 应用服务器,包括 通信模块,用于接收所述用户登录信息; 判断模块,用于判断所述服务装置是否在白名单中,且所述服务装置在所述白名单时,验证所述用户登录信息是否有效;以及 令牌发放模块,用于在所述判断模块验证所述用户登录信息有效时发送REST服务访问令牌至服务装置,其中,所述服务装置还用于接收所述REST服务访问令牌后发送REST请求。
2.如权利要求I所述的安全认证机制的系统,其特征在于,其中所述通信模块还用于接收来自所述服务装置的REST请求,所述判断模块判断所述服务装置是否在白名单中;所述通信模块还用于在所述WEB服务是白名单中时获取所述REST服务访问令牌,所述判断模块还用验证所述REST服务访问令牌是否有效;通信模块还用于在所述REST服务访问令牌有效时返回请求数据。
3.如权利要求I所述的安全认证机制的系统,其特征在于,所述用户登录信息包括账户、密码以及标识符。
4.如权利要求I或2所述的安全认证机制的系统,其特征在于,还包括存储模块,用于存储所述白名单,其中,所述白名单为IP列表或网段列表。
5.如权利要求4所述的安全认证机制的系统,其特征在于,所述REST服务访问令牌包括用户标识、到期时间以及加密的验证码。
6.如权利要求5所述的安全认证机制的系统,其特征在于,所述判断模块通过加密算法验证所述REST服务访问令牌是否有效。
7.一种安全认证的方法,用于服务装置与应用服务器之间进行认证,包括 所述服务装置接收用户登录信息,并将所述用户登录信息发送到所述应用服务器; 所述应用服务器接收来自所述服务装置的所述用户登录信息; 所述应用服务器判断所述服务装置是否在白名单中; 若是,则所述应用服务器验证所述用户登录信息是否有效;以及若所述用户登录信息有效,则所述应用服务器发放REST服务访问令牌至所述服务装置;以及 所述服务装置接收到所述REST服务访问令牌后发送REST请求。
8.如权利要求7所述的安全认证的方法,其特征在于,还包括 所述应用服务器接收来自所述服务装置的REST请求; 所述应用服务器判断所述服务装置是否在白名单中; 若是,则所述应用服务器获取所述REST服务访问令牌,并验证所述REST服务访问令牌是否有效; 若所述REST服务访问令牌有效,则所述应用服务器返回请求数据。
9.如权利要求7所述的安全认证的方法,其特征在于,所述用户登录信息包括账户、密码以及标识符。
10.如权利要求7或8所述的安全认证的方法,所述白名单存储在所述应用服务器中,为IP列表或网段列表。
11.如权利要求10所述的安全认证的方法,所述REST服务访问令牌包括用户标识、到期时间以及加密的验证码。
12.如权利要求11所述的安全认证的方法,所述应用服务器通过加密算法验证所述REST服务访问令牌是否有效。
全文摘要
一种安全认证机制的系统,包括服务装置,用于接收用户登录信息,并发送所述用户登录信息;应用服务器,包括通信模块、判断模块以及令牌发放模块,其中,通信模块接收所述用户登录信息;判断模块判断服务装置是否在白名单中,且服务装置在白名单中时验证用户登录信息是否有效;以及令牌发放模块在判断模块验证用户登录信息有效时发送REST(Representational State Transfer,表述性状态转移)服务访问令牌服务装置,其中,服务装置还用于接收REST服务访问令牌后发送REST请求。本发明中的安全认证机制的系统实现简单,具有非常高的效率与安全性。
文档编号H04L29/06GK102904895SQ201210407858
公开日2013年1月30日 申请日期2012年10月23日 优先权日2012年10月23日
发明者郭天良, 何洋 申请人:深圳市汇智集信息科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1