/quickly-rbac

a rbac model based on laravel

Primary LanguageHTMLMIT LicenseMIT

quickly-rbac


角色访问控制在后台管理系统中是不可缺少的一部分,它高层次的抽象主体灵活的支撑着整个系统的安全访问。它通常使用5张表来实现,即用户表、角色表、路由表、主体指派表(用户-角色)、权限指派表(角色-路由)。在此还设计一个菜单表,它与路由存在一对多的关系。下面将会给出表的设计。

quickly-rbac目前已支持的特性:
菜单管理:无限级菜单分配、前台菜单切换、菜单排序、通知设置。
路由管理:CRUD
权限管理:CRUD
用户管理:CRUD
用户管理:CRUD
后台体验 账号:test 密码:123456
应用体验

#环境要求

laravel 5.6

#如何使用

实现功能 -> 添加路由 -> 角色授权 -> 用户管理

#表设计

建表SQL语句在rbac目录里

用户表
字段 数据类型 释义 说明
id int(12) 自增id
username varchar(32) 用户名
password char(32) 登录密码
operator varchar(32) 操作人
create_time timestamp 创建时间
update_time timestamp 更新时间
角色表
字段 数据类型 释义 说明
id int(12) 自增id
name varchar(32) 角色名称
operator varchar(32) 操作人
create_time timestamp 创建时间
update_time timestamp 更新时间
路由表
字段 数据类型 释义 说明
id int(12) 自增id
name varchar(32) 路由名称
route varchar(255) 路由名称
mid int(12) 菜单名 fk
is_default tinyint(1) 是否默认 0:否1:是
operator varchar(32) 操作人
create_time timestamp 创建时间
update_time timestamp 更新时间
用户-角色表
字段 数据类型 释义 说明
id int(12) 自增id
username varchar(32) 用户名
role_id int(12) 角色id fk
operator varchar(32) 操作人
create_time timestamp 创建时间
update_time timestamp 更新时间
角色-路由表
字段 数据类型 释义 说明
id int(12) 自增id
role_id int(12) 角色id fk
has_route varchar(32) 路由 fk
operator varchar(32) 操作人
create_time timestamp 创建时间
update_time timestamp 更新时间
菜单表
字段 数据类型 释义 说明
id int(12) 自增id
pid int(12) 父id
name varchar(32) 菜单名称
icon varchar(32) icon样式
badge varchar(32) badge样式
sortnum tinyint(12) 排列顺序
operator varchar(32) 操作人
create_time timestamp 创建时间
update_time timestamp 更新时间