1. 需求背景说明
用户登录前与登录后的JSESSIONID是一样的,这种情况会导致如果用户登录前的JSESSIONID是黑客伪造传递的,那么当用户登录之后,由于JESSIONID并没有发生变化,黑客可以拿着这个自己伪造的JESSIONID直接访问Smartbi而无需登录。
2. 功能说明
防止会话固定攻击,登录成功后添加一个新的cookie作为后续登录凭证。
3. 使用说明
3.1. 部署插件包
部署环境要求:JDK1.8及以上,适用版本:Smartbi V6及以上版本。
扩展包:SessionFixationHandler.ext
部署详细说明,参考Wiki链接:部署扩展包
3.2. 效果展示
当用户使用带参数的链接访问请求,拦截请求。
当登录成功后,会刷新 LOGIN_CREDENTIALS 的值 。
这样,其他人只拿着这个JSESSIONID也无法访问Smartbi。
4. 注意事项
无,部署插件包之后即可生效。