后台权限模块

前段时间做了后台权限模块,记录下来,留待后续改进。

获取权限

在用户登陆后,根据用户的UID获取权限数组

1.根据uid去读取权限缓存文件,获得权限数组。若未获得,则进行下一步(ps:对用户的权限设置了一个缓存文件)。

2.通过用户uid去组与用户关系表中,获取用户所属分组(ps:所有分组)。

3.根据所属分组,去组与权限关系表中,获取组权限,在查询到的组权限中,对allow,deny的权限进行分组。

4.生成权限缓存文件,最后把权限数组返回。

匹配权限

获取权限后,通过权限匹配,对路由进行限制;权限和路由格式为eg: orders:tbk:*;

匹配权限后,对allow 类型相对应的模块(侧边栏,顶栏)即可开放

后台权限模块
在页面访问时,通过路由与权限数组进行匹配,成功返回true,失败返回false,并且终止访问。