工作中开发一个网站,设计有所变动,原计划是从第三方系统获取权限,现在变成了我们的网站自己要注册用户,并且要进行权限的控制,这样,我们就要在我们的系统上完成一个三级角色权限的角色权限管理系统。
准备从网上找一个直接介绍使用spring mvc 实现的角色权限管理系统来进行参考,找了一圈发现,要么太简单,要么太复杂。
我们的系统不涉及多级部门之类的内容,只包括平台管理员,组织管理员,普通用户三部分,其中组织相当于部门。那么好,现在只是参考部分文档的实现方式,当时权限系统自己设计。
故事:不同级别的用户登录后要能选择自己当前登录的组织,并在该回话中进行自己能够进行的操作。
细化:
最高级别用户(平台管理员)从前台登录后要跳转到后台系统,不能在前台进行操作。
其余两个级别的用户(组织管理员和普通组织用户)登录后要确认自己当前会话所登陆的组织,以便登陆后的操作获取组织信息和权限。
组织管理员登陆后要能看到审核相关的列表(页签),并能进行相关的审核审批操作;同时也能进行普通用户的操作。
普通用户登陆后能够看到自己的列表和自己数据、订单的查看和操作列表(页签),并能对自己创建的内容进行更新、删除等管理操作。
设计:(假设一个用户在使用不同组织的身份时,必须都是一个角色,即如果该用户是一个组织的管理员,那么同时他登录其他组织时也是以管理员身份登录,而不会一会是管理员一会是普通用户。如果是后一种情况,则需要在用户-组织映射表中加入该映射的角色)
用户表:存储用户数据(注册时添加)
用户-组织映射表(存储用户与组织的管理)
组织表(存储组织信息)
系统角色表(存储系统内角色,按照当前规划应该具有三个角色:平台管理员,组织管理员,普通用户)
角色权限表(该表存储已经创建的角色所能进行的操作<可能以该操作触发的url的方式存储>,以及展现的页面等)
【===============================================】
以上为今天的数据库设计,代码实现可能参考一些spring mvc注解的方式进行实现。
可能参考资料:
《blog.csdn.net/ycyk_168/article/details/18456631》
近期评论