权限

分为几个概念:  
  1.User——用户  
  2.UserGroup——用户组  
  3.Permission——权限项  
  4.Project——项目  
  5.State——状态,一个项目可有n个状态组成  
  6.Process——处理项,从属于State,即一个State中可进行多种处理  
  7.Role——用户角色  
        权限方面的思路就是将State与Role绑定,将User加入到Role中,通过Role-State  
  关系判断用户是否有进入State操作Process的权限。  
        因为设计出发点是一个便于开发的框架,所以开发的过程大致是这样的:  
  a.分析业务需求,用一个Project进行描述  
  b.将Project的完成分成几个步骤,每个步骤对应一个State  
  c.确定每个State有哪些处理要求,构建Process  
  d.分析用户权限,定义Role,并为每个State确定Role-State关系  
  e.将User加入Role  
        也许有网友认为Role的功能与UserGroup重复,而Permission没有使用到。我的考虑  
  是这样的:  
        实施HARVEST时,我曾遇到这样一个问题,HARVEST将使用者分为管理员和用户两类,  
  用户可通过设定角色无穷分类,而管理员确无法细化。为此我认为在角色之上,应该从  
  系统级上进行一个用户分类,即UserGroup。UserGroup是系统识别的,对用户透明。  
  Permission的考虑也类似,Permision与User、UserGroup都可建立联系,目的在于让系  
  统在方法调用时可判断识别,一般我用facade模式构建一个个模块,模块入口类统一控  
  制Permission。这样的设计是为了使用户在定义权限时简单化,只要定义将不同的User  
  加入到不同的Role就行,同时也避免系统因为用户权限使用的过于简单,导致系统级权  
  限管理的弱化。  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值