首页 > RBAC 角色-权限-用户 对应关系 到底哪一样说法才是正确的?

RBAC 角色-权限-用户 对应关系 到底哪一样说法才是正确的?

我去看thinkphp的教程,看到他们说的RBAC用户和权限又可以直接对应的,感觉实在是难以理解。问了一些人,发现他们理解得各自不相同。

第一种理解:
用户和角色对应,角色和权限对应,用户和角色一对一,角色和权限一对多。

第二种理解:
用户角色对应,角色权限对应,用户与角色一对多,角色和权限一对多

第三种(thinkphp)
用户角色对应,角色权限对应,用户与角色一对多,用户和权限又有对应关系(节点)。

Discuz的是用户和角色(用户分组)一对一,角色和权限就一个表,用户不跟权限有对应关系,总共就2个表,user和group,这样非常好理解,但是thinkphp解释的RBAC却并不是这样。


RBAC只是提供了一种模型,需要根据你具体的业务来设计。所以上面你提到的三种,除了用户和权限直接对应外,其实都可以的。角色和角色之间如果还有继承关系呢?互斥关系呢?是不是更复杂了?最终一句话,RBAC可以提供给你一种思考的模型,但不是照搬,关键还是结合业务。


传送门 http://www.thinkphp.cn/document/313.html 应该会对你有所帮助...这类问题可到 TP社区搜索答案.


从我的个人使用理解来说,我觉得可以做到你说的
第二种理解:
用户角色对应,角色权限对应,用户与角色一对多,角色和权限一对多
其实我觉得这不需要理解那么深吧,其实一般情况只要自己控制好,能实现第一种理解就足够实际使用需要了!
我同意楼上的意见,RBAC应该只是一种模型,怎么用,要结合业务逻辑,自己在设计时进行控制和实现。

【热门文章】
【热门文章】