J L*_*Lee 6 authentication plugins cakephp login cakedc
通过GitHub浏览,我发现了一个非常强大的CakePHP插件,称为CakeDC用户,它具有许多功能(帐户验证,密码重置等),用于创建登录/身份验证系统.我喜欢它,因为它似乎是由一些实际的CakePHP开发人员编写的,并且它得到了很多更新但是在任何地方似乎都没有任何文档.我最近刚刚看到这个插件,因为我试图看看是否有一种比使用我自己的解决方案"滚动"更好的方法.所以我想知道这里是否有人有过这方面的经验,如果有的话可以指出一些体面的在线文档.
编辑自述文件底部有一些内容,但对我来说并不是太直观.
替代问题,如果你不使用这个插件,你在CakePHP中使用的登录/身份验证插件是否用于登录/身份验证?
我在使用 CakeDC 插件时遇到了同样的问题,其中很多插件很少/没有文档。
但是,它没有“零”文档,您可以在github 页面底部的 read me 中了解如何设置它。您还需要将其放入 AppController::beforeFilter() 方法中。
$this->Auth->authorize = 'controller';
$this->Auth->fields = array('username' => 'email', 'password' => 'passwd');
$this->Auth->loginAction = array('plugin' => 'users', 'controller' => 'users', 'action' => 'login', 'admin' => false);
$this->Auth->loginRedirect = '/';
$this->Auth->logoutRedirect = '/';
$this->Auth->authError = __('Sorry, but you need to login to access this location.', true);
$this->Auth->loginError = __('Invalid e-mail / password
combination. Please try again', true);
$this->Auth->autoRedirect = true;
$this->Auth->userModel = 'User';
$this->Auth->userScope = array('User.active' => 1);
if ($this->Auth->user()) {
$this->set('userData', $this->Auth->user());
$this->set('isAuthorized', ($this->Auth->user('id') != ''));
}
Run Code Online (Sandbox Code Playgroud)
此外,您还需要一个isAuthorized()函数,就像这样简单的函数即可:
public function isAuthorized() {
return true;
}
Run Code Online (Sandbox Code Playgroud)
此外,您需要允许“登录”操作(这将涉及编辑插件文件)。只需将“登录”添加到$this->Auth->allow()in中即可users_controller.php。
| 归档时间: |
|
| 查看次数: |
3025 次 |
| 最近记录: |