CakePHP身份验证与前缀路由
发布时间:2020-12-13 21:35:47 所属栏目:PHP教程 来源:网络整理
导读:我正在建立一个Cake PHP网站,我希望有3个部分: 公共区域 用户区 管理区域 我在routes.php中设置了前缀路由,看起来像 Router::connect('/user/:controller/:action/*',array('prefix' = 'user','user' = true));Router::connect('/admin/:controller/:action
我正在建立一个Cake
PHP网站,我希望有3个部分:
>公共区域 我在routes.php中设置了前缀路由,看起来像 Router::connect('/user/:controller/:action/*',array('prefix' => 'user','user' => true)); Router::connect('/admin/:controller/:action/*',array('prefix' => 'admin','admin' => true)); 我想要它所以任何带有user_前缀的动作都将重定向到登录屏幕,如果尚未登录并且用户类型是’正常'(侧面问题:用户可以正常:P)并且任何具有admin_前缀的操作也会重定向但需要用户类型的管理员. 我开始尝试使用Auth组件,但它似乎非常不灵活,而ACL似乎超过顶部.谁能提供一些关于实现我想要的最佳方法的建议? 解决方法
Auth组件应该具有足够的灵活性.
你可以像这样做一个beforeFilter(): // I think it's params['prefix'],might be different // vvvvvvvvvvvvvvvv if (isset($this->params['prefix'])) { $this->Auth->userScope = array('User.type' => $this->params['prefix']); } 您还可以根据需要将isAuthorized()函数添加到模型或控制器,以执行更高级的身份验证.见http://book.cakephp.org/1.3/en/The-Manual/Core-Components/Authentication.html#authcomponent-variables. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |