thinkphp5 rbac 加 行为日志

文件上传不上去加群(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

[code] Auth::menuCheck();[/code]

这个方法返回授权及非隐藏的所有菜单,这样我们后台的菜单就可以根据管理员的权限来来展示授权的目录


[b]权限条件设置[/b]

假设我们需要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] ) )

[img]/Uploads/editor/2016-11-14/58294c2c17a7f.png[/img]


[b]安装地址[/b]

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

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

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

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





转载于:https://my.oschina.net/u/3150933/blog/827449

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值