本发明涉及计算机技术领域,尤其涉及一种接口访问方法、服务器及计算机可读存储介质。
背景技术:
随着计算机技术的发展,用户对互联网应用的需求越来越多,互联网应用的发展越来越快。对于高并发的互联网应用,服务器接口的调用次数是很高的,因此不能随意开放自己服务器的接口,如果将接口随意暴露,对接口的访问不加以限制,易导致非正常用户通过接口攻击服务器、恶意频繁访问接口导致服务器瘫痪影响正常用户使用、甚至利用接口窃取服务器用户信息等一系列的安全问题。
目前针对接口访问的安全问题,主要是利用服务器的防火墙建立基于ip地址的黑白名单访问机制,然而,这种安全机制还存在诸多弊端,灵活度较差,如遇合作方服务器ip地址发生变化将导致其接口访问请求被拒绝,影响用户使用,此外,来自白名单中的非正常访问请求也无法识别及虑除。因此,提供一种更加灵活高效的接口访问安全机制具有显著的应用价值。
技术实现要素:
本发明实施例提供一种接口访问方法、服务器及计算机可读存储介质,以提供一种更加灵活高效的接口访问安全机制。
第一方面,本发明实施例提供了一种接口访问方法,该方法包括:
当接收到目标用户的接口访问请求时,对所述目标用户的访问权限进行校验;
若校验成功,则查询所述目标用户针对所请求接口的历史访问频率;
若所述历史访问频率小于预设阈值,则允许所述目标用户访问所请求接口。
第二方面,本发明实施例提供了一种服务器,该服务器包括用于执行上述第一方面的方法的单元。
第三方面,本发明实施例提供了另一种服务器,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储支持服务器执行上述方法的计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行上述第一方面的方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面的方法。
本发明实施例通过在接收到目标用户的接口访问请求时,对该目标用户的访问权限进行校验,若校验成功,则查询该目标用户针对所请求接口的历史访问频率,若该历史访问频率小于预设阈值,则允许该目标用户访问所请求接口。本发明实施例相比于现有技术,提供了一种更加灵活高效的接口访问安全机制。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种接口访问方法的示意流程图;
图2是本发明实施例提供的另一种接口访问方法的示意流程图;
图3是本发明实施例提供的一种服务器的示意性框图;
图4是本发明实施例提供的另一种服务器示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
具体实现中,本发明实施例中描述的服务器包括但不限于诸如具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的移动电话、膝上型计算机或平板计算机之类的其它便携式设备。还应当理解的是,在某些实施例中,所述设备并非便携式通信设备,而是具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的台式计算机。
在接下来的讨论中,描述了包括显示器和触摸敏感表面的服务器。然而,应当理解的是,服务器可以包括诸如物理键盘、鼠标和/或控制杆的一个或多个其它物理用户接口设备。
服务器支持各种应用程序,例如以下中的一个或多个:绘图应用程序、演示应用程序、文字处理应用程序、网站创建应用程序、盘刻录应用程序、电子表格应用程序、游戏应用程序、电话应用程序、视频会议应用程序、电子邮件应用程序、即时消息收发应用程序、锻炼支持应用程序、照片管理应用程序、数码相机应用程序、数字摄影机应用程序、web浏览应用程序、数字音乐播放器应用程序和/或数字视频播放器应用程序。
可以在服务器上执行的各种应用程序可以使用诸如触摸敏感表面的至少一个公共物理用户接口设备。可以在应用程序之间和/或相应应用程序内调整和/或改变触摸敏感表面的一个或多个功能以及服务器上显示的相应信息。这样,服务器的公共物理架构(例如,触摸敏感表面)可以支持具有对用户而言直观且透明的用户界面的各种应用程序。
本发明实施例,服务器可以在接收目标用户的接口访问请求之前,与目标用户达成合作关系,服务器预先给合作的目标用户对应的公钥以及待加密的协议加密数据。服务器可以接收目标用户的接口访问请求,该接口访问请求中携带了验证信息,该验证信息包括校验值、公钥以及待加密的协议加密数据,服务器可以根据该验证信息对该目标用户的访问权限进行校验。具体的,服务器可以通过预设排序算法,对存储在本地的私钥、接收到的公钥以及待加密的协议加密数据进行排序,将获取到的排序值拼接成一个字符串,通过预置的加密算法对所述字符串进行加密,得到加密结果数据,服务器将该加密结果数据与所接收到的校验值进行匹配验证,若校验成功,则查询所述目标用户针对所请求接口的历史访问频率,若所述历史访问频率小于预设阈值,则允许所述目标用户访问所请求接口。
需要说明的是,服务器接收到的验证信息中的校验值用于校验该目标用户是否有权限调用所请求接口,由于该校验值是根据不同的数据加密生成的,不会是固定的一个值,因此只有目标用户才能根据正确的方法调用到对应的接口。
在一个实施例中,服务器在接收到目标用户的接口访问请求之后,对该目标用户的访问权限进行校验之前,可以根据接收到的验证信息中的公钥,检测该目标用户对所请求接口的操作事件,如果检测到恶意操作事件,则服务器可以取消该目标用户对所请求接口的访问权限。
在一个实施例中,服务器可以将该加密结果数据与所接收到的校验值进行匹配验证,如果所述加密结果数据与所接收到的校验值不匹配,则校验失败,拒绝所述目标用户访问所请求接口。
在一个实施例中,服务器若判断出该目标用户的历史访问频率小于预设阈值,则允许所述目标用户访问所请求接口,并以累计递增的方式存储所述历史访问频率,服务器若在预设时间范围阈值内,查询到所存储的历史访问频率大于或等于预设阈值,则服务器可以停止该目标用户对所请求接口的访问。
本发明实施例所提供的一种接口访问方法,通过对目标用户的访问权限的验证,提高了接口访问的安全性,在对目标用户的访问权限的验证通过之后,通过控制目标用户对所请求接口的访问频率,防止目标用户在单位时间内过度调用所请求接口以达到防刷效果,保证接口的可用性。
参见图1,图1是本发明实施例提供的一种接口访问方法的示意流程图,如图1所示的接口访问方法,该方法可包括:
s101:当接收到目标用户的接口访问请求时,对该目标用户的访问权限进行校验。
本发明实施例中,服务器可以接收用户的接口访问请求,当接收到目标用户的接口访问请求时,服务器可以对该目标用户的访问权限进行校验。其中,服务器接收到的目标用户的接口访问请求中携带了验证信息,该验证信息包括校验值、公钥以及协议加密数据。
在一个实施例中,服务器在接收到目标用户的接口访问请求时,可以获取该接口访问请求中携带的验证信息,该验证信息包括校验值、公钥、以及协议加密数据。服务器可以对所述协议加密数据进行加密处理,得到加密结果数据,并将所述加密结果数据与所述校验值进行匹配验证。
在一个实施例中,服务器在接收到目标用户的接口访问请求时,可以通过预设排序算法,对存储在本地的私钥、接收到的所述公钥以及协议加密数据进行排序,将获取到的排序值拼接成一个字符串,通过预置的加密算法对所述字符串进行加密,得到加密结果数据。具体地,服务器可以在接收到包括校验值、公钥以及协议加密数据的接口访问请求时,通过预设排序算法对存储在本地的私钥、接收到的公钥以及协议加密数据进行排序,以及将获取到的排序值拼接成一个字符串,通过预置的加密算法对该字符串进行加密,得到加密结果数据,并将该加密结果数据与所接收到的校验值进行匹配验证。
具体可举例说明,服务器在接收到包括校验值sign值、公钥key以及待加密的协议加密数据的接口访问请求时,该服务器可以通过预设排序算法rsort,对存储在本地的私钥secret、接收到的公钥key以及用户名和用户密码(协议加密数据)进行排序,得到排序值,服务器可以将获取到的排序值拼接成一个字符串,通过哈希散列算法hash(预置的加密算法)对该字符串进行加密,得到加密结果数据,并将该加密结果数据与所接收到的校验值进行匹配验证。
在一个实施例中,服务器如果检测到所述加密结果数据与所述校验值匹配,则确定校验成功,如果所述加密结果数据与所述校验值不匹配,则确定校验失败,服务器将拒绝所述目标用户访问所请求接口。
在一个实施例中,服务器在接收到目标用户的接口访问请求之后,对该目标用户的访问权限进行校验之前,可以根据接收到的验证信息中的公钥,检测该目标用户对所请求接口的操作事件,如果检测到恶意操作事件,则服务器可以取消该目标用户对所请求接口的访问权限。具体可举例说明,服务器在接收到目标用户的接口访问请求之后,对该目标用户的访问权限进行校验之前,可以根据接收到的验证信息中的公钥key,检测该目标用户对所请求接口的操作事件,如果检测到篡改操作事件,则服务器可以取消该目标用户对所请求接口的访问权限。
本发明实施方式通过接收到的接口访问请求,对目标用户的访问权限进行校验,可以防止非目标用户刷接口,从而提高接口的访问安全。
s102:若校验成功,则查询该目标用户针对所请求接口的历史访问频率。
本发明实施例中,服务器可以根据接收到的目标用户的验证信息,得到加密结果数据,并将该加密结果数据与所接收到的校验值进行匹配验证,如果加密结果数据与所接收到的校验值匹配,则服务器可以确认校验成功,服务器可以查询该目标用户针对所请求接口的历史访问频率,该访问频率是指单位时间内的访问次数。具体可举例说明,服务器可以获取目标用户针对所请求接口的历史访问频率为10次/分钟。可见,该实施方式通过在校验成功之后,查询该目标用户针对所请求接口的历史访问频率,以便于服务器判断该目标用户的访问频率是否超过预设阈值。
s103:若该历史访问频率小于预设阈值,则允许该目标用户访问所请求接口。
本发明实施例中,服务器在确认对目标用户的访问权限校验成功时,可以判断该目标用户的历史访问频率是否小于预设阈值,若小于,则允许该目标用户访问所请求接口。
在一个实施例中,服务器可以获取目标用户针对所请求接口的历史访问频率,检测所述历史访问频率是否小于预设阈值,若检测出该目标用户的历史访问频率小于预设阈值,则允许所述目标用户访问所请求接口,并以累计递增的方式存储所述历史访问频率。具体可举例说明,服务器可以获取目标用户针对所请求接口的历史访问频率为10次/分钟,其中,预设阈值为20次/分钟,服务器检测到所述历史访问频率10次/分钟小于预设阈值20次/分钟,即10<20,则该服务器允许所述目标用户访问所请求接口,并以累计递增的方式存储所述历史访问频率为11次/分钟,即10+1=11次/分钟,服务器利用缓存技术redis存储该历史访问频率,以限制该目标用户在预设时间内的访问次数。
在一个实施例中,服务器若在预设时间范围阈值内,检测所存储的历史访问频率是否小于预设阈值,如果检测结果为否,则停止所述目标用户对所请求接口的访问,并输出提示信息,所述提示信息用于提示所述目标用户在预设时间范围阈值内的访问次数已用完。具体可举例说明,服务器如果在1分钟内(预设时间范围阈值内),若检测出该目标用户的历史访问频率为21次大于每分钟访问20次(预设阈值),则服务器可以停止该目标用户对所请求接口的访问,并输出提示信息,所述提示信息用于提示所述目标用户在预设时间范围阈值内的访问次数已用完。可见,本发明实施方式通过在校验成功之后,对目标用户的访问频率进行限制,可以防止目标用户不合理的调用接口,从而提高接口访问的可用性。
本发明实施例,通过在接收到目标用户的接口访问请求时,对该目标用户的访问权限进行校验,校验成功之后,则查询该目标用户针对所请求接口的历史访问频率,若该历史访问频率小于预设阈值,则允许该目标用户访问所请求接口,从而实现对目标用户访问权限的验证以及防止目标用户对所请求接口的不合理调用,从而,提供了一种更加灵活高效的接口访问安全机制。
参见图2,图2是本发明实施例提供的另一种接口访问方法的示意流程图,如图所示的接口访问方法可包括:
s201:获取校验值、公钥、以及协议加密数据。
本发明实施例中,服务器可以获取校验值、公钥、以及协议加密数据。具体地,服务器当接收到目标用户的接口访问请求时,服务器可以获取该接口访问请求中携带的验证信息,该验证信息包括校验值、公钥以及协议加密数据。
s202:通过预设排序算法,对存储在本地的私钥、接收到的公钥以及协议加密数据进行排序。
本发明实施例中,服务器可以通过预设排序算法,对存储在本地的私钥、接收到的公钥以及协议加密数据进行排序。具体地,服务器可以在接收到目标用户的接口访问请求时,通过预设排序算法,对存储在本地的私钥、接收到的公钥以及协议加密数据进行排序,从而获取得到排序值。
具体可举例说明,服务器接收到目标用户的接口访问请求,该接口访问请求中包括了验证信息,该验证信息包括校验值sign值、公钥key以及协议加密数据user_id,user_pwd;服务器可以获取存储在本地的私钥secret。其中,服务器获取到的验证信息中各参数的值为:
key=900150983cd24fb0d6963f7d28e17f72;
secret=011134986548f3458aa3e7e2a7fceb8d;
user_id=100;
user_pwd=123wqe。
服务器可以根据上述各参数的值,通过rsort排序算法处理之后,获取得到排序值,即数组“array('user_pwd','user_id','secret','key')”。
在一个实施例中,服务器在接收到目标用户的接口访问请求之后,对该目标用户的访问权限进行校验之前,可以根据接收到的验证信息中的公钥,检测该目标用户对所请求接口的操作事件,如果检测到恶意操作事件,则服务器可以取消该目标用户对所请求接口的访问权限。具体可举例说明,服务器在接收到目标用户的接口访问请求之后,对该目标用户的访问权限进行校验之前,可以根据接收到的验证信息中的公钥key,检测该目标用户对所请求接口的操作事件,如果检测到篡改操作事件,则服务器可以取消该目标用户对所请求接口的访问权限。
本发明实施方式通过接收到的接口访问请求,对目标用户的访问权限进行校验,可以防止非目标用户刷接口,从而提高接口的访问安全。
s203:将获取到的排序值拼接成一个字符串。
本发明实施例中,服务器在接收到目标用户的接口访问请求时,通过预设排序算法,对存储在本地的私钥、接收到的公钥以及需要加密的数据进行排序,获取得到排序值之后,可以将获取到的排序值拼接成一个字符串。具体可举例说明,如上所述,服务器获取到的验证信息中各参数的值为:
key=900150983cd24fb0d6963f7d28e17f72;
secret=011134986548f3458aa3e7e2a7fceb8d;
user_id=100;
user_pwd=123wqe。
服务器可以通过rsort排序算法(预设排序算法)对上述验证信息排序,将获取到的排序值“array('user_pwd','user_id','secret','key')”拼接,得到字符串“123wqe100011134986548f3458aa3e7e2a7fceb8d900150983cd24fb0d6963f7d28e17f72”。
s204:通过预置的加密算法对该字符串进行加密,得到加密结果数据。
本发明实施例中,服务器可以通过预置的加密算法对获取到的字符串进行加密,得到加密结果数据。具体可举例说明,服务器可以通过哈希算法(预置的加密算法),将上述通过rsort排序算法对验证信息进行排序拼接得到的字符串“123wqe100011134986548f3458aa3e7e2a7fceb8d900150983cd24fb0d6963f7d28e17f72”进行加密处理,在该加密处理之后,服务器可以得到加密结果数据“88935c46d6d1fbc62e626de2cb3e2f970e61fa98”。
s205:将该加密结果数据与该校验值进行匹配验证。
本发明实施例中,服务器可以将该加密结果数据与所接收到的校验值进行匹配验证。例如,服务器可以将上述通过哈希算法(预置的加密算法)加密,获取得到的加密结果数据“88935c46d6d1fbc62e626de2cb3e2f970e61fa98”,与所接收到的校验值sign值进行匹配验证。
s206:若校验成功,则查询该目标用户针对所请求接口的历史访问频率。
本发明实施例中,服务器可以根据接收到的目标用户的验证信息,得到加密结果数据,并将该加密结果数据与所接收到的校验值进行匹配验证,如果加密结果数据与所接收到的校验值匹配,则服务器可以确认校验成功,服务器可以查询该目标用户针对所请求接口的历史访问频率,该访问频率是指单位时间内的访问次数。具体可举例说明,服务器可以获取目标用户针对所请求接口的历史访问频率为10次/分钟。可见,该实施方式通过在校验成功之后,查询该目标用户针对所请求接口的历史访问频率,以便于服务器判断该目标用户的访问频率是否超过预设阈值。
在一个实施例中,服务器可以根据接收到的目标用户的验证信息,得到加密结果数据,并将该加密结果数据与所接收到的校验值进行匹配验证,如果加密结果数据与所接收到的校验值不匹配,则服务器可以确认校验失败,从而拒绝该目标用户访问所请求接口。
s207:若该历史访问频率小于预设阈值,则允许该目标用户访问所请求接口,并以累计递增的方式存储该历史访问频率。
本发明实施例中,服务器在确认对目标用户的访问权限校验成功时,可以判断该目标用户的历史访问频率是否小于预设阈值,若小于,则允许该目标用户访问所请求接口。
具体地,服务器可以获取目标用户针对所请求接口的历史访问频率,检测所述历史访问频率是否小于预设阈值,若检测出该目标用户的历史访问频率小于预设阈值,则允许所述目标用户访问所请求接口,并以累计递增的方式存储所述历史访问频率。具体可举例说明,服务器可以获取目标用户针对所请求接口的历史访问频率为10次/分钟,其中,预设阈值为20次/分钟,服务器检测到所述历史访问频率10次/分钟小于预设阈值20次/分钟,即10<20,则该服务器允许所述目标用户访问所请求接口,并以累计递增的方式存储所述历史访问频率为11次/分钟,即10+1=11次/分钟。
在一个实施例中,服务器若在预设时间范围阈值内,检测所存储的历史访问频率是否小于预设阈值,如果检测结果为否,则停止所述目标用户对所请求接口的访问,并输出提示信息,所述提示信息用于提示所述目标用户在预设时间范围阈值内的访问次数已用完。具体可举例说明,服务器如果在1分钟内(预设时间范围阈值内),若检测出该目标用户的历史访问频率为21次大于每分钟访问20次(预设阈值),则服务器可以停止该目标用户对所请求接口的访问,并输出提示信息,所述提示信息用于提示所述目标用户在预设时间范围阈值内的访问次数已用完。可见,本发明实施方式通过在校验成功之后,对目标用户的访问频率进行限制,可以防止目标用户不合理的调用接口,从而提高接口访问的可用性。
本发明实施例,服务器通过预设排序算法,对存储在本地的密钥、接收到的公钥以及协议加密数据进行排序,将获取到的排序值拼接成一个字符串,通过预置的加密算法对该字符串进行加密,将获取到的加密结果数据与所接收到的校验值进行匹配验证,若校验成功,则查询该目标用户针对所请求接口的历史访问频率,若该历史访问频率小于预设阈值,则允许该目标用户访问所请求接口,并以累计递增的方式存储该历史访问频率,若在预设时间范围阈值内,查询到所存储的历史访问频率大于或等于预设阈值,则停止该目标用户对所请求接口的访问,从而可以保证接口访问的安全性以及接口的可用性。
本发明实施例还提供一种服务器,该服务器用于执行前述任一项所述的方法的单元。具体地,参见图3,图3是本发明实施例提供的一种服务器的示意框图。本实施例的服务器包括:校验单元301、查询单元302、访问单元303。
校验单元301,用于当接收到目标用户的接口访问请求时,对所述目标用户的访问权限进行校验;
查询单元302,用于若校验成功,则查询所述目标用户针对所请求接口的历史访问频率;
访问单元303,用于若所述历史访问频率小于预设阈值,则允许所述目标用户访问所请求接口。
具体地,所述接口访问请求中携带验证信息;所述验证信息包括校验值、公钥以及需要加密的协议加密数据;所述校验单元301,具体用于获取所述校验值、公钥、以及协议加密数据;对所述协议加密数据进行加密处理,得到加密结果数据;将所述加密结果数据与所述校验值进行匹配验证。
具体地,所述校验单元301,还用于通过预设排序算法,对存储在本地的私钥、接收到的公钥以及协议加密数据进行排序;将获取到的排序值拼接成一个字符串;通过预置的加密算法对所述字符串进行加密,得到加密结果数据。
具体地,所述校验单元301,还用于如果所述加密结果数据与所述校验值匹配,则校验成功;如果所述加密结果数据与所述校验值不匹配,则校验失败,拒绝所述目标用户访问所请求接口。
具体地,所述访问单元303,具体用于获取所述历史访问频率;检测所述历史访问频率是否小于预设阈值;如果检测结果为是,则允许所述目标用户访问所请求接口,并以累计递增的方式存储所述历史访问频率。
具体地,所述访问单元303,还用于在预设时间范围阈值内,检测所存储的历史访问频率是否小于预设阈值;如果检测结果为否,则停止所述目标用户对所请求接口的访问,并输出提示信息,所述提示信息用于提示所述目标用户在预设时间范围阈值内的访问次数已用完。
具体地,所述服务器还包括:
检测单元304,用于根据接收到的所述公钥,检测所述目标用户对所请求接口的操作事件;如果检测到恶意操作事件,则取消所述目标用户对所请求接口的访问权限。
本发明实施例,服务器可以通过校验单元301在接收到目标用户的接口访问请求时通过,对该目标用户的访问权限进行校验,校验成功之后,通过查询单元302查询该目标用户针对所请求接口的历史访问频率,若该历史访问频率小于预设阈值,则通过访问接口303允许该目标用户访问所请求接口,从而实现对目标用户访问权限的验证以及防止目标用户对所请求接口的不合理调用,从而提供了一种更加灵活高效的接口访问安全机制,提高了接口访问的安全性和可用性。
参见图4,图4是本发明实施例提供的另一种服务器示意框图。如图所示的本实施例中的服务器可以包括:一个或多个处理器401;一个或多个输入设备402,一个或多个输出设备403和存储器404。上述处理器401、输入设备402、输出设备403和存储器404通过总线405连接。存储器402用于存储指令,处理器401用于执行存储器402存储的指令。其中,处理器401用于:
当接收到目标用户的接口访问请求时,对所述目标用户的访问权限进行校验;
若校验成功,则查询所述目标用户针对所请求接口的历史访问频率;
若所述历史访问频率小于预设阈值,则允许所述目标用户访问所请求接口。
进一步,该处理器401还用于执行以下步骤:
获取所述校验值、公钥、以及协议加密数据;
对所述协议加密数据进行加密处理,得到加密结果数据;
将所述加密结果数据与所述校验值进行匹配验证。
进一步,该处理器401还用于执行以下步骤:
通过预设排序算法,对存储在本地的私钥、接收到的公钥以及协议加密数据进行排序;
将获取到的排序值拼接成一个字符串;
通过预置的加密算法对所述字符串进行加密,得到加密结果数据;
将所述加密数据与所接收到的校验值进行匹配验证。
进一步,该处理器401还用于执行以下步骤:
如果所述加密结果数据与所述校验值匹配,则校验成功;
如果所述加密结果数据与所述校验值不匹配,则校验失败,拒绝所述目标用户访问所请求接口。
进一步,该处理器401还用于执行以下步骤:
获取所述历史访问频率;
检测所述历史访问频率是否小于预设阈值;
如果检测结果为是,则允许所述目标用户访问所请求接口,并以累计递增的方式存储所述历史访问频率。
进一步,该处理器401还用于执行以下步骤:
在预设时间范围阈值内,检测所存储的历史访问频率是否小于预设阈值;
如果检测结果为否,则停止所述目标用户对所请求接口的访问,并输出提示信息,所述提示信息用于提示所述目标用户在预设时间范围阈值内的访问次数已用完。
进一步,该处理器401还用于执行以下步骤:
根据接收到的所述公钥,检测所述目标用户对所请求接口的操作事件;
如果检测到恶意操作事件,则取消所述目标用户对所请求接口的访问权限。
本发明实施例通过在接收到目标用户的接口访问请求时,对该目标用户的访问权限进行校验,若校验成功,则查询该目标用户针对所请求接口的历史访问频率,若该历史访问频率小于预设阈值,则允许该目标用户访问所请求接口。本发明实施例相比于现有技术,提供了一种更加灵活高效的接口访问安全机制,提高了接口访问的安全性和可用性。
应当理解,在本发明实施例中,所称处理器401可以是中央处理单元(centralprocessingunit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
输入设备402可以包括触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备403可以包括显示器(lcd等)、扬声器等。
该存储器404可以包括只读存储器和随机存取存储器,并向处理器401提供指令和数据。存储器404的一部分还可以包括非易失性随机存取存储器。例如,存储器404还可以存储设备类型的信息。
具体实现中,本发明实施例中所描述的处理器401、输入设备402、输出设备403可执行本发明实施例提供的一种接口访问方法的图1所述的实施例或图2所述的实施例中所描述的实现方式,也可执行本发明实施例所描述的服务器的实现方式,在此不再赘述。
在本发明的实施例中还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本发明图1或图2所述实施例中所描述的实现方式,也可执行本发明图3所描述的服务器的实现方式,在此不再赘述。
所述计算机可读存储介质可以是前述任一实施例所述的服务器的内部存储单元,例如服务器的硬盘或内存。所述计算机可读存储介质也可以是所述服务器的外部存储设备,例如所述服务器上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述计算机可读存储介质还可以既包括所述服务器的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述服务器所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的服务器和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的服务器和方法,可以通过其它的方式实现。例如,以上所描述的服务器实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。