搜索
系统检测到您的用户名不符合规范:

thinkphp5 rbac auth 权限认证 附加后台

浏览:48947 最后更新:2019年09月25日 23:04 分类:类库 关键字: rbac auth 权限认证 行为日志
文件上传不上去加群(489771818)下载DEMO
安装 composer require zouxiang0639/thinkcms-auth 代码案例 public function _empty($name)
{
$auth = new \thinkcms\auth\Auth();
$auth = $auth->autoload($name);
if($auth){
if(isset($auth['code'])){
return json($auth);
}elseif(isset($auth['file'])){
return $auth['file'];
}

$this->view->engine->layout(false);
return $this->fetch($auth[0],$auth[1]);
}
return abort(404,'页面不存在');
}
创建一个控制器把这个_empty方法加进去会渲染rbac视图,这个我就不多讲了待会看图
## 手动加入日志 $auth = new Auth();
$auth->admin = $list['user_name'];
$auth->createLog('管理员<spen style=\'color: #1dd2af;\'>[ {name} ]</spen>偷偷的进入后台了,','后台登录');
v1.1.1新加入方法is_login() 判断是否登录
login($uid 用户ID,$nickname 用户昵称) 用户登录
logout() 用户退出
checkPath($path 路由,$param 参数) 检查路由是否有权限 ,可以做按钮权限判断( 已经加入助手函数可以直接使用)
注 更新废弃函数输入用户ID 和 用户昵称 ,加入 按钮的路由权限判断,
路由目录
/auth/role.html 角色列表
/auth/roleAdd.html 角色添加
/auth/roleEdit.html 角色修改
/auth/authorize/id/2.html 权限设置
/auth/menu.html 菜单列表
/auth/menuAdd.html 菜单增加
/auth/menuEdit.html 菜单修改
/auth/log.html 行为日志 新v1.1
/auth/viewLog.html 查看日志 新v1.1
/auth/clear.html 清空日志 新v1.1
/auth/adminAuthorize.html 独立权限 新v1.1.2 public function __construct()
{
parent::__construct();
$auth = new Auth();
$auth->noNeedCheckRules = ['index/index/index','index/index/home'];
$auth->log = true; // v1.1版本 日志开关默认true
$user = $auth::is_login();

if($user){//用户登录状态
$this->uid = $user['uid'];
if(!$auth->auth()){
return $this->error("你没有权限访问!");
}
}else{
return $this->error("您还没有登录!",url("publics/login"));
}
}
这个是base控制器
$auth->noNeedCheckRules 为不需要权限认证的Url
$auth->auth 权限认证方法
到了这里你的权限rbac就搞定了
后台账户密码 admin admin Auth::menuCheck();这个方法返回授权及非隐藏的所有菜单,这样我们后台的菜单就可以根据管理员的权限来来展示授权的目录


权限条件设置

假设我们需要index/extend/edit/id/875.html在这个rul上面设置权限只有*角色能打开ID=875 的应用编辑,那我们就可以在
[参数] = id=875 这里是菜单上的URL使用
[验证规则] = {id}==875 这里是权限认证条件判断 ({id}<=1 && {id} >=1 || in_array({id},[1,2,4,5] ) )




安装地址

https://github.com/zouxiang0639/thinkcms-auth
https://packagist.org/packages/zouxiang0639/thinkcms-auth

如果上面两个都不会安装的 可以直接下载 v1.1.2/download/875.html
或者加入 QQ群
489771818 满
606258099

这期就开发到这里,如果大家支持觉得好用喔会在增加两个功能
1.操作日志
2.生成菜单

我就上图了反正案例已经打包需要的童鞋直接下载即可体验









评论() 相关
后面还有条评论,
评论支持使用[code][/code]标签添加代码
您需要登录后才可以评论 登录 | 立即注册
收藏
附宅
积分:1129 等级:LV3
热点推荐
(追記) (追記ここまで)
最新更新

我们

合作

网站

信息

ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。

AltStyle によって変換されたページ (->オリジナル) /