JWT令牌泄露解决方案-避免盗用后被恶意使用
解密:使用互联网大厂的产品时经常遇到这个情况
比如阿里云或者淘宝,你现在登录了然后换个网络或者地域就需要重新登录
就是对应的token令牌,不只简单的算法加密,还包括了客户端属性、地理网络位置信息等,一起组成一个token令牌
如何避免token令牌泄露被恶意使用
ip绑定方式
生成token的时候,加密的payload加入当前用户ip。
拦截器解密后,获取payload的ip和当前访问ip判断是否同个,如果不是则提示重新登录
优点:服务端无需存储相关内容,性能高,假如用户广州登录,泄露了token给杭州的黑客,依旧用不了
缺点:如果用户用使用过程中ip变动频繁,则操作会经常提示重新登录,体验不友好
当然也可以让用户开启安全模式和非安全模式,让用户自己知道这个情况,一些区块链、比特币交易所里面就会让用户自己选择控制这个token令牌安全是否和ip、终端、地理网络信息进行绑定
比如这样传
{ id:888, name:'小D', ip:“128.23.12.31” expire:10000 } funtion 加密(object, appsecret){ xxxx return base64( token); } function 解密(token ,appsecret){ xxxx //成功返回true,失败返回false }
本文作者为DBC,转载请注明。