posts - 176, comments - 240, trackbacks - 0, articles - 7

[导入]权限系统(4)--resource

Posted on 2005-11-26 10:48 canonical 阅读(644) 评论(0)  编辑  收藏 所属分类: 设计理论

权限管理中进行数据访问控制,其基本模式如下
    operation target = selector(resource)       
    selector = user selector + auth filter
这里需要对resource的结构,以及选择算子的显式建模。selector必须允许权限系统追加filter,例如
IDataSource包中所使用的Query对象。
       sql语言的表达能力有限, 作为选择算子来使用有时需要resource作一些结构上的调整,增加一些冗余的字段。例如表达一段时间内的利率,我们需要使用from_date和 to_date两个字段来进行描述,其中to_date的值与下一条记录的from_date相同。
     value     from_date         to_date
     0.01    2003-01-01        2003-05-01
     0.012   2003-05-01        2004-01-01  

如果表达一条航线中的多个阶段,我们可能会在每条记录中增加起始站和终点站两个字段。
      更重要的一个常见需求是树形结构在关系数据库中的表达。为了能够直接操纵一个分支下的所有记录,在层次固定的情况下,我们可能会增加多个分类字段,例如数 据仓库中的层次维度。在层次数目不确定的情况下,我们将不得不使用层次码或者类似于url的其他方案,通过layer_code like '01.01.%' 之类的语句实现分支选择。为了限制选择的深度,我们可能还需要layer_level字段。基于层次码和层次数,我们可以建立多种选择算子,例如包含所有 直接子节点,包含自身及所有父节点等等。


只有注册用户登录后才能发表评论。


网站导航: