前后端分离,权限控制,按钮权限控制

2019-03-04 14:38:11 +08:00
 q149072205

比如有一个页面 a.html 有“导入,导出,编辑”三个按钮。 不同的人打开页面 显示不同的权限按钮,

1.不是前后台分离的 可以给这个页面一个权限对像去控制(前台页面,但用了后台代码): @if(pagePermissions.import) {导入} 。。。

2.如果前后分离的话。 那我先从接口请求到当前用户的权限,再去控制按钮显示,这样感觉不牢靠啊,一定要先请求到当前用户的按钮权限,再去控制,这样所有按钮权限都暴露了。而且有些用户没有当前页页的访问权限,还要判断不能访问.

5678 次点击
所在节点    前端开发
4 条回复
overwhats
2019-03-04 17:36:47 +08:00
搞个单独接口来返回用户信息,拿到后缓存在本地。所有页面的权限都可以根据这个用户信息来配置。
其次后台肯定还是要有权限控制的,捕获到接口返回‘无权限’的错误,做相应处理就行,并且更新用户信息。
q149072205
2019-03-05 13:57:28 +08:00
@overwhats 你意思,一登录系统后,获取当前用户所有的菜单权限,然后缓存在浏览器本地?然后打个哪个页面,再从缓存里去取权限,这样会不会不安全啊。
overwhats
2019-03-08 08:57:31 +08:00
@q149072205 为啥不安全,接口的权限已经被后台卡死了(后台通过 token 判断),即使前端有人恶意造假,最多也就看到个页面骨架,数据的展现和操作都是通过 api 完成,绕不过去的。
blue0125
2019-03-18 21:24:55 +08:00
最终的掉用接口权限还是要后端有控制。前端只是做显示隐藏的控制

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/540844

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX