想请教下菜单权限和接口权限分开设计的好处与坏处

Blade 未结 1 1720
嗨SpringCloud
嗨SpringCloud 剑者 2020-08-26 10:11
悬赏:10

1.  比较过其他的一些权限管理框架,一般都是糅合在一起,配了菜单,同时接口权限也配了。(一般是写在每个接口的@Permission相关的注解上,比如dept:add,部门的新增权限)

2.  查阅过作者之前的回答,接口权限与菜单权限分开是因为查数据库的性能。但是我也看到是用了缓存的,既然有缓存,那基本是不存在太大的性能差距吧。


3. 从用户体验的角度,如果每个租户自己去配接口权限,是很懵逼的。(当然,我们可以内置一套接口规则,但是他还是要主动选)


4. 菜单权限配了,对应的接口权限(接口权限细化到了绑定每个子菜单,也就是不能按菜单父级进行渲染,会导致列出一大堆的接口权限需要用户去点击)


5. 配了菜单权限,不配接口权限,那么安全隐患也是有的。


6.特别想请教一下作者大大是怎么考虑的,想学习一下,研究一下!


7.目前我们要适配成,配了菜单,就把接口权限在代码里自己给他配进去。


1条回答
  • 别人框架有的,我有,别人框架没有的,我也有。

    你说的每个接口增加@Permission注解,这个特性我是支持的啊。

    菜单和接口权限分离,可以随意配置组合, 我也支持,互不影响。

    至于到底是结合还是分离,这个交给用户自由选择,我反正都支持就是了。

    作者追问:2020-08-26 22:51

    看了作者大大的框架,受益良多,我举的例子可能不太恰当。您设计的接口权限可能需要先内定一套接口权限(在web页面添加一整套),然后才有resource_code。然后才是@PreAuth(hasPermission("dept:add"))这种。

    3 讨论(0)
提交回复