判定接口是否被非法调用的方法技术

技术编号:15501400 阅读:41 留言:0更新日期:2017-06-03 22:47
本发明专利技术涉及互联网交互技术,公开了一种判定接口是否被非法调用的方法,防止接口被非法、恶意的调用。本发明专利技术包括:用户通过一个指定地root级别的访问节点进入系统,进入系统之后,用户调用任意一个接口都被后台记录成为一个用户访问节点,并记录在内存中;当用户调用某个接口时,系统将当前调用接口的访问节点以及该节点所有前置访问节点构成一个用户访问链;系统从内存中读取该接口的合法访问链,并将合法访问链与用户访问链比对,一旦比对成功认为该次调用合法,并提供接口资源。本发明专利技术适用于接口管理。

Method for determining whether an interface is illegally called

The invention relates to Internet interaction technology, and discloses a method for judging whether an interface is illegally called, which prevents an interface from being illegally or maliciously invoked. The present invention includes: the user enters the system through the access node of a specified root level, after entering the system, the user interface is called an arbitrary background records become a user access node, and recorded in the memory; when the user invokes an interface, the system will access the nodes of the current interface and the node all the pre access nodes constitute a user access system chain; read the interface from the memory of the legitimate access chain, and the chain compared with legitimate access to user access chain, once the success ratio considers that the call is legal, and provide the interface resources. The invention is suitable for interface management.

【技术实现步骤摘要】
判定接口是否被非法调用的方法
本专利技术涉及互联网交互技术,特别涉及判定接口是否被非法调用的方法。
技术介绍
接口的使用中包括两种类型:1.非开放式接口(即带有验证的接口,如:带验证码的登录接口/需要提供token验证的接口).2.开放式接口(如:发送验证码到手机).在非开放式接口的调用时,用户提交了自己的验证信息从而获得了系统的访问和调用权限,相对较为安全.在非开放式接口调用中由于不需要前置的用户信息,所以可以造成用户使用工具不限制的高频调用从而导致系统受到攻击。
技术实现思路
本专利技术要解决的技术问题是:提供一种判定接口是否被非法调用的方法,防止接口被非法、恶意的调用。为解决上述问题,本专利技术采用的技术方案是:判定接口是否被非法调用的方法,包括步骤:为每个接口设置其合法访问链,并保持在内存中;用户通过一个指定地root级别的访问节点进入系统,进入系统之后,用户调用任意一个接口都被后台记录成为一个用户访问节点,并记录在内存中;当用户调用某个接口时,系统将当前调用接口的访问节点以及该节点所有前置访问节点构成一个用户访问链;系统从内存中读取该接口的合法访问链,并将合法访问链与用户访问链比对,一旦比对成功认为该次调用合法,并提供接口资源。进一步的,在对合法访问链与用户访问链比对之前,还需对用户访问链使用优化算法进行优化。具体的,所述优化算法为索引合并算法。进一步的,所述内存为LRU内存,系统将内存中满足LRU置换条件的用户访问节点保存入数据库中。本专利技术的有益效果是:本专利技术通过使用前置访问控制以及合法访问链来判定用户是否在恶意的调用接口,从而可以有效防止接口资源被非法占用。附图说明图1是系统结构示意图。具体实施方式为了使本专利技术的目的、技术方案和优点更加清楚,以下对本专利技术实施步骤进行了进一步的详细说明。本专利技术使用前置访问控制和合法访问链来判定用户是否在恶意的调用接口。1、前置访问控制的含义是,我们可以设想比如发送验证码到手机这个接口(下文中使用”获取验证码接口”来表述这个概念),不需要用户的信息也不可能获取用户的信息(比如注册流程中,先发送验证码再请求注册,任何人任何工具都可以调用这个接口完成发送验证码的功能).这时注册接口由于有发送验证码这个接口作为前置接口且提供了验证码这样一个控制字段就能够有效的避免被恶意注册,而获取验证码接口由于没有前置访问接口所以无法避免恶意请求发送验证码.并且这种恶意访问在一定的技术手段下难以被限制,比如高频更换请求源的工具(如,调用一次就更换请求ip以及手机号码).2、合法访问链的设定。我们可以设想一个接口调用流程.我们以一个网站的注册流程为例,其访问顺序是:Index页面(引导页或主页)->注册页面->调用请求验证码接口->使用验证码调用注册接口.在这个顺序中我们可以看到,在调用请求验证码接口以前至少有2个前置访问控制单元(访问Index页面,访问注册页面),但是我们不能简单的认为用户的操作就是这样的单一结构,比如用户操作也可以是下面类似的顺序:Index页面(引导页或主页)->部分内容页面->help页面->注册页面->调用请求验证码接口->使用验证码调用注册接口,在这样的顺序中,其中的合法访问链是:Index页面(引导页或主页)->(other)->注册页面->调用请求验证码接口,即以Index页面(引导页或主页)访问开始,以注册页面->调用请求验证码接口这样两个连续不间断操作构成了一个完整的合法访问链.能够构成这样一个合法访问的前提是每一次的用户接口请求都被记录在了服务器端形成一个用户访问链(用户足迹)3、实施例的描述具体思路如下:1)为每个接口设置其合法访问链,并保持在内存中。2)系统必须有一个统一入口作为合法访问链的root链节点。用户通过该root级别的访问节点进入系统,进入系统之后,用户调用任意一个接口都被后台记录成为一个用户访问节点,并记录在内存中。其中,内存为LRU内存,LRU内存在运行时会将内存中满足LRU置换条件的用户访问节点保存入数据库中,可作为后续用户行为分析的数据源。3)当用户调用某个接口时,系统获取该节点所有的前置访问节点,并将当前调用接口的访问节点以及该节点所有前置访问节点构成一个用户访问链(用户足迹),同时使用索引合并算法合并相同的用户足迹点(用户访问链节点)优化内存存储。由于用户的操作可能有很多的重复操作,这些重复的部分我们其实只需要用户的操作频率/次数记录而不需要其具体的操作。4)系统从内存中读取该接口的合法访问链,并将合法访问链与用户访问链比对,一旦比对成功认为该次调用合法,并提供接口资源,用户即可调用该接口的资源。实施例下面以某次接口调用过程为例,进行具体说明。A.用户发起接口调用;B.系统将当前接口调用记录访问节点;C.将本次访问节点存入LRU内存,从而更新或者创建LRU内存中的用户访问节点;与此同时,系统获取访问节点的所有前置访问节点,并将当前调用接口的访问节点以及该节点所有前置访问节点构成一个用户访问链;D.系统从内存中读取该接口的合法访问链,并将合法访问链与用户访问链比对,一旦比对成功认为该次调用合法,并提供接口资源,如果认为是非法,则做异常处理。以上描述了本专利技术的基本原理和主要的特征,说明书的描述只是说明本专利技术的原理,在不脱离本专利技术精神和范围的前提下,本专利技术还会有各种变化和改进,这些变化和改进都落入要求保护的本专利技术范围内。本文档来自技高网...
判定接口是否被非法调用的方法

【技术保护点】
判定接口是否被非法调用的方法,其特征在于,包括步骤:为每个接口设置其合法访问链,并保持在内存中;用户通过一个指定地root级别的访问节点进入系统,进入系统之后,用户调用任意一个接口都被后台记录成为一个用户访问节点,并记录在内存中;当用户调用某个接口时,系统将当前调用接口的访问节点以及该节点所有前置访问节点构成一个用户访问链;系统从内存中读取该接口的合法访问链,并将合法访问链与用户访问链比对,一旦比对成功认为该次调用合法,并提供接口资源。

【技术特征摘要】
1.判定接口是否被非法调用的方法,其特征在于,包括步骤:为每个接口设置其合法访问链,并保持在内存中;用户通过一个指定地root级别的访问节点进入系统,进入系统之后,用户调用任意一个接口都被后台记录成为一个用户访问节点,并记录在内存中;当用户调用某个接口时,系统将当前调用接口的访问节点以及该节点所有前置访问节点构成一个用户访问链;系统从内存中读取该接口的合法访问链,并将合法访问链与用户访问链比对,一旦比对成功认...

【专利技术属性】
技术研发人员:魏劲超江涛
申请(专利权)人:四川长虹电器股份有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1