ThinkPHP的RBAC权限控制
来源:互联网 发布:安卓登录注册界面源码 编辑:程序博客网 时间:2024/06/05 05:57
ThinkPHP的RBAC权限控制:
登录验证:
if($username == C('RBAC_SUPERADMIN')){ //判断是否为超级管理员
session(C('ADMIN_AUTH_KEY'),true);//超级管理员保存为true
}
session(C('USER_AUTH_KEY'),$id); //把用户登录id保存到session中,用于下面检测权限
$rbac = new \Org\Util\Rbac; //导入RBAC类
$rbac->saveAccessList();//根据用户登录的id检测权限,保存到session中
//var_dump($_SESSION);打印生成的session用于调试
注意:
saveAccessList();检测权限,生成的session为空:
1、如果有超级管理员生成的session,则该函数返回空,
2、注意think_node节点表的level值(1、2、3)层级关系必须正确,
3、注意think_access权限表的node_id必须有从上至下的层级关系(如,每个角色必须有level=1的节点),所以在配置角色权限保存时注意,
4、think_role角色表的status值为1,状态开启
配置文件:定位到Home-Conf-config.php
//Rbac配置
'RBAC_SUPERADMIN' => 'admin', //超级管理员名称
'ADMIN_AUTH_KEY' => 'superadmin', //超级管理员识别
'USER_AUTH_ON' => true, //是否开启验证
'USER_AUTH_TYPE' => 1, //验证类型(1:登录验证 2:时时验证)
'USER_AUTH_KEY' => 'uid', //用户认证识别号
'NOT_AUTH_MODULE' => 'Index', //无需认证的控制器
'NOT_AUTH_ACTION' => '', //无需认证的方法
'RBAC_ROLE_TABLE' => 'think_role', //角色表名称
'RBAC_USER_TABLE' => 'think_role_user', //角色与用户的中间表名称
'RBAC_ACCESS_TABLE' => 'think_access', //权限表名称
'RBAC_NODE_TABLE' => 'think_node', //节点表名称
继承Base类,调用控制器中方法时,先验证是否有权限
0 0
- ThinkPHP的RBAC权限控制
- Thinkphp的RBAC,基于角色的权限控制
- ThinkPHP中RBAC的权限控制之配置文件2
- (ThinkPHP 1.5)基于RBAC的权限访问控制-实例解析
- ThinkPHP的RBAC(基于角色权限控制)详解
- ThinkPHP的RBAC(基于角色权限控制)详解
- ThinkPHP的RBAC(基于角色权限控制)详解
- ThinkPHP的RBAC(基于角色权限控制)详解
- ThinkPHP的RBAC(基于角色权限控制)详解
- ThinkPHP的RBAC(基于角色权限控制)详解
- Thinkphp的RBAC权限管理
- THINKPHP 的 RBAC 权限总结
- ThinkPHP 中权限管理控制(RBAC)
- Thinkphp中RBAC的权限控制之配置文件(RBAC详解之连载2)
- Thinkphp中RBAC的权限控制之配置文件(RBAC详解之连载3)
- Thinkphp中RBAC的权限控制在关的数据库详解(RBAC详解之连载1)
- 继续摘抄:(ThinkPHP 1.5)基于RBAC的权限访问控制-实例解析
- thinkphp中的rbac权限控制数据库的全面解析(个人笔记)
- OC语言中的通知
- MyEclipse 创建基于maven的Web Project工程的若干问题解决方法
- HALCON初步:文件夹遍历,文件筛选,文件名拆分,图片读取及保存
- Android studio使用greenDao
- UVa 11059 最大乘积(枚举)
- ThinkPHP的RBAC权限控制
- apk反编译详解
- 翻转单链表
- Implement Stack using Queues
- 使用Thread+Handler实现非UI线程更新UI界面
- echarts 图表 展示 练习二 (ajax 后台加载数据)
- JDK各个版本的新特性jdk1.5-jdk8
- 配置环境变量 解决tomcat启动闪退现象
- sql联合查询inner join