一种鉴权方法及系统技术方案

技术编号:15749901 阅读:220 留言:0更新日期:2017-07-03 15:45
本发明专利技术提出一种鉴权方法及系统,所述方法在客户终端HTTP请求Header头信息中添加鉴权信息,最后进行鉴权操作。本发明专利技术具有如下有益效果:1、将鉴权信息加入HTTP请求Header头信息中,不会导致HTTP请求Header头信息中Url不一致;2、特殊的鉴权加密字符串生成算法能够有效的防止第三方的恶意模仿。

【技术实现步骤摘要】
一种鉴权方法及系统
本专利技术涉及通信
,更具体地,涉及一种鉴权方法及系统。
技术介绍
目前,互联网软件产品从产品受众主要划分为两大类,包括面向终端消费者的大众类互联网产品,例如新浪微博Web端、知乎Web端等。这类产品的特点在于使用该类产品的对象是人类,大部分提供的媒体内容为无结构化的文本(例如小说、博客)、图片、音视频等。另一类产品面向的受众是计算机,即服务主要形式为提供编程接口的API(ApplicationProgrammingInterface,应用程序接口),方便程序员利用该API进行二次开发。这类产品的特点在于服务的对象为计算机,提供的媒体内容大部分为结构化的文本,例如XML、JSON等。鉴权(authentication)是指验证用户是否拥有访问系统的权利。传统的鉴权是通过密码来验证的。这种方式的前提是,每个获得密码的用户都已经被授权。在建立用户时,就为此用户分配一个密码,用户的密码可以由管理员指定,也可以由用户自行申请。这种方式的弱点十分明显:一旦密码被偷或用户遗失密码,情况就会十分麻烦,需要管理员对用户密码进行重新修改,而修改密码之前还要人工验证用户的合法身份。为了克服这种鉴权方式的缺点,需要一个更加可靠的鉴权方式。目前的主流鉴权方式是利用认证授权来验证数字签名的正确与否。针对API型产品,目前对于接入其的对应用户终端鉴权常见的做法是利用相应的鉴权加密算法,生成与用户终端请求信息相对应的鉴权加密字符串与用户终端发送的请求信息一同发送给需要访问的服务器,服务器利用PHP(ertextPreprocessor,“超文本预处理器”)是一种通用开源脚本语言,进行鉴权操作。然而,不同的大型科技公司由于自身安全考虑,都会设计各自的鉴权加密算法;同时,利用PHP进行鉴权操作不能满足很多情形下对于鉴权效率的更高要求。
技术实现思路
本专利技术为克服上述问题或者至少部分地解决上述问题,提供一种鉴权方法及系统。根据本专利技术的一个方面,提供一种鉴权方法,包括:步骤1,在所述客户终端HTTP请求Header头信息中添加HTTP请求中API接口公钥、当前客户终端时刻和鉴权加密字符串;步骤2,接收所述客户终端HTTP请求,确认所述Header头信息中API接口公钥正确,确认所述客户终端时刻与当前服务器时刻差值小于预设阈值;步骤3,确认所述鉴权加密字符串正确。根据本专利技术的另一个方面,提供一种鉴权系统,包括加密模块、第一确认模块和第二确认模块:所述加密模块与所述第一确认模块相连,用于生成鉴权加密字符串;在所述客户终端HTTP请求Header头信息中添加API接口公钥、当前客户终端时刻和鉴权加密字符串;所述第一确认模块分别与所述加密模块和第二确认模块相连,用于接收所述客户终端HTTP请求,确认所述API接口公钥正确;确认所述客户终端时刻与当前服务器时刻差值小于预设阈值;所述第二确认模块与所述第一确认模块相连,用于确认所述鉴权加密字符串正确。本申请提出一种鉴权方法及系统,所述方法在客户终端HTTP请求Header头信息中添加鉴权信息,Nginx。本专利技术具有如下有益效果:1、将鉴权信息加入HTTP请求Header头信息中,不会导致HTTP请求Header头信息中Url不一致;2、特殊的鉴权加密字符串生成算法能够有效的防止第三方的恶意模仿。附图说明图1为根据本专利技术实施例一种鉴权方法的整体流程示意图;图2为根据本专利技术实施例一种鉴权方法的流程示意图;图3为根据本专利技术实施例一种鉴权系统的整体框架示意图。具体实施方式下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。以下实施例用于说明本专利技术,但不用来限制本专利技术的范围。首先对于本专利技术具体实施例中涉及到的一些技术名词进行说明。HTTP:从客户端到服务器端的请求消息。Header:HTTP请求中所携带的Header头信息。API(ApplicationProgrammingInterface,应用程序编程接口):是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。公钥(PublicKey)与私钥(PrivateKey)是通过一种算法得到的一个密钥对(即一个公钥和一个私钥),公钥是密钥对中公开的部分,私钥则是非公开的部分。公钥通常用于加密会话密钥、验证数字签名,或加密可以用相应的私钥解密的数据。通过这种算法得到的密钥对能保证在世界范围内是唯一的。使用这个密钥对的时候,如果用其中一个密钥加密一段数据,必须用另一个密钥解密。比如用公钥加密数据就必须用私钥解密,如果用私钥加密也必须用公钥解密,否则解密将不会成功。公钥AID:API接口加密使用的公钥。秘钥AID:API接口加密使用的秘钥,不对外,由服务器端提供。MD5:MessageDigestAlgorithmMD5(信息-摘要算法5)。GET请求:HTTP客户端发送请求的类型,表示向Web服务器请求一个文件。Post请求:HTTP客户端发送请求的类型,表示向Web服务器发送数据让Web服务器进行处理。鉴权加密字符串:根据一定规则生产的用于鉴权的加密字符串。Nginx:是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务。Proxy_cache:Nginx自带的内置缓存模块。Url:统一资源标识符(UniformResourceIdentifier,或URI)是一个用于标识某一互联网资源名称的字符串。lua是一个小巧的脚本语言,一个完整的Lua解释器不过200k,在目前所有脚本引擎中,Lua的速度是最快的。如图1,示出本专利技术一个具体实施例中一种鉴权方法总体流程示意图。整体上,包括以下步骤:步骤1,在所述客户终端HTTP请求Header头信息中添加HTTP请求中API接口公钥、当前客户终端时刻和鉴权加密字符串;步骤2,接收所述客户终端HTTP请求,确认所述API接口公钥正确;确认所述客户终端时刻与当前服务器时刻差值小于预设阈值;步骤3,确认所述鉴权加密字符串正确。在本专利技术上述具体实施例中,将加密信息客户终端HTTP请求Header头信息中不会导致HTTP请求Url不一致,不会因为请求Url不一致导致命中不了服务器缓存。在本专利技术另一个具体实施例中,一种鉴权方法,所述步骤1中鉴权加密字符串通过以下步骤生成:S11,将所述HTTP请求中的统一资源标识符的第一个字符“/”删除;S12,将删除字符“/”得到的字符串和HTTP请求中API接口公钥、客户终端时刻,和所述客户终端HTTP请求中的get参数字符串按照预设排序规则进行排序;将所述排序后各字符串按顺序进行拼接;S13,在所述拼接后得到的字符串中指定位置插入API接口秘钥;得到鉴权加密字符串;将所述鉴权加密字符串转换为MD5码。在本专利技术上述具体实施例中,通过特殊生成规则生成的鉴权加密字符串可以有效防止第三方爬虫或恶意攻击的侵扰,从而提高被访问服务器的安全性。由于MD5是一种不可逆的加密算法,安全性很高,广泛被用作判断文件完整性;所以将生成的鉴权加密字符串转换为MD5码,能够有效的防止最终鉴权加密字符串被反向破解,更高程度的保证了鉴权加密字符串的安全有效性。在本专利技术另一个具体本文档来自技高网
...
一种鉴权方法及系统

【技术保护点】
一种鉴权方法,其特征在于,包括:步骤1,在所述客户终端HTTP请求Header头信息中添加HTTP请求中API接口公钥、当前客户终端时刻和鉴权加密字符串;步骤2,接收所述客户终端HTTP请求,确认所述Header头信息中API接口公钥正确,确认所述客户终端时刻与当前服务器时刻差值小于预设阈值;步骤3,确认所述鉴权加密字符串正确。

【技术特征摘要】
1.一种鉴权方法,其特征在于,包括:步骤1,在所述客户终端HTTP请求Header头信息中添加HTTP请求中API接口公钥、当前客户终端时刻和鉴权加密字符串;步骤2,接收所述客户终端HTTP请求,确认所述Header头信息中API接口公钥正确,确认所述客户终端时刻与当前服务器时刻差值小于预设阈值;步骤3,确认所述鉴权加密字符串正确。2.如权利要求1所述的方法,其特征在于,所述步骤1中鉴权加密字符串通过以下步骤生成:S11,将所述HTTP请求中的统一资源标识符的第一个字符“/”删除;S12,将删除字符“/”得到的字符串和HTTP请求中API接口公钥、客户终端时刻,和所述客户终端HTTP请求中的get参数字符串按照预设排序规则进行排序;将所述排序后各字符串按顺序进行拼接;S13,在所述拼接后得到的字符串中指定位置插入API接口秘钥;得到鉴权加密字符串;将所述鉴权加密字符串转换为MD5码。3.如权利要求1所述的方法,其特征在于,所述步骤2前还包括:确认所述客户终端HTTP请求Header头信息中同时包含API接口公钥、客户终端时刻和鉴权加密字符串。4.如权利要求1所述的方法,其特征在于,所述步骤3前还包括:将客户身份信息加入API接口公钥中,根据API接口公钥访问权限确认所述客户终端具有所述HTTP请求的权限。5.如权利要求1所述的方法,其特征在于,所述步骤1中生成鉴权加密字符串还包括:S11’,确认所述HTTP请求中包含post信息;S12’,将所述pos...

【专利技术属性】
技术研发人员:胡龙军
申请(专利权)人:武汉斗鱼网络科技有限公司
类型:发明
国别省市:湖北,42

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

1