# 基于SpringBoot+Vue开发的权限管理系统
**Repository Path**: lamber/rbac
## Basic Information
- **Project Name**: 基于SpringBoot+Vue开发的权限管理系统
- **Description**: 基于SpringBoot+Vue开发的权限管理系统,采用前后端分离架构模式开发。
- **Primary Language**: Java
- **License**: MIT
- **Default Branch**: master
- **Homepage**: https://gitee.com/wokanxinqing/rbac/raw/master/.images/index.png
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 2
- **Created**: 2025-11-25
- **Last Updated**: 2025-11-25
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 权限管理系统
```md
🕙 分享是一种美德,右上随手点个 🌟 Star,谢谢
```
## 项目介绍
```md
本项目是基于 Spring Boot 3.x + MyBatis Plus + Vue 2.x 构建的前后端分离权限管理系统。系统
以 RBAC(基于角色的访问控制)模型为基础,实现了部门管理、用户管理、角色管理、菜单管理、权限
分配、动态菜单加载、按钮级权限控制、数据权限隔离 等核心功能,适用于中后台系统的权限控制场景。
前端采用 Vue + Element UI 实现响应式布局,支持多浏览器兼容性,具备良好的可扩展性和安全性。
```
## 主要功能
```md
✅ 用户管理
用户增删改查、状态变更、角色分配、密码加密存储等
✅ 角色管理
创建角色、分配菜单权限、绑定数据权限、角色授权等功能
✅ 菜单管理
菜单树管理、菜单类型区分(目录/菜单/按钮)、菜单图标、排序、隐藏显示设置
✅ 权限配置
通过角色授予菜单权限和按钮权限,实现精细化控制
✅ 动态菜单
登录后根据用户权限动态生成菜单与路由,保证页面访问权限一致
✅ 按钮权限控制
页面上的操作按钮根据当前用户权限进行显示/隐藏控制
✅ 数据权限控制
支持多种数据权限范围(全部数据、本部门、自定义部门等),实现跨表数据过滤
✅ 数据安全
支持多种加密策略进行字段,接口加密以及数据脱敏
✅ 日志记录
登录日志、操作日志自动记录,支持导出 Excel
✅ 参数管理
系统参数配置,支持在线修改系统配置项
✅ 字典管理
数据字典统一管理,前端组件可复用
✅ 文件管理
文件上传,下载,删除
✅ 存储配置管理
动态调整文件存储类型,支持 minio, 阿里云, 七牛云, 腾讯云, 京东云等等,支持 S3 协议的厂商
✅ 在线用户
查看所有在线的用户以及强退在线用户
```
## 运行项目
> ### 项目环境
>
> > - `MySQL8.0+` `JDK17+` `Maven3.9+` `NodeJS8.9+` `Redis5.0+`
>
> ### 项目结构
>
> > - rbac-server // 后端代码
> > - rbac-admin // 前端代码
>
> ### 克隆项目
>
> > `git clone https://gitee.com/wokanxingqing/rbac.git`
>
> ### 运行后端
>
> > - 使用 Idea 打开项目
> > - 使用 Maven 下载依赖
> > - 启动 RbacApplication.java
> > - 数据库监控地址: [http://localhost:8090/druid/index.html](http://localhost:8090/druid/index.html)
> > - 服务监控地址: [http://localhost:8090/admin/applications](http://localhost:8090/admin/applications)
> > - 接口文档地址: [http://localhost:8090/doc.html#/home](http://localhost:8090/doc.html#/home)
>
> ### 运行前端
>
> > - 进入前端项目目录 `cd rbac-admin`
> > - 安装依赖 `npm install`
> > - 启动服务 `npm run dev`
> > - 浏览器访问: [http://localhost:9528](http://localhost:9528)
>
> ### 注意事项
>
> > - 启动后端先修改 `application-local.yml`
> > - 启动 redis 后在启动项目
## 项目预览
| 示例 | 示例 |
| ------------------------------------------------------------- | ---------------------------------------------------- |
| 
登录 | 
主页 |
| 
个人信息 | 
部门管理 |
| 
部门添加 | 
用户管理 |
| 
用户添加 | 
角色管理 |
| 
角色添加 | 
角色授权 |
| 
菜单管理 | 
菜单添加 |
| 
参数管理 | 
字典管理 |
| 
文件管理 | 
存储配置管理 |
| 
在线用户 | 
字典添加 |
| 登录日志 | 
操作日志 |
| 
操作日志详情 | 
定时任务 |
| 
定时任务新增 | 
定时任务日志 |
| 
数据库监控 | 
服务监控 |
| 
接口文档 |
## 作者信息
- 作者:王 sir
- 邮箱:`work_wangbing@163.com`
- wx:`_king_bing`
## 关于技术栈
- 前端技术栈:Vue, Axios, Router, Element-UI
- 后端技术栈:SpringBoot3, SpringSecurity, Knife4j, Mybatis-Plus, JWT, EasyExcel, Quartz
- 数据库:MySQL, Redis
- 开发工具:IDEA, VSCode
- 版本管理工具:Git
## 感谢
- [花裤衩](https://gitee.com/panjiachen/vue-admin-template?_from=gitee_search) 开源框架
## 结语
欢迎一起探讨,如果你觉得还可以,可以给我点一个 star