php 权限功能设计,详解php人员权限管理(RBAC)的实现方法

本文详细介绍了如何使用PHP实现基于角色的访问控制(RBAC),包括用户、角色、功能的管理,以及数据库设计和操作。通过创建用户表、角色表、功能表等,实现用户角色关联,提供管理员管理页面,实现用户角色的动态分配和更新。
摘要由CSDN通过智能技术生成

在说权限管理前,应该先知道权限管理要有哪些功能:

(1)、用户只能访问,指定的控制器,指定的方法

(2)、用户可以存在于多个用户组里

(3)、用户组可以选择,指定的控制器,指定的方法

(4)、可以添加控制器和方法

RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联。简单地说,一个用户拥有若干角色,每一个角色拥有若干权限。这样,就构造成“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间,角色与权限之间,一般者是多对多的关系。

6b4d6ff4abbaa59137742867a6bf3037.png

1.数据库的设计

写五张表,首先:用户表、角色表、功能表:

86ebbee97682cb034f2261ad0d1c2d62.png

连接表的表..再来就是角色功能表与用户角色表:

c1dbb8ebf04f0a09910ff0ed7bbd880d.png

2.管理员的管理页面,

(1).分别显示用户名和角色名

(2).根据下拉用户名的变化,更改相应复选框中的角色

(3).修改用户角色时,先要把用户对应角色表,这个用户所有的信息删除,再把取到的用户名和角色代号新添加。

利用下拉列表:嵌入php查询并遍历出来,以下拉列表的方式显示出来<?php

include ("../db.class.php");

$db = new db();

$sql = "select * from qxyh";

$arr = $db->Query($sql);

foreach ($arr as $v)

{

echo "{$v[2]}";

}

?>

选择角色,用多选框:

请选择角色

$sjs = "select * from qxzw";

$ajs = $db->Query($sjs);

foreach ($ajs as $v)

{

echo "{$v[1]} ";

}

?>

图:

57411c8a5e012a7238eab1b70122dc70.png

当用户发生变化的时候,相应的角色也相应变化,并且改变人员的角色信息,添加保存,添加保存的基本思路是先把数据库里人员对应的角色信息全部删除,然后再取到选中的部分,添加到数据库。

先来让他选中默认角色:

//选中默认角色

function xuan()

{

var uid = $("#user").val();

$.ajax({

url:"chuli.p

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值