如何在一个系统中设计权限控制机制(1)

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

权限控制是一个成熟的应用系统中不可或缺的一部份,如何设计一个既能满足一般需求,又能不断扩充,并且应用简单完美的权限机制是我所面临的一个问题,现在让我开始吧。

首先,定义一下权限系统的作用,一句话:“我能不能做什么”。

有三个要素,

1.我 定义为 person

2.能不能 定义为 true/false

3.做什么 定义为 function

先定义出一个应用接口

public interface ISecurity{

/*判断一个用户是否具有某项权限*/

public boolean can(int personid, int functionid);

/*给某个用户设置权限*/

public void setSecurity(int personid, int functionid, boolean can);

}

经过具体的实现,可以实现最基本的操作。比如定了三张表

person(id, name) func(id, name) security(person, func)

每一个“我”针对于每一个“做什么”都定义一下“能不能”

接着,问题来了,是否一定要对每一个功能都定义一个能不能?

答:这个问题看你的喜好定了,你可以定只有明确被允许,否则都是不被允许的;也可以定只要没有明确否定,其它都是被允许的。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航