chore: initial import

This commit is contained in:
2026-04-19 14:05:40 +08:00
commit 89e9eae36e
81 changed files with 37363 additions and 0 deletions
+92
View File
@@ -0,0 +1,92 @@
# 安全技术处理(PPT 右侧代码截图 + 左侧要点说明)
本页定位:左侧“要点说明”,右侧“代码截图”。每一行要点对应一段代码截图(右侧可用 1~2 张拼接)。
---
## 版式建议(16:9
- 左侧 40%:要点说明(5~7 条,配小图标)
- 右侧 60%:代码截图拼图(建议 3~4 块)
- 页脚:一行小字“安全策略均可在代码中追溯”
---
## 左侧要点说明(可直接贴 PPT)
**1. 认证与单点登录**
- JWT 校验 + 过期处理
- token_version 版本号校验,旧设备强制下线
- Token 支持 Header / Query,兼容下载接口
**2. 短信验证码认证(阿里云)**
- 阿里云短信通道(签名 + 模板)
- 验证码 2 分钟有效、60 秒冷却
- 注册/重置均需验证码校验
**3. 接口安全与访问控制**
- 全局限流 + 认证接口更严限流
- CORS 白名单限制
- 移动端访问拦截(仅允许 PC
**4. 上传与附件安全**
- 扩展名白名单
- Magic Number 校验真实类型
- 可执行文件拦截 + 强制下载
**5. 审计与日志脱敏**
- 非 GET 操作全量审计入库
- URL 脱敏(token/password/code
- 日志分级 + 按天滚动
**6. 运维安全保障**
- 磁盘空间监控
- 低于阈值自动公告告警
---
## 右侧代码截图清单(按块拼图)
**块 A|认证与单点登录**
- 文件:`server/middleware/auth.js`
- 建议截图区域:`verifyToken` 函数(JWT 校验 + token_version
**块 B|短信验证码认证(阿里云)**
- 文件:`server/utils/sms.js`
- 建议截图区域:`sendVerifyCode` 调用 + 短信模板参数
**块 C|登录/注册/重置密码安全**
- 文件:`server/routes/auth.js`
- 建议截图区域:
- 发送验证码接口:冷却 + 过期
- 重置密码:bcrypt + token_version 更新
**块 D|限流 + CORS + 移动端拦截**
- 文件:`server/index.js`
- 建议截图区域:`rateLimit` + `cors` + Mobile Interceptor
**块 E|上传与附件安全**
- 文件:`server/routes/achievements.js`
- 建议截图区域:白名单 + FileType Magic Number 校验 + 拦截可执行
**块 F|审计日志与脱敏**
- 文件:`server/middleware/auditLogger.js`
- 建议截图区域:URL 脱敏 + 审计入库
**块 G|日志落盘**
- 文件:`server/utils/logger.js`
- 建议截图区域:winston daily rotate 配置
**块 H|磁盘空间告警**
- 文件:`server/utils/diskMonitor.js`
- 建议截图区域:阈值判断 + 生成系统公告
---
## 右侧拼图布局建议
- 推荐 3 列 × 2 行小块拼图:A/B/C/D/E/F
- 若空间不足:A/D/E/F 四块即可(覆盖最关键安全点)
---
## 页脚小字(可选)
“以上安全策略均在代码中可审计、可追踪、可复现。”