关于系统权限设计 主要是逻辑结构的问题。

操作系统原理一类的书大概都会有
■网友
可以参考下 MS Server中的权限设计,引入用户组和角色俩个概念,从俩个维度进行管理。然后授权细化到每一个原子操作上。
■网友
一个需要流转管理的系统,不论是给内部使用,还是合作伙伴用,都不可避免的遇到一个问题:如何应对不同流转过程的帐号及帐号对应的权限设计
如果我们把流程写死了,以应对一个甲方,一旦产品需要拓展市场化,各个部门和合作关系,则需要灵活配置,以便软件系统能够应付。
常用的帐号及权限,市面上都已形成规范化。
诸如订单系统、服务管理系统、SCM系统等往往在一个发起单后,经历不同的岗位(部门)进行流转,通过普通的方式往往很难满足:
以下是一种设计思路:
1新建帐号
关于系统权限设计 主要是逻辑结构的问题。

2帐号管理
关于系统权限设计 主要是逻辑结构的问题。

3权限组合管理:新建一个权限组,并且将各种权限中该流转中需要的权限进行统一配置
关于系统权限设计 主要是逻辑结构的问题。

4帐号对应的权限组
关于系统权限设计 主要是逻辑结构的问题。

对起单的类型做统一设置,针对该类型,定义不同的流程
1 设置表单类型:新建表单类型,选择状态流,并定义下一步状态,直到设置完成
关于系统权限设计 主要是逻辑结构的问题。

2 设置该流程对应的帐号
关于系统权限设计 主要是逻辑结构的问题。

PS:
通常情况下,帐号的流与权限设置,往往是分开的。这样导致在使用配置过程中,存在滞后不够灵活,用权限组合的方式,固定住帐号的实际权限;又通过状态流对应的权限,来固定每个帐号对应的流程权限。
达到的效果:
每个表单的流程对应的权限是不一样的,即不同帐号看到的表单是不一样的
关于系统权限设计 主要是逻辑结构的问题。

每个帐号对应的操作权限又以权限组合的能力为准
示例:起单的帐号,只能操作起单
关于系统权限设计 主要是逻辑结构的问题。

示例:审批的帐号,只能操作审批
关于系统权限设计 主要是逻辑结构的问题。

详情请查看,如何设计流转产品的系统权限
我有一个志向,建立一个“瘦”产品的群,主要是解决产品设计中的一个瘦弱的部位(PM应该放弃只关注风口的高尚大的玩意,应该脚踏实地做产品)
【关于系统权限设计 主要是逻辑结构的问题。】 QQ群:66805777

■网友
如果我没有理解错,你需要的是RBAC(Role-based_access_control),看看这个Role-based access control 一般的做法是:给用户一个role属性,不同的role属性有不同的操作权限。在后台分发操作的地方(MVC中一般是controller,更加干净的做法当然是aop,这是后话),统一检查是否有操作权限即可。


推荐阅读