1

我试图在 Yii 中实现 RBAC(使用权限模块)。

当尝试授权未经身份验证的用户(访客)时,CWebUser调用CDbAuthManager

$access=Yii::app()->getAuthManager()->checkAccess($operation,$this->getId(),$params);

CDbAuthManager然后尝试获取用户的 authassignments

$assignments=$this->getAuthAssignments($userId);

问题是,因为用户是来宾,$userIdnull,并且$assignments是一个空数组。因此,我不能授权来宾用户执行任何操作(除非声明 allowedActions())

我究竟做错了什么?

4

1 回答 1

1

确保将 Guest 添加到配置中的 defaultRoles。还要确保 Guest 角色有一个 bizRule ,其中包含表达式

返回 Yii::app()->user->isGuest

于 2012-10-30T13:51:12.633 回答