之前记得唠叨老大说过用位运算,也就是二进制表示。这样每个模块都对应着一个权限,用它来和groupid的总权限相对比,得到是否有该权限。
好像八位的总权限,就能对应上非常多的模块了,2的8次方。所以已经足够用了。
大家都是怎样实现的?
权限管理问题也是比较困扰这里挺多人的。所以欢迎大家来各抒己见,讨论讨论。让彼此有个借鉴吧。
5 个解决方案
#1
我的想法是这样:
user表
group表
private表
usrid->groupid->private。其中private表里面,记录了所有模块和它们对应的权限。而group表里得到的权限是权限的总汇(按位或运算来增加权限)。
相关位运算的资料:http://shenzm.sosoo.net/start/clangu/c92.htm
user表
group表
private表
usrid->groupid->private。其中private表里面,记录了所有模块和它们对应的权限。而group表里得到的权限是权限的总汇(按位或运算来增加权限)。
相关位运算的资料:http://shenzm.sosoo.net/start/clangu/c92.htm
#2
大家参与啊
#3
http://community.csdn.net/Expert/topic/2923/2923785.xml?temp=.2994654
#4
那个帖子说了等于没说。
#5
唠叨最近怎么不在了,是不是升仙了……
#1
我的想法是这样:
user表
group表
private表
usrid->groupid->private。其中private表里面,记录了所有模块和它们对应的权限。而group表里得到的权限是权限的总汇(按位或运算来增加权限)。
相关位运算的资料:http://shenzm.sosoo.net/start/clangu/c92.htm
user表
group表
private表
usrid->groupid->private。其中private表里面,记录了所有模块和它们对应的权限。而group表里得到的权限是权限的总汇(按位或运算来增加权限)。
相关位运算的资料:http://shenzm.sosoo.net/start/clangu/c92.htm
#2
大家参与啊
#3
http://community.csdn.net/Expert/topic/2923/2923785.xml?temp=.2994654
#4
那个帖子说了等于没说。
#5
唠叨最近怎么不在了,是不是升仙了……