Files
tech-achievement-management…/SECURITY_PPT_NOTES.md
T
2026-04-19 14:05:40 +08:00

93 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 安全技术处理(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 四块即可(覆盖最关键安全点)
---
## 页脚小字(可选)
“以上安全策略均在代码中可审计、可追踪、可复现。”