商业版boot 2.5.0 垂直越权问题

Blade 未结 1 888
232700783
232700783 剑圣 2022-03-14 09:50

一、该问题的重现步骤是什么?

1. 前提:有两个用户,具有的按钮权限不同,例如:同一个菜单下,张三有新增,修改,删除权限,李四只具有查看权限;
2. 打开浏览器第一个标签页,登录张三的账号,打开菜单,停留在页面不要有其他操作;
3.新打开另一个浏览器标签页,登录李四账号。切换到第一个窗口,直接点击新增(不要刷新页面,刷新页面后无法重现),输入新增信息并提交;


二、你期待的结果是什么?实际看到的又是什么?

期待结果:李四添加不成功。

实际看到:李四添加成功,创建人是李四。


三、你正在使用的是什么产品,什么版本?在什么操作系统上?

商业版boot2.5,win10,chrome 98


四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

1条回答
  • 2022-03-15 00:55

    目前的系统设计分为菜单权限以及接口权限。

    你所操作的是菜单权限层面,因为现在是前后端分离的架构,打开页面不刷新,换一个tab登录其他的账号,会把本地缓存的token替换掉,如果后端不加限制,是可以直接成功的。


    如果你需要在这种场景,李四添加不成功,则需要额外配置一个接口权限,具体可以看文档5.5章节。

    配置完毕之后达成的效果就是:新增tab登录了李四的账号,张三的界面也没有刷新,重新操作之后点击,后端接口判断请求用户为李四,李四不具有操作此接口的权限,则会直接拦截返回未授权。

    0 讨论(0)
提交回复