PHPackages                             zx1414174/think5-auth - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. zx1414174/think5-auth

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

zx1414174/think5-auth
=====================

The ThinkPHP5 think5-auth Package.

18PHP

Since Dec 5Pushed 9y ago1 watchersCompare

[ Source](https://github.com/zx1414174/think5-auth)[ Packagist](https://packagist.org/packages/zx1414174/think5-auth)[ RSS](/packages/zx1414174-think5-auth/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

thinkphp5 权限认证 RBAC 加 行为日志
==========================

[](#thinkphp5-权限认证-rbac-加-行为日志)

这个插件主要有一整套RBAC 行为日志 视图 只需要 composer安装即可和你的系统融为一体

安装
--

[](#安装)

```
> composer require zx1414174/think5-auth

```

v1.1更新
------

[](#v11更新)

- 1.加入了行为日志
- 2.加入样式文件路由定义

配置 v1.1
-------

[](#配置-v11)

```
'think5' =>[
        'style_directory' => '/static/rbac/',
        //包数据表前缀，基本配置的前缀在此前缀之前加入
        'database_prefix' => '',
  ]

```

可以不配置 配置以后Js css文件需要放到配置的目录里

手动加入日志 v1.1
-----------

[](#手动加入日志--v11)

```
    $auth = new Auth();
    $auth->admin = $list['user_name'];
    $auth->createLog('管理员 {name}偷偷的进入后台了,','后台登录',$list['id']);

```

视图调用
----

[](#视图调用)

```
     public function _empty($name)
        {
            $auth =  new \think5\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,'页面不存在');
        }

```

在模块中创建一个Auth控制器，把\_empty方法复制上去，这样就可以访问以下视图

- /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

权限认证
----

[](#权限认证)

```
    public function __construct(\think\Request $request)
    {
        parent::__construct($request);
        $this->request  = $request;
         $auth                   = new Auth();
        $auth->noNeedCheckRules = ['index/index/index','index/index/home'];
        $auth->log              = true;                 // v1.1版本  日志开关默认true
        $auth->admin            = $session['name'];     // v1.1版本  管理员名称
        $this->uid              = $session['id'];

        if($this->uid){//用户登录状态
            if(!$auth->auth($this->uid)){ // 权限认证
                return $this->error("你没有权限访问！");
            }
        }else{
            return $this->error("您还没有登录！",url("publics/login"));
        }
    }

```

这里在公共控制器上加入验证即可

授权菜单
----

[](#授权菜单)

```
 Auth::menuCheck($this->uid);

```

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

mysql文件
-------

[](#mysql文件)

```
tp_action_log.sql
tp_auth_access.sql
tp_auth_role.sql
tp_auth_role_user.sql
tp_auth_rule.sql
tp_menu.sql

```

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/e844c69f5e0935c8fef207b6526f27c49c3aaa5bbff5d9dabe58f16372d34843?d=identicon)[zx1414174](/maintainers/zx1414174)

---

Top Contributors

[![zx1414174](https://avatars.githubusercontent.com/u/15712141?v=4)](https://github.com/zx1414174 "zx1414174 (4 commits)")

### Embed Badge

![Health badge](/badges/zx1414174-think5-auth/health.svg)

```
[![Health](https://phpackages.com/badges/zx1414174-think5-auth/health.svg)](https://phpackages.com/packages/zx1414174-think5-auth)
```

###  Alternatives

[namshi/jose

JSON Object Signing and Encryption library for PHP.

1.8k99.6M101](/packages/namshi-jose)[league/oauth1-client

OAuth 1.0 Client Library

99698.8M106](/packages/league-oauth1-client)[bezhansalleh/filament-shield

Filament support for `spatie/laravel-permission`.

2.8k2.9M88](/packages/bezhansalleh-filament-shield)[gesdinet/jwt-refresh-token-bundle

Implements a refresh token system over Json Web Tokens in Symfony

70516.4M35](/packages/gesdinet-jwt-refresh-token-bundle)[league/oauth2-google

Google OAuth 2.0 Client Provider for The PHP League OAuth2-Client

41721.2M118](/packages/league-oauth2-google)[illuminate/auth

The Illuminate Auth package.

9327.3M1.0k](/packages/illuminate-auth)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
