权限管理中 如何进行多表操作

03-09-03 progame
我现在的权限模型是基于RBAC的简化版

简而言之 就是树状的privilege + group + user

现在假设我要得到一个用户对于某个操作是否有权限

那么我应该如何操作呢?

它的过程如下:

先在UserGroup中找以对应的group

然后对应于group,查找是否在groupprivilege中存在记录

现在我的问题在于,我是应该按照上面的方式去代码实现,还是直接利用存储过程或视图实现

代码实现的话速度肯定很慢,首先得到一个group的list,然后对于list的每个单元再次进行查找

请问大家在这种情况下怎么办?

谢谢

zyplotus
2003-09-05 16:30
我现在要做的跟你很是类似。

一个user对应些访问控制组viewer_group,一个viewer_gruop 又对树状结构的栏目拥有些权限。

我现在是想弄明白设计问题。

当为viewer_group分配对栏目的权限时,添加一个栏目

1。只拥有对此栏目的权限

2。可以拥有它及它的所有子栏目的权限

两种方式各有漏洞,因为栏目是树状的。

请问你是如何想的?

多谢!

猜你喜欢