一种访问控制方法、装置、服务器及存储介质制造方法及图纸

技术编号:23101911 阅读:40 留言:0更新日期:2020-01-14 21:09
本发明专利技术提供一种访问控制方法,包括:在客户端登录成功后,生成与客户端对应的第一令牌并向客户端发送,第一令牌至少携带登录账户、源IP地址和当前时间戳,源IP地址为客户端的IP地址;接收客户端发送的访问请求,并对访问请求携带的第二令牌进行解析;如果解析得到的源IP地址与客户端的IP地址一致,解析得到的登录账户信息为有效账户,且依据解析得到的当前时间戳确定访问请求携带的第二令牌未过期,则响应访问请求,否则,拒绝响应访问请求。本发明专利技术提供的访问控制方法,当访问请求携带的令牌中的登录账户、源IP地址及当前时间戳均校验成功时,客户端能够访问服务器,有效提高了身份验证的安全性,从而降低服务器被非法访问的可能性。

【技术实现步骤摘要】
一种访问控制方法、装置、服务器及存储介质
本专利技术属于通信
,尤其涉及一种访问控制方法、装置、服务器及存储介质。
技术介绍
随着互联网技术的发展,前后端分离日益明显,前端指网页、app客户端等,后端指网络接口请求的服务提供者。前后端分离有利于开发人员各司其职,专注于各自的开发领域,提高开发效率。前后端分离后,数据的交互都基于接口请求完成。目前接口访问请求的身份验证主要通过令牌校验来实现。具体为:用户登录成功后,由服务器生成一个令牌并返回客户端,服务器同时保存该令牌,客户端在每次发起访问请求时,将令牌与请求头一起发送至服务器,服务器比较接收到的令牌和保存的令牌是否一致,如果两者一致,则确定通过身份验证。但是,现有技术中的身份验证方式存在安全性较低的缺陷,一旦令牌被窃取,很容易使用窃取的令牌伪造请求头信息,从而非法请求服务器接口。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种访问控制方法、装置、服务器及存储介质,以提高身份验证的安全性,从而降低服务器被非法访问的可能性。为实现上述目的,本专利技术提供如下技术方案:一方面,本专利技术提供一种访问控制方法,包括:在客户端登录成功后,生成与所述客户端对应的第一令牌,所述第一令牌至少携带登录账户、源IP地址和当前时间戳,所述源IP地址为所述客户端的IP地址;向所述客户端发送所述第一令牌;接收所述客户端发送的访问请求,所述访问请求携带有第二令牌;对所述访问请求携带的第二令牌进行解析;如果解析得到的源IP地址与所述客户端的IP地址一致,解析得到的登录账户信息为有效账户,且依据解析得到的当前时间戳确定所述访问请求携带的第二令牌未过期,则响应所述访问请求,否则,拒绝响应所述访问请求。可选的,所述生成与所述客户端对应的第一令牌包括:生成第一初始令牌,所述第一初始令牌包括按照预设顺序排列的混淆时间戳和令牌要素,所述令牌要素包括登录账户、源IP地址和当前时间戳;利用预设加密算法对所述第一初始令牌进行加密处理,得到与所述客户端对应的第一令牌;相应的,所述对所述访问请求携带的第二令牌进行解析,包括:利用预设解密算法对所述第二令牌进行解密处理,得到第二初始令牌;依据所述预设顺序从所述第二初始令牌中获得令牌要素;从所述令牌要素中提取登录账户、源IP地址和当前时间戳。可选的,所述生成与所述客户端对应的第一令牌包括:生成第一初始令牌,所述第一初始令牌包括按照预设顺序排列的混淆时间戳和令牌要素,所述令牌要素包括登录账户、源IP地址和当前时间戳;利用预设加密算法对所述第一初始令牌进行加密处理,得到第一加密令牌;利用预设编码机制对所述第一加密令牌进行编码处理,得到与所述客户端对应的第一令牌。相应的,所述对所述访问请求携带的第二令牌进行解析,包括:按照所述预设编码机制对所述第二令牌进行解码处理,得到第二加密令牌;利用预设解密算法对所述第二加密令牌进行解密处理,得到第二初始令牌;依据所述预设顺序从所述第二初始令牌中提取令牌要素;从所述令牌要素中提取登录账户、源IP地址和当前时间戳。可选的,在所述对所述访问请求携带的第二令牌进行解析之后,还包括:如果解析得到的源IP地址与所述客户端的IP地址一致,解析得到的登录账户信息为有效账户,且依据解析得到的当前时间戳确定所述访问请求携带的第二令牌已过期,则生成签名种子,向所述客户端发送所述签名种子。可选的,在所述向所述客户端发送所述签名种子之后,还包括:接收所述客户端发送的令牌更新请求,所述令牌更新请求携带有签名信息,所述签名信息由所述客户端利用预设签名算法、根据所述签名种子对过期令牌进行签名处理得到;提取所述令牌更新请求中的签名信息;对所述提取出的签名信息进行有效性验证;在确定通过有效性验证的情况下,生成与所述客户端对应的第三令牌;向所述客户端发送所述第三令牌。可选的,所述对所述提取出的签名信息进行有效性验证,包括:利用所述预设签名算法、根据所述签名种子对所述过期令牌进行签名处理,得到验证签名信息;比较所述提取出的签名信息和所述验证签名信息;在所述提取出的签名信息和所述验证签名信息相同的情况下,确定接收所述令牌更新请求的第一时刻与发送所述签名种子的第二时刻之间的时间间隔;在所述时间间隔未超出预设时间阈值的情况下,确定通过有效性验证。可选的,在所述时间间隔超出所述时间阈值的情况下,重新生成签名种子,向所述客户端发送当前生成的签名种子。另一方面,本专利技术提供一种应用于服务器的访问控制装置,所述装置包括:令牌生成单元,用于在客户端登录成功后,生成与所述客户端对应的第一令牌,所述第一令牌至少携带登录账户、源IP地址和当前时间戳,所述源IP地址为所述客户端的IP地址;令牌发送单元,用于向所述客户端发送所述第一令牌;访问请求接收单元,用于接收所述客户端发送的访问请求,所述访问请求携带有第二令牌;令牌解析单元,用于对所述客户端发送的访问请求携带的第二令牌进行解析;访问控制单元,用于如果解析得到的源IP地址与所述客户端的IP地址一致,解析得到的登录账户信息为有效账户,且依据解析得到的当前时间戳确定所述访问请求携带的第二令牌未过期,则响应所述访问请求,否则,拒绝响应所述访问请求。另一方面,本专利技术提供一种服务器,包括处理器和存储器;所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器用于存储所述程序,所述程序至少用于:在客户端登录成功后,生成与所述客户端对应的第一令牌,所述第一令牌至少携带登录账户、源IP地址和当前时间戳,所述源IP地址为所述客户端的IP地址;向所述客户端发送所述第一令牌;接收所述客户端发送的访问请求,所述访问请求携带有第二令牌;对所述访问请求携带的第二令牌进行解析;如果解析得到的源IP地址与所述客户端的IP地址一致,解析得到的登录账户信息为有效账户,且依据解析得到的当前时间戳确定所述访问请求携带的第二令牌未过期,则响应所述访问请求,否则,拒绝响应所述访问请求。另一方面,本专利技术提供一种存储介质,所述存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如上述公开的任意一种访问控制方法。本专利技术提供的访问控制方法,在客户端登录成功后,服务器生成与该客户端对应的第一令牌并发送给该客户端,该第一令牌至少携带登录账户、源IP地址和当前时间戳;服务器接收该客户端发起的访问请求,并对该访问请求中的第二令牌进行解析,如果解析得到的源IP地址与该客户端的IP地址一致,解析得到的登录账户信息为有效账户,且依据解析得到的当前时间戳确定该访问请求携带的第二令牌未过期,则响应该访问请求,否则,拒绝响应该访问请求。本专利技术通过在令牌生成规则及校验规则中引入了登录账户、源IP地址及当前时间戳,在客户端向服务器发起访问请求时本文档来自技高网...

【技术保护点】
1.一种访问控制方法,其特征在于,应用于服务器,所述方法包括:/n在客户端登录成功后,生成与所述客户端对应的第一令牌,所述第一令牌至少携带登录账户、源IP地址和当前时间戳,所述源IP地址为所述客户端的IP地址;/n向所述客户端发送所述第一令牌;/n接收所述客户端发送的访问请求,所述访问请求携带有第二令牌;/n对所述访问请求携带的第二令牌进行解析;/n如果解析得到的源IP地址与所述客户端的IP地址一致,解析得到的登录账户信息为有效账户,且依据解析得到的当前时间戳确定所述访问请求携带的第二令牌未过期,则响应所述访问请求,否则,拒绝响应所述访问请求。/n

【技术特征摘要】
1.一种访问控制方法,其特征在于,应用于服务器,所述方法包括:
在客户端登录成功后,生成与所述客户端对应的第一令牌,所述第一令牌至少携带登录账户、源IP地址和当前时间戳,所述源IP地址为所述客户端的IP地址;
向所述客户端发送所述第一令牌;
接收所述客户端发送的访问请求,所述访问请求携带有第二令牌;
对所述访问请求携带的第二令牌进行解析;
如果解析得到的源IP地址与所述客户端的IP地址一致,解析得到的登录账户信息为有效账户,且依据解析得到的当前时间戳确定所述访问请求携带的第二令牌未过期,则响应所述访问请求,否则,拒绝响应所述访问请求。


2.根据权利要求1所述的方法,其特征在于,
所述生成与所述客户端对应的第一令牌包括:
生成第一初始令牌,所述第一初始令牌包括按照预设顺序排列的混淆时间戳和令牌要素,所述令牌要素包括登录账户、源IP地址和当前时间戳;利用预设加密算法对所述第一初始令牌进行加密处理,得到与所述客户端对应的第一令牌;
相应的,所述对所述访问请求携带的第二令牌进行解析,包括:
利用预设解密算法对所述第二令牌进行解密处理,得到第二初始令牌;依据所述预设顺序从所述第二初始令牌中获得令牌要素;从所述令牌要素中提取登录账户、源IP地址和当前时间戳。


3.根据权利要求1所述的方法,其特征在于,
所述生成与所述客户端对应的第一令牌包括:
生成第一初始令牌,所述第一初始令牌包括按照预设顺序排列的混淆时间戳和令牌要素,所述令牌要素包括登录账户、源IP地址和当前时间戳;利用预设加密算法对所述第一初始令牌进行加密处理,得到第一加密令牌;利用预设编码机制对所述第一加密令牌进行编码处理,得到与所述客户端对应的第一令牌;
相应的,所述对所述访问请求携带的第二令牌进行解析,包括:
按照所述预设编码机制对所述第二令牌进行解码处理,得到第二加密令牌;利用预设解密算法对所述第二加密令牌进行解密处理,得到第二初始令牌;依据所述预设顺序从所述第二初始令牌中提取令牌要素;从所述令牌要素中提取登录账户、源IP地址和当前时间戳。


4.根据权利要求1、2或3所述的方法,其特征在于,在所述对所述访问请求携带的第二令牌进行解析之后,还包括:
如果解析得到的源IP地址与所述客户端的IP地址一致,解析得到的登录账户信息为有效账户,且依据解析得到的当前时间戳确定所述访问请求携带的第二令牌已过期,则生成签名种子,向所述客户端发送所述签名种子。


5.根据权利要求4所述的方法,其特征在于,在所述向所述客户端发送所述签名种子之后,还包括:
接收所述客户端发送的令牌更新请求,所述令牌更新请求携带有签名信息,所述签名信息由所述客户端利用预设签名算法、根据所述签名种子对过期令牌进...

【专利技术属性】
技术研发人员:黄斌孙成方刘炳礼
申请(专利权)人:北京搜狐新媒体信息技术有限公司
类型:发明
国别省市:北京;11

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

1