1、数据库里创建用户表 角色定义表 用户角色中间表 用来创建用户和给用户分配角色
2、数据库里创建权限资源定义表 定义出系统内可访问资源有哪些 比如菜单 导航 模块 按钮 非可视化权限等
3、为角色分配这些权限资源 这样只要有这个角色的用户 就有了这个角色绑定的权限
4、用户登录需要拿到用户的userId和对应的roles 存到session里 这样只要用户登录 就知道他的谁 有哪些角色
5、同时需要在cache中存放一个角色对应的权限定义列表 这样就能轻松从cache里知道 哪个觉得有哪些权限可以访问
6、上拦截器 在访问的时候拦截到当前是哪个用户 找到session里他的roles列表 通过 roles列表去cache里拿到他的所有可访问权限 在跟现在拦截到的要访问的资源对比一下
7、包含就能通过权限校验 不包含就是无权访问
8、其他页面元素权限自定义标签实现之