Files
user-system/README.md
long-agent 85285c16d1 docs: update project documentation with P0/P1/P2 fix status
- Add security features section to README
- Add security architecture section 12.1 and 12.2 to ARCHITECTURE
- Add validation commands section to DEPLOYMENT
- Update PRD with fix completion status
2026-04-18 21:30:14 +08:00

3.7 KiB
Raw Blame History

User Management System (UMS)

企业级用户管理系统,支持 RBAC 角色权限管理、多因素认证、设备信任和安全审计。

快速开始

前置依赖

  • Go 1.21+
  • Node.js 18+
  • SQLite默认无需安装

启动后端

# 复制环境配置
cp .env.example .env
# 编辑 .env 填入必要配置JWT_SECRET, DEFAULT_ADMIN_PASSWORD 等)

# 启动服务
go run ./cmd/server

服务启动后访问 http://localhost:8080/api/v1/auth/bootstrap 初始化管理员账号。

启动前端

cd frontend/admin
npm install
npm run dev

项目结构

.
├── cmd/server/          # 后端入口
├── internal/            # 后端代码
│   ├── api/handler/     # HTTP 处理器
│   ├── api/middleware/  # 中间件(认证、权限、限流)
│   ├── auth/            # 认证服务JWT/SSO
│   ├── repository/      # 数据访问层
│   ├── service/         # 业务逻辑层
│   └── domain/          # 领域模型
├── frontend/admin/      # 管理后台前端
├── configs/             # 配置文件
├── docs/                # 详细文档
└── data/                # SQLite 数据库目录

核心功能

功能 说明
用户管理 注册、登录、CRUD、批量操作
RBAC 角色继承、权限细粒度控制
TOTP Google Authenticator 二次验证
设备信任 信任设备免二次验证
登录日志 完整操作审计
Webhook 事件通知user.created/deleted 等)
SSO CAS 协议支持

安全特性

安全修复 状态
LIKE 查询 SQL 注入防护 已修复
登录失败计数器原子操作 已修复
Refresh Token 黑名单 fail-closed 已修复
验证码 Replay 防护 已修复
CORS 危险配置检测 已修复
UpdateUser IDOR 授权检查 已修复
Login TOTP 设备信任门禁 已修复
游标分页排序一致性 已修复
错误信息泄露防护 已修复
OAuth context 正确传播 已修复
密码修改后 Token 失效PCE 已修复

环境变量

关键配置项(详见 .env.example

变量 说明 必填
JWT_SECRET JWT 签名密钥
DEFAULT_ADMIN_EMAIL 初始管理员邮箱
DEFAULT_ADMIN_PASSWORD 初始管理员密码
SMTP_* 邮件服务配置 是(邮件功能)
SMS_* 短信服务配置

API 文档

完整 API 规范:docs/API.md

认证流程:

1. POST /api/v1/auth/register     # 注册用户
2. POST /api/v1/auth/login        # 登录获取 Token
3. POST /api/v1/auth/refresh      # 刷新 Token

开发命令

# 构建
go build ./cmd/server

# 测试(跳过大规模性能测试)
go test ./internal/... -skip TestScale -count=1

# 前端构建
cd frontend/admin && npm run build

# 前端测试
cd frontend/admin && npm test

# 前端 lint
cd frontend/admin && npm run lint

# Docker 构建
docker build -t ums .

部署

  • 开发部署:docs/DEPLOYMENT.md
  • 生产部署:DEPLOY_GUIDE.md
  • 运行手册:docs/guides/ 目录下的 7 个 Runbook

测试状态

测试类型 状态
Go 构建 通过
Go vet 通过
Go 测试 通过37个包
前端 lint 通过
前端测试 通过518个
集成测试 通过
E2E 测试 通过

项目状态

完整项目状态:docs/status/REAL_PROJECT_STATUS.md

2026-04-18 最新状态: 所有 P0/P1/P2 安全和质量修复已全部完成并验证通过。