【发布时间】:2017-08-13 15:23:52
【问题描述】:
我正在努力使用身份验证组件。 我的身份验证在插件内部进行管理。 在插件的 AppController.php 中我设置了这个:
$this->loadComponent('Auth', [
'authenticate' => [ 'Form' => [ 'userModel' => 'BasUsers' ] ],
'loginAction' => [ 'controller' => 'BasUsers', 'action' => 'login', 'plugin' => 'Basic' ],
'userModel' => 'BasUsers',
'loginRedirect' => '/pages/home',
'logoutRedirect' => [ 'controller' => 'BasUsers', 'action' => 'login', 'plugin' => 'Basic' ],
'unauthorizedRedirect' => [ 'controller' => 'pages', 'action' => 'not-authorized' ],
'authError' => false,
'authorize' => ['Controller'],
]
);
会话到期时,我无法强制注销(重定向到登录页面)。
当会话结束时,尝试 $this->request->session()->read( 'Auth.User.bas_users_role_id' ) 返回 null,但执行控制器/动作。
我错过了什么? 谢谢。
【问题讨论】:
-
检查授权允许功能...您可能允许控制器中的所有操作。像 $this->Auth->allow(); .restricting/removing 它可能会解决您的问题。
标签: session authentication cakephp logout