ThinkPHP 中权限管理控制(RBAC)
2014-08-19 17:07
344 查看
1. 查询当前用户可以访问哪些应用
select node.id,node.name from rice_role as role, rice_role_user as user,
rice_access as access, rice_node as node where user.user_id=3 and
user.role_id=role.id and (access.role_id=role.id or (access.role_id=role.pid and role.pid!=0))
and role.status=1 and access.node_id=node.id and node.level=1 and node.status=1 group by id
2. 查询当前用户可以访问哪些模块
SELECT node.id, node.name
FROM rice_role AS role, rice_role_user AS user, rice_access AS access, rice_node AS node
WHERE user.user_id =3
AND user.role_id = role.id
AND (
access.role_id = role.id
OR (
access.role_id = role.pid
AND role.pid !=0))
AND role.status =1
AND access.node_id = node.id
AND node.level =2
AND node.pid =1
AND node.status =1 group by id
3. 查询具体模块对应的方法
select node.id,node.name from
rice_role as role,
rice_role_user as user,
rice_access as access ,
rice_node as node
where user.user_id=3 and user.role_id=role.id and ( access.role_id=role.id or (access.role_id=role.pid and role.pid!=0 ) ) and role.status=1 and access.node_id=node.id and node.level=3 and node.pid={$moduleId} and node.status=1 group by
id
select node.id,node.name from rice_role as role, rice_role_user as user,
rice_access as access, rice_node as node where user.user_id=3 and
user.role_id=role.id and (access.role_id=role.id or (access.role_id=role.pid and role.pid!=0))
and role.status=1 and access.node_id=node.id and node.level=1 and node.status=1 group by id
2. 查询当前用户可以访问哪些模块
SELECT node.id, node.name
FROM rice_role AS role, rice_role_user AS user, rice_access AS access, rice_node AS node
WHERE user.user_id =3
AND user.role_id = role.id
AND (
access.role_id = role.id
OR (
access.role_id = role.pid
AND role.pid !=0))
AND role.status =1
AND access.node_id = node.id
AND node.level =2
AND node.pid =1
AND node.status =1 group by id
3. 查询具体模块对应的方法
select node.id,node.name from
rice_role as role,
rice_role_user as user,
rice_access as access ,
rice_node as node
where user.user_id=3 and user.role_id=role.id and ( access.role_id=role.id or (access.role_id=role.pid and role.pid!=0 ) ) and role.status=1 and access.node_id=node.id and node.level=3 and node.pid={$moduleId} and node.status=1 group by
id
相关文章推荐
- ThinkPHP中的RBAC权限控制连载2
- ThinkPHP与RBAC:基于角色的权限管理
- php_ThinkPHP的RBAC(基于角色权限控制)详解
- Thinkphp的RBAC权限管理
- 基于AOP实现权限管理:访问控制模型RBAC和ACL
- ThinkPHP RBAC权限管理机制
- Thinkphp中RBAC的权限控制在关的数据库详解(RBAC详解之连载1)
- ThinkPHP的RBAC(基于角色权限控制)深入解析
- ThinkPHP的RBAC(基于角色权限控制)详解
- Thinkphp中RBAC的权限控制之配置文件(RBAC详解之连载3)
- thinkphp中的rbac权限控制数据库的全面解析(个人笔记)
- Thinkphp的RBAC,基于角色的权限控制
- Thinkphp下的RBAC权限管理完结——2015/5/12
- ThinkPHP与RBAC:基于角色的权限管理
- ThinkPHP中RBAC的权限控制之配置文件2
- ThinkPHP的RBAC(基于角色权限控制)
- ThinkPHP的RBAC(基于角色权限控制)详解
- 权限管理:RBAC(基于角色的访问控制)SpringMVC实现
- ThinkPHP的RBAC权限控制
- ThinkPHP的RBAC(基于角色权限控制)详解