代码示例

前台认证
// 检查登录状态 $user = Session::get('userinfo'); if (!$user) { return redirect((string) url('member/login')); } // 使用 ControllerHelpers trait $user = $this->_session('userinfo');
后台认证
// AdminAuth 中间件 // role=1: 超级管理员 (全部权限) // role=其他: 普通管理员 (检查 authurl 白名单) // 在控制器中使用 public function __construct() { parent::__construct(); $this->checkAdminAuth(); }

认证说明

前台认证

1. 使用 Session 存储用户信息

2. 登录时调用 Session::regenerate() 防止会话固定

3. 使用 ControllerHelpers trait 的 _session() 方法获取用户信息

后台认证

1. 使用 AdminAuth 中间件

2. 超级管理员 (role=1) 拥有全部权限

3. 普通管理员需要检查 authurl 白名单

密码安全

1. 使用 bcrypt 哈希存储密码

2. 支持 MD5 自动迁移到 bcrypt

3. 支持 password_needs_rehash() 自动升级