如何保护cakePHP中所有控制器中的所有管理操作

Gau*_*rma 2 security routes cakephp admin cakephp-1.3

我正在使用cakePHP v 1.3在Windows(XAMPP)上开发一个应用程序.

大多数控制器都是在启用管理路由的情况下烘焙的.我想通过登录页面保护每个控制器的管理操作.我怎么能这样做而不重复?

该问题的一个解决方案是"我在每个控制器的admin_index操作中检查登录信息",然后相应地显示登录屏幕.
有没有更好的方法呢?

admin(http:// localhost/app/admin)的详细UR​​L 指向用户控制器的index_admin操作(在routes.php文件中为此创建了一个新路由)

dec*_*eze 6

使用身份验证组件.您可以使用以下内容为管理路由设置它:

// AppController::beforeFilter
function beforeFilter() {
    if (isset($this->params['prefix']) && $this->params['prefix'] == 'admin') {
        $this->Auth->deny('*');
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

仅检查index操作是没有意义的,这只是默默无闻,而不是安全性.AuthComponent将检查每个页面加载的权限.