权限管理,一般指根据系统设置的安全规则或者安全策略,用户可以访问而且只能访问自己被授权的资源,不多不少。权限管理几乎出现在任何系统里面,只要有用户和密码的系统。
从控制力度来看,可以将权限管理分为两大类:
1,功能级权限管理;
2,数据级权限管理。
从控制方向来看,也可以将权限管理分为两大类:
1,从系统获取数据,比如查询订单、查询客户资料;
2,向系统提交数据,比如删除订单、修改客户资料
数据权限是在功能权限的基础上面进一步的扩展,比如可以查看订单这个视图(页面)属于功能权限的范围,但是可以查看这个视图中的哪些订单就是数据权限的工作了。
由于目前功能权限设计已经很成熟了,因此本博客不再讨论在功能模块上如何进行权限管理,而是讨论如何实现在数据级的权限管理,这里就涉及到,用户向系统提交数据,系统同数据库之间进行数据交流时的操作。
1.作用:
数据权限规则用来过滤用户在某条数据上的权限。即约束用户对具体的数据的操作权限,此约束包含:不可修改、不可删除、不可查看、不可修改。
2.设计概要:
考虑到数据级权限管理需要大量维护数据约束条件,因此在web页面中需要进行复杂的数据规则条件的约束的完成,后台数据也需要进行复杂的数据规则权限的封装和解析。就与以上原因,在本系统中处理复杂数据拼接封装、解析时将大量、普遍使用JSON对象处理。
2.1 总体思想:
数据规则的设计初衷是为了达到针对不同用户组的用户,过滤特定数据的目的