H04L29/06 H04L9/32 H04L9/08
1.浏览器和服务器架构身份认证令牌的状态控制装置,其特征在于由令牌状态控制器、令牌状态库和令牌有效性校验器组成;
本发明的令牌状态控制器、令牌状态库和令牌有效性校验器安装于网关过滤器的应用上层入口,保证浏览器发送给服务器应用系统的信息必须先通过本发明的令牌状态控制器,保证服务器应用系统发送给浏览器的信息必须先通过本发明的令牌状态控制器;
令牌状态库用来记录令牌及令牌的状态,令牌记录的格式为:令牌位,加上令牌状态位,加上登入时间位,加上操作时间位;
令牌位,类型为字符串,记录令牌本身的字符串;
令牌状态位,类型为数字,当类型数字为0表示登入状态,当类型数字为1表示失效状态,当类型数字为2表示退出状态;
登入时间位,类型为数字,记录首次获取令牌的时刻;
操作时间位,类型为数字,记录浏览器最近一次访问服务器应用系统的时刻;
令牌状态控制器识别浏览器发送给服务器应用系统的信息,当浏览器发送给服务器应用系统的信息为登录指令时,令牌状态控制器透传登录指令,服务器应用系统的令牌签发器收到登录指令后签发令牌并将签发的令牌返回给浏览器,令牌状态控制器截取并解析服务器应用系统的令牌签发器签发的令牌,并将令牌记录到令牌状态库,同时记录令牌状态标志位为0,记录令牌初始获取时刻;
当浏览器发送给服务器应用系统的信息为业务操作请求,令牌状态控制器识别业务操作请求中的令牌,通知令牌有效性校验器根据令牌判断令牌的有效性,令牌有效性校验器判断令牌有效性后对令牌状态库记录的令牌状态进行更新;
由令牌有效性校验器设定令牌的操作时差阈值,令牌的操作时差阈值决定令牌在浏览器与服务器应用系统间无信息沟通的情况下令牌有效的时间间隔,当浏览器与服务器应用系统间无信息沟通的情况大于令牌的操作时差阈值时,令牌处于失效状态;
令牌有效性校验器根据令牌到令牌状态库获取令牌的当前状态,当令牌状态位为空,则判断此令牌无效或非法,返回浏览器身份校验失败的信息;当令牌状态位为1,判断令牌失效,返回浏览器身份校验过期的信息;当令牌状态位为2,判断令牌已退出系统,返回浏览器身份校验者已退出系统的信息;当令牌状态位为0,令牌有效性校验器读取令牌状态库中令牌对应的登入时间位和操作时间位,在操作时间位无记录的情况下用当前的系统时刻减去登入时间位记录的时刻得到令牌的操作时差,当令牌的操作时差大于等于令牌的操作时差阈值时,令牌有效性校验器将令牌状态位更新为1,返回浏览器身份校验过期的信息;当令牌状态位为0,令牌有效性校验器读取令牌状态库中令牌对应的登入时间位和操作时间位,在操作时间位有记录的情况下用当前的系统时刻减去操作时间位记录的时刻得到令牌的操作时差,当令牌的操作时差小于等于令牌的操作时差阈值时,令牌有效性校验器确定令牌有效,让浏览器访问服务器应用系统的信息通过,并且令牌有效性校验器更新令牌状态库中令牌对应的操作时间位为当前系统时刻的值;当令牌状态位为0,令牌有效性校验器读取令牌状态库中令牌对应的登入时间位和操作时间位,在操作时间位有记录的情况下用当前的系统时刻减去操作时间位记录的时刻得到令牌的操作时差,当令牌的操作时差大于等于令牌的操作时差阈值时,令牌有效性校验器将令牌状态位更新为1,返回浏览器身份校验过期的信息;
当浏览器发送给服务器应用系统的信息为登出操作时,令牌状态控制器识别登出操作请求中的令牌,通知令牌有效性校验器修改令牌状态库中该令牌对应的令牌状态位为2,令牌有效性校验器修改令牌状态库中该令牌对应的操作时间位为当前系统时刻的值。
本发明涉及信息技术领域,特别信息安全技术领域。
身份认证是建立一套能够个人自主控制、可移植的身份认证体系,是认证体系的重要建设目标。
近年来浏览器和服务器架构即B/S架构逐渐取代客户端和服务器架构即C/S架构的背景下,通常采http/https协议进行前后端交互,由于http/https协议是无状态的,所以Browser端每次访问都是新的请求。这样每次请求都需要验证身份,传统方式是用session+cookie来记录/传输用户信息,而JWT就是更安全方便的方式。它的特点就是简洁,紧凑和自包含,而且不占空间,传输速度快,而且有利于多端分离,接口的交互等等。
JWT是JSON风格轻量级的授权和身份认证规范,而由于JWT授权签发的Token令牌是无状态,导致系统浏览器端携带认证签发的Token令牌对服务器端进行服务请求时不能在服务器端有效的识别令牌的状态,而产生一些信息泄露的安全问题。
为了解决浏览器和服务器架构中系统身份认证的安全威胁,我们必须要对JWT授权的Token令牌进行状态控制,这样既能提升系统的安全性,也能更好满足系统对身份认证的认证登入、认证退出、认证非法和认证超时等多样化需求。
现有技术中,浏览器服务器架构遇到的安全威胁有以下几种情况:
1、Token令牌安全威胁问题。
由于JWT授权签发Token令牌的方式是通过秘钥或者公私钥进行加密,一但暴力破解出秘钥或者公私钥,容易伪造Token令牌,对系统的安全产生威胁。
2、用户登入系统后长时间没操作,当再次操作登入状态不会动态识别失效。
当用户登入系统进行身份验证通过后,会由认证中心中JWT授权签发Token令牌返回给浏览器端,用户登入系统成功后,进行操作,每次会携带Token令牌对服务器端发送请求获取数据资源,而服务器端对请求中携带的Token令牌没有状态控制,导致服务器端不能识别此Token令牌是不是长时间没有进行操作。这样带来的安全问题是旁观者容易在当事人不在场的情况下,使用当事人已经处于登入状态中的系统,从而进行非法操作或者窃取当前的Token令牌进行私用。
3、用户退出系统后,之前的Token令牌还能继续使用的问题。
当用户正常退出系统成功后,继续使用之前的Token令牌发送请求到Server端依然能够成功获取到数据资源,由于Server端对请求中携带的Token令牌没有状态控制,导致Server端不能识别此Token令牌是否已经退出登入并失效。
鉴于现有技术的不足,本发明提供的浏览器和服务器架构身份认证令牌的状态控制装置由令牌状态控制器、令牌状态库和令牌有效性校验器组成;
本发明的令牌状态控制器、令牌状态库和令牌有效性校验器安装于网关过滤器的应用上层入口,保证浏览器发送给服务器应用系统的信息必须先通过本发明的令牌状态控制器,保证服务器应用系统发送给浏览器的信息必须先通过本发明的令牌状态控制器;
令牌状态库用来记录令牌及令牌的状态,令牌记录的格式为:令牌位,加上令牌状态位,加上登入时间位,加上操作时间位;
令牌位,类型为字符串,记录令牌本身的字符串;
令牌状态位,类型为数字,当类型数字为0表示登入状态,当类型数字为1表示失效状态,当类型数字为2表示退出状态;
登入时间位,类型为数字,记录首次获取令牌的时刻;
操作时间位,类型为数字,记录浏览器最近一次访问服务器应用系统的时刻;
令牌状态控制器识别浏览器发送给服务器应用系统的信息,当浏览器发送给服务器应用系统的信息为登录指令时,令牌状态控制器透传登录指令,服务器应用系统的令牌签发器收到登录指令后签发令牌并将签发的令牌返回给浏览器,令牌状态控制器截取并解析服务器应用系统的令牌签发器签发的令牌,并将令牌记录到令牌状态库,同时记录令牌状态标志位为0,记录令牌初始获取时刻;
当浏览器发送给服务器应用系统的信息为业务操作请求,令牌状态控制器识别业务操作请求中的令牌,通知令牌有效性校验器根据令牌判断令牌的有效性,令牌有效性校验器判断令牌有效性后对令牌状态库记录的令牌状态进行更新;
由令牌有效性校验器设定令牌的操作时差阈值,令牌的操作时差阈值决定令牌在浏览器与服务器应用系统间无信息沟通的情况下令牌有效的时间间隔,当浏览器与服务器应用系统间无信息沟通的情况大于令牌的操作时差阈值时,令牌处于失效状态;
令牌有效性校验器根据令牌到令牌状态库获取令牌的当前状态,当令牌状态位为空,则判断此令牌无效或非法,返回浏览器身份校验失败的信息;当令牌状态位为1,判断令牌失效,返回浏览器身份校验过期的信息;当令牌状态位为2,判断令牌已退出系统,返回浏览器身份校验者已退出系统的信息;当令牌状态位为0,令牌有效性校验器读取令牌状态库中令牌对应的登入时间位和操作时间位,在操作时间位无记录的情况下用当前的系统时刻减去登入时间位记录的时刻得到令牌的操作时差,当令牌的操作时差大于等于令牌的操作时差阈值时,令牌有效性校验器将令牌状态位更新为1,返回浏览器身份校验过期的信息;当令牌状态位为0,令牌有效性校验器读取令牌状态库中令牌对应的登入时间位和操作时间位,在操作时间位有记录的情况下用当前的系统时刻减去操作时间位记录的时刻得到令牌的操作时差,当令牌的操作时差小于等于令牌的操作时差阈值时,令牌有效性校验器确定令牌有效,让浏览器访问服务器应用系统的信息通过,并且令牌有效性校验器更新令牌状态库中令牌对应的操作时间位为当前系统时刻的值;当令牌状态位为0,令牌有效性校验器读取令牌状态库中令牌对应的登入时间位和操作时间位,在操作时间位有记录的情况下用当前的系统时刻减去操作时间位记录的时刻得到令牌的操作时差,当令牌的操作时差大于等于令牌的操作时差阈值时,令牌有效性校验器将令牌状态位更新为1,返回浏览器身份校验过期的信息;
当浏览器发送给服务器应用系统的信息为登出操作时,令牌状态控制器识别登出操作请求中的令牌,通知令牌有效性校验器修改令牌状态库中该令牌对应的令牌状态位为2,令牌有效性校验器修改令牌状态库中该令牌对应的操作时间位为当前系统时刻的值。
有益效果
本发明实现对令牌的状态控制与识别;实现用户登入系统身份认证的动态有效期控制;实现用户操作系统时,令牌状态对用户的提示信息多样化,增加用户体验感;本发明解决对非法的令牌的安全威胁造成的数据资源泄露,提高了系统的安全性,本发明通过对网关上层应用入口进行改造实现,改造成本低,适合推广使用。
图1是本发明的系统结构图。
参看图1,实现本发明提供的浏览器和服务器架构身份认证令牌的状态控制方法与装置由令牌状态控制器1、令牌状态库2和令牌有效性校验器3组成;
本发明的令牌状态控制器1、令牌状态库2和令牌有效性校验器3安装于网关过滤器A的应用上层入口,保证浏览器B发送给服务器应用系统C的信息必须先通过本发明的令牌状态控制器1,保证服务器应用系统C发送给浏览器B的信息必须先通过本发明的令牌状态控制器1;
令牌状态库2用来记录令牌及令牌的状态,令牌记录的格式为:令牌位,加上令牌状态位,加上登入时间位,加上操作时间位;
令牌位,类型为字符串,记录令牌本身的字符串;
令牌状态位,类型为数字,当类型数字为0表示登入状态,当类型数字为1表示失效状态,当类型数字为2表示退出状态;
登入时间位,类型为数字,记录首次获取令牌的时刻;
操作时间位,类型为数字,记录浏览器最近一次访问服务器应用系统C的时刻;
令牌状态控制器1识别浏览器B发送给服务器应用系统C的信息,当浏览器B发送给服务器应用系统C的信息为登录指令时,令牌状态控制器1透传登录指令,服务器应用系统C的令牌签发器4收到登录指令后签发令牌并将签发的令牌返回给浏览器B,令牌状态控制器1截取并解析服务器应用系统C的令牌签发器4签发的令牌,并将令牌记录到令牌状态库2,同时记录令牌状态标志位为0,记录令牌初始获取时刻;
当浏览器B发送给服务器应用系统C的信息为业务操作请求,令牌状态控制器1识别业务操作请求中的令牌,通知令牌有效性校验器3根据令牌判断令牌的有效性,令牌有效性校验器3判断令牌有效性后对令牌状态库2记录的令牌状态进行更新;
由令牌有效性校验器3设定令牌的操作时差阈值,令牌的操作时差阈值决定令牌在浏览器B与服务器应用系统C间无信息沟通的情况下令牌有效的时间间隔,当浏览器B与服务器应用系统C间无信息沟通的情况大于令牌的操作时差阈值时,令牌处于失效状态;
令牌有效性校验器3根据令牌到令牌状态库2获取令牌的当前状态,当令牌状态位为空,则判断此令牌无效或非法,返回浏览器B身份校验失败的信息;当令牌状态位为1,判断令牌失效,返回浏览器B身份校验过期的信息;当令牌状态位为2,判断令牌已退出系统,返回浏览器身份校验者已退出系统的信息;当令牌状态位为0,令牌有效性校验器3读取令牌状态库中令牌对应的登入时间位和操作时间位,在操作时间位无记录的情况下用当前的系统时刻减去登入时间位记录的时刻得到令牌的操作时差,当令牌的操作时差大于等于令牌的操作时差阈值时,令牌有效性校验器将令牌状态位更新为1,返回浏览器B身份校验过期的信息;当令牌状态位为0,令牌有效性校验器读取令牌状态库中令牌对应的登入时间位和操作时间位,在操作时间位有记录的情况下用当前的系统时刻减去操作时间位记录的时刻得到令牌的操作时差,当令牌的操作时差小于等于令牌的操作时差阈值时,令牌有效性校验器3确定令牌有效,让浏览器B访问服务器应用系统C的信息通过,并且令牌有效性校验器3更新令牌状态库2中令牌对应的操作时间位为当前系统时刻的值;当令牌状态位为0,令牌有效性校验器3读取令牌状态库2中令牌对应的登入时间位和操作时间位,在操作时间位有记录的情况下用当前的系统时刻减去操作时间位记录的时刻得到令牌的操作时差,当令牌的操作时差大于等于令牌的操作时差阈值时,令牌有效性校验器3将令牌状态位更新为1,返回浏览器B身份校验过期的信息;
当浏览器B发送给服务器应用系统C的信息为登出操作时,令牌状态控制器1识别登出操作请求中的令牌,通知令牌有效性校验器3修改令牌状态库2中该令牌对应的令牌状态位为2,令牌有效性校验器3修改令牌状态库2中该令牌对应的操作时间位为当前系统时刻的值。
本文发布于:2024-09-25 02:24:36,感谢您对本站的认可!
本文链接:https://www.17tex.com/tex/3/84931.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |