php权限管理如何实现

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php权限管理如何实现相关的知识,希望对你有一定的参考价值。

目前开发需要实现用户权限控制,我在数据库建立了一个权限表、一个菜单表还有权限菜单表。请问如何实现控制和如何编写前台代码实现。新手向。最好有简单的源码例子,498308443@qq.com谢谢。

可以使用acl控制实现,参考acl全集如下:

1、角色表
角色id - 用户组id - 特殊权限id(其中特殊权限 > 用户组所包含权限)

2、用户组表
用户组id - 用户组信息

3、权限表
权限表id - 权限信息 - 与功能模块的关系

4、用户组-权限关联表
用户组id - 权限集合

5、特殊权限表
特殊权限id - 权限集合
注意:
1、设置权限的删除、添加主要围绕在 用户组-权限关联表、特殊权限表。
2、用户的权限获取则是验证登陆的时候通过用户组和特殊权限获取权限集合。
3、展示的时候,根据2获取的权限集合从权限表获取所有功能模块的导航菜单。
参考技术A 在用户的数据表里增加一个字段,用来放用户的等级的,当用户登入后赋值到session,当$_SESSION['username']=1;可判断为最高管理员,$_SESSION['views']=2为普通管理员就可以了本回答被提问者和网友采纳 参考技术B 一般要建5张表,用户表 角色表 权限表 用户和角色关联表 角色和权限关联表
个人建议看下TP的源码rbac就是权限这块的,对你会有帮助
参考技术C 我得做法是,用形如:

修改文章,1,删除文章,1,新增文章,1
这样的字符串来保存权限值
读取后explode为数组,需要校验权限的时候,用
if($array["修改文章"])
判断是否有权限。
参考技术D 源码估计你得自己找了,给你个思路吧, 你把每个功能在数据库中设置成True、False. 读数据加载权限

以上是关于php权限管理如何实现的主要内容,如果未能解决你的问题,请参考以下文章

java web的用户角色权限管理是如何实现的?

PHP实现权限管理功能

前端如何实现权限管理板块的流程和思想

如何实现php的安全最大化?怎样避免sql注入漏洞和xss跨站脚本攻击漏洞

PHP RBAC权限控制实现思路

linux下的git用户管理权限,如何实现一个用户下多目录不同权限管理问题?