1.概述
权限系统实际上就是判断访问用户的合法性,有效性以及对访问资源权限的检查。
2. 权限系统要素
资源:授权访问。角色:访问资源的证书,定义了资源访问的界限,作为一个粗粒度的资源访问权限控制。主体:访问资源的对象,通常为登录用户。权限:访问资源的具体限定,权限可以细分为操作权限和数据权限。 - 操作权限:体现在2个方面,其一:通过界面来体现,具备操作权限的人才可以在界面上看到对应资源;其二:访问指定资源时进行权限检查。 - 数据权限:主体只能看到/操作他具备访问权限的资源,数据权限的设计可以通过数据库字段管关联来实现。另外,可以根据权限系统设计的复杂性来决定权限控制粒度。可以将权限独立出来和角色进行组合,理解为通过角色和权限双重身份来限定主体授权访问资源;也可以将权限与角色关联,通过角色来定义主体/分组的权限。分组:通常对应于现实事物中的部门,主体属于分组,为分组定义角色。 3. 常用权限框架(1)shiro JAVA实现的开源通用权限框架,不与特定框架进行绑定。功能全面,使用非常灵活。(2)Spring Security
Java实现开源权限框架,与Spring框架绑定。功能强大,但是只能在Spring框架中使用。 【参考】 关于权限菜单的设计 系统权限设计思路