Go to file
expressgy 81953dd44c feat: 添加JWT认证和模块管理功能
- 新增JWT认证插件,支持用户登录、刷新Token功能
- 添加系统模块管理功能,包括模块的创建、更新和查询
- 更新用户服务,支持用户注册、登录和Token刷新
- 修改数据库表结构,添加模块相关表和字段
- 更新文档,添加JWT认证和模块管理相关说明
2025-03-26 19:07:09 +08:00
config feat: 添加JWT认证和模块管理功能 2025-03-26 19:07:09 +08:00
doc feat: 添加JWT认证和模块管理功能 2025-03-26 19:07:09 +08:00
SQL feat: 添加JWT认证和模块管理功能 2025-03-26 19:07:09 +08:00
src feat: 添加JWT认证和模块管理功能 2025-03-26 19:07:09 +08:00
.env feat: 添加JWT认证和模块管理功能 2025-03-26 19:07:09 +08:00
.gitignore 初始化 2025-03-18 18:17:37 +08:00
.npmrc 初始化 2025-03-18 18:17:37 +08:00
.prettier.config.cjs 数据库 2025-03-19 15:54:28 +08:00
.prettierignore 数据库 2025-03-19 15:54:28 +08:00
drizzle.config.js 数据库 2025-03-19 15:54:28 +08:00
eslint.config.js 数据库 2025-03-19 15:54:28 +08:00
package-lock.json feat: 添加JWT认证和模块管理功能 2025-03-26 19:07:09 +08:00
package.json feat: 添加JWT认证和模块管理功能 2025-03-26 19:07:09 +08:00
README.md 数据库 2025-03-19 15:54:28 +08:00
yuheng.sql feat: 添加JWT认证和模块管理功能 2025-03-26 19:07:09 +08:00

RBAC 权限管理系统

基于 Fastify 的 Node.js 角色访问控制RBAC系统提供灵活的权限管理能力。

主要特性

  • 🛡️ 基于 JWT 的身份认证
  • 🔑 角色-权限层级管理
  • 🚦 请求权限验证中间件
  • 📦 支持 PostgreSQL/MySQL 数据库
  • 📝 审计日志记录

快速开始

前置要求

  • Node.js v18+
  • 数据库PostgreSQL/MySQL
  • Redis用于会话管理

安装步骤

# 克隆仓库
git clone https://github.com/your-repo.git
cd rbac-system

# 安装依赖
npm install

# 配置环境变量(复制示例文件)
cp .env.example .env

# 数据库迁移
npx prisma migrate dev

# 启动服务
npm run dev

## 项目结构
```bash
├── src/
│   ├── routes/         # API 路由
│   │   ├── index.js    # 路由入口
│   │   ├── user.js     # 用户相关路由
│   ├── plugins/        # Fastify 插件
│   │   ├── db.js       # 数据库连接
│   ├── services/       # 业务逻辑层
│   │   ├── userService.js  # 用户服务
│   ├── utils/          # 工具类
│   │   ├── logger.js   # 日志工具
│   ├── app.js          # 应用入口
├── test/               # 测试用例
│   ├── routes/
│   │   ├── user.test.js # 用户路由测试
│   ├── utils/
│   │   ├── logger.test.js # 日志工具测试
├── config/             # 配置文件
│   ├── default.js      # 通用配置
├── package.json        # 依赖管理