为了账号安全,请及时绑定邮箱和手机立即绑定

询问 权限设计,找寻最佳解决方案灵感

询问 权限设计,找寻最佳解决方案灵感

LEATH 2018-10-25 05:06:19
一般基于角色的权限,来生成用户拥有的菜单目录,这是惯常做法,现在需要把权限粒度深化到 添加、修改、删除、浏览,即某一个当前登录用户,加载了他能操作的权限菜单。我先贴点代码,大家便晓得:Select FunID, FunName, ParentID, PageUrl From dbo.FunctionsSelect RoleFunID, RoleID, FunctionsID From dbo.RoleFunsSelect RoleID, RoleName From dbo.RolesSelect UserID, LoginID, LoginPwd, UserName, RoleID From dbo.Usersselect * from Functions a inner join RoleFuns b              On a.FunID = b.FunctionsID              Where b.RoleID = 2之后,还要对他操作的页面添加控制,有的页面只有浏览、添加,有的页面只有添加、修改,但不给删除,这种细化 大家觉得能在以上基础进行扩展吗?我是WinForm程序!  
查看完整描述

2 回答

?
犯罪嫌疑人X

TA贡献2080条经验 获得超4个赞

建议添加一张表,用于存储功能模块,与操作功能表(即定议的添加,删除,修改)关联起来,这样就可以赋于一个角色在某一模块只有相应(添加,删除,修改就可以灵活配置)的功能。

查看完整回答
反对 回复 2018-10-29
?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

一般我的做法是设计这些表(栏目表,权限表,角色表,用户表)

权限表(权限ID,权限名,父权限ID,深度,权限易记代码,栏目ID(为可空))。加栏目ID这样做是把权限与栏目关联起来,这样用户登录时直接生成他拥有的权限。做成树状是为了易于管理,可以清楚的知道每一个模块底下拥有的权限。然后在WINDOWS把权限易记代码与每个功能权限相关联起来这样就行了。。


查看完整回答
反对 回复 2018-10-29
  • 2 回答
  • 0 关注
  • 270 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信