ThinkPHP 3.0 + Rbac 应用示例
此为Rbac在ThinkPHP中应用的实例,用到了ThinkPHP的Rbac扩展,样式比较难看,大家将就的看。此例子旨在学习交流使用,勿用于实际项目中。 Rbac简单说来就是基于“角色”的权限控制,所有用户都属于某一用户组,之后给用户组授权,则组内成员都有相应权限。而ThinkPHP的Rbac的核心,即为在每个操作前都进行权限验证操作,用_initialize方法实现。而权限位则在登录时写到session中,如果对权限的实时性要求非常高,也可以设置每一次验证都到数据库里查。 程序源码: http://vdisk.weibo.com/s/fOMnN 相关配置项: 'USER_AUTH_ON' => true,//开启验证 'USER_AUTH_TYPE' => 1,//验证类型 'USER_AUTH_KEY' => 'uid', // REQUIRE_AUTH_MODULE 需要认证模块,不设置即为除了NOT_AUTH_MODULE中的模块外全部验证 'NOT_AUTH_MODULE' => 'Public', 'USER_AUTH_GATEWAY' => '/Public/login', //认证网关 // RBAC_DB_DSN 数据库连接DSN,默认使用配置文件 'RBAC_ROLE_TABLE' => 'think_role', //角色表名称 'RBAC_USER