OP 498d29dfa9 security: 全面安全加固 v2.1
严重修复:
- C1: JWT密钥生成64字节随机字符串替代硬编码占位符
- C2: 数据库密码改为随机强密码,移除宿主机端口映射
- C3: 管理员默认密码改为强密码

高危修复:
- H1: 移除数据库54326端口映射,仅内部网络访问
- H3: 添加X-Frame-Options/CSP/XSS-Protection等安全头
- H4: 前端所有innerHTML拼接处添加escapeHtml转义防XSS
- H5: SMTP密码在API响应中脱敏显示
- H6: 债务列表接口添加用户隔离,普通用户只能看自己的数据
- H7: 债务详情/计划/记录接口添加归属校验
- H8: 账户级暴力破解锁定(5次失败锁定5分钟)
- H9: 速率限制数据增加过期清理机制防内存泄漏

中危修复:
- M1: 注册/重置密码接口添加后端密码强度校验(最少8位)
- M4: 添加全局异常处理器,500错误不再暴露堆栈
- M5: Docker容器改为非root用户运行
- M6: 添加.dockerignore排除pyc和敏感文件
- M7: 管理员操作写入审计日志
- M8: CORS限制为实际使用的HTTP方法和头

其他:
- Nginx隐藏版本号(server_tokens off)
- 管理员角色修改添加枚举校验
- 密码重置验证码接口返回统一错误信息
2026-06-28 22:46:24 +08:00
2026-06-28 22:46:24 +08:00
2026-06-28 22:46:24 +08:00

债务管理系统

个人/小团队债务记录、跟踪和管理平台。

技术栈

  • 前端: 纯 HTML/CSS/JS无框架依赖
  • 后端: Python FastAPI + SQLAlchemy (async)
  • 数据库: PostgreSQL 15
  • 部署: Docker Compose

功能

前台

  • 用户注册/登录JWT 双 token
  • 借款管理CRUD + 分组展示 + 一键还款
  • 月度还款计划:按月汇总 + 复选框标记已还
  • 支持:等额本息、等额本金、先息后本
  • 利率/总利息互算
  • 数据导入/导出CSV
  • 修改密码

后台

  • 用户管理(审批/禁用/启用/删除/重置密码)
  • 用户组管理(同组共享数据)
  • 系统数据总览

快速开始

# 解压项目
tar -xzf debt-manager.tar.gz
cd debt-manager

# 启动所有服务
docker compose up -d

# 访问
# 前台: http://localhost:806
# 后台: http://localhost:806/admin.html
# API文档: http://localhost:8000/docs

默认账户

账号 密码 角色
admin admin123 管理员
test test123 用户

端口说明

服务 端口 说明
前端 806 用户界面
后端 8000 API接口
数据库 54326 PostgreSQL

项目结构

debt-manager/
├── backend/              # FastAPI 后端
│   ├── app/
│   │   ├── api/          # API 路由
│   │   ├── core/         # 配置、数据库、认证
│   │   ├── models/       # SQLAlchemy 模型
│   │   ├── schemas/      # Pydantic 模型
│   │   └── services/     # 业务逻辑
│   └── Dockerfile
├── frontend/             # 前端页面
│   ├── index.html        # 主页面
│   ├── admin.html        # 管理后台
│   └── Dockerfile
├── docker-compose.yml
├── .env
└── DEPLOY.md             # 部署指南
Description
No description provided
Readme 961 KiB
Languages
HTML 59%
Python 35.8%
Shell 5%
Dockerfile 0.2%