在“使用 Yii 1.1 和 PHP5 的敏捷 Web 应用程序”一书中,RBAC 是通过 authassignment 和 bizrule 实现的。这应该支持在每个项目中授予用户不同角色的可能性。
但是,只要在特定项目中为用户分配了一个角色,就会将一条新记录添加到具有该角色和该用户的 authassignment 表中。由于有 3 个角色(所有者、成员、读者),因此不允许将用户分配给超过 3 个项目,并且必须在这些项目中为用户分配不同的角色(否则将违反完整性约束)。
有任何想法吗?这真的是书中RBAC实现的缺陷吗?
谢谢