# 基于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 后在启动项目 ## 项目预览 | 示例 | 示例 | | ------------------------------------------------------------- | ---------------------------------------------------- | | ![登录](.images/login.png)
登录 | ![主页](.images/index.png)
主页 | | ![个人信息](.images/profile.png)
个人信息 | ![用户管理](.images/dept.png)
部门管理 | | ![个人信息](.images/dept-add.png)
部门添加 | ![用户管理](.images/user.png)
用户管理 | | ![用户添加](.images/user-add.png)
用户添加 | ![角色管理](.images/role.png)
角色管理 | | ![角色添加](.images/role-add.png)
角色添加 | ![角色授权](.images/role-auth.png)
角色授权 | | ![菜单管理](.images/menu.png)
菜单管理 | ![菜单添加](.images/menu-add.png)
菜单添加 | | ![参数管理](.images/param.png)
参数管理 | ![字典管理](.images/dict.png)
字典管理 | | ![参数管理](.images/file.png)
文件管理 | ![字典管理](.images/file-config.png)
存储配置管理 | | ![参数管理](.images/online-user.png)
在线用户 | ![字典添加](.images/dict-add.png)
字典添加 | | ![登录日志](.images/login-log.png)登录日志 | ![操作日志](.images/operation.png)
操作日志 | | ![操作日志详情](.images/operation-detail.png)
操作日志详情 | ![定时任务](.images/job.png)
定时任务 | | ![定时任务新增](.images/job-add.png)
定时任务新增 | ![定时任务日志](.images/job-log.png)
定时任务日志 | | ![数据库监控](.images/druid.png)
数据库监控 | ![服务监控](.images/server.png)
服务监控 | | ![接口文档](.images/api.png)
接口文档 | ## 作者信息 - 作者:王 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