Skip to content

tp5框架的一个简单易懂的auth功能模块 权限验证 用户的权限添加修改 适合小白借鉴的demo

License

Notifications You must be signed in to change notification settings

Net-insect/tp5-auth

Repository files navigation

--------------------------index模块-------------------------

这是一个用tp5框架写的auth权限功能模块的demo 可以给一些基础小白借鉴

一、 数据库表关系的解释,,三张固定表,一张自建的用户表(数据库文件在demo中导入即可)

auth最复杂的就是这个数据表,理解了数据表就理解一半了,这里给大家说明一下,理理逻辑

1.think_auth_group_access{ //中间表 用户表和等级表的绑定

uid          --------  这个是用来保存用户表的主键id
group_id     --------  这个是用来保存等级表的主键id

}

2.think_user{ //用户表 自己创建的表

id           --------  用户表的主键id
user_name    --------  用户名

}

3.think_auth_group{ //等级表 可以理解用户会员等级表

id           --------  等级表的主键id
title        --------  等级名称
status       --------  状态
rules        --------  绑定操作表的主键id 存储方式为 1,2,3 代表有三条操作的权限

}

3.think_auth_rule{ //操作权限表 用于存储操作

  id           --------  操作权限表的主键id
  name         --------  存储操作的url路径
  title        --------  存储操作的url路径的名称
  type         --------  类型 如果是1 的话 就执行condition定义的规则
  status       --------  状态
  condition    --------  用于加入正则的权限规则条件 是需要自己添加正则条件的

}

表的字段分析完了,逻辑是这样的:中间表取用户的id到等级表找到他的等级, 再根据他的等级id找到对应的 rules字段 存储的操作权限表的id到操作权限表找到这个等级可以使用的权限判断是否拥有权限,就是这么简单

二、index模块的控制器文件介绍,可以自行挨个访问里面的方法演示

由于tp5没有自带的auth验证类,所以把tp3.2的auth工具类兼容丢进了tp5的工具类里 (在根目录的extend/org/Auth.php)需要到该文件把“默认配置”的东西改成自己对应的数据库表

  index.php    --------  写了一个超级简单的调用auth的demo演示
  
  indextwo.php --------  写了auth权限验证的各种方法调用演示

--------------------------admin模块---------------------------------

auth的后台管理系统,用于auth的权限分配、权限管理、角色管理等等

                    控制器说明
                

  AdminBase.php     --------  所有控制器的父类,全局控制器的初始化
  
  Index.php         --------  后台首页统计模块
  
  login.php         --------  用户登陆、退出功能模块

About

tp5框架的一个简单易懂的auth功能模块 权限验证 用户的权限添加修改 适合小白借鉴的demo

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published