yii控制器中的访问控制过滤规则

时间:2010-10-18 21:15:20

标签: yii

在yii控制器中编写访问控制规则时,可以设置可能的参数 规则是“行动” - 设定规则适用的行动; '用户','角色'等。

现在,yii指南(pdf)和参考(我有chm文件)都说可以设置, 此外,规则应适用于控制器的控制器ID。

现在,如果我们已经将这些规则放在控制器类/文件中,我们将如何才能实现 将一些其他控制器(当前的控制器除外)作为参数放在这里,意思是 我们在这里提到的其他控制器怎么样?如何知道有适用于它的规则,因为它是用完全其他的控制器类/文件编写的?

如果控制器在其外部写入,控制器如何知道提及它的规则, 在一个完全不同的控制器?

3 个答案:

答案 0 :(得分:3)

您可以使用此方法的一种情况是,如果您在基本控制器中设置了一些规则并对其进行了扩展。也许您有一些仅限管理员的控制器,那么您可以通过将这些规则添加到所有其他控制器扩展的基础控制器中来保存一些代码?

此外,如果您将行为附加到控制器,可能会使用此功能吗?

我从来没有使用过这条规则,我只是假设。 :)

答案 1 :(得分:3)

您可以挂钩到CWebApplication :: beforeControllerAction()以在控制器获取请求之前应用过滤器。

〜thinkt4nk

答案 2 :(得分:0)

亲爱的朋友, Yii为我们提供了3种类型的用户组 (*) - 所有(客人), (@) - 注册, (admin) - 对于超级用户,我们可以从Controller / public function accessRules()

中使用它

添加,如果你想自定义用户权限,你也可以使用 1)TTP://www.yiiframework.com/extension/yii-user-management/ 你也可以使用最适合定制的“Yii-Rights” 2)http://www.yiiframework.com/forum/index.php?/topic/10556-extension-rights/page_ P 的_51869#entry51869

方面, Bhavik Chauhan