93 lines
2.7 KiB
Markdown
93 lines
2.7 KiB
Markdown
# 安全技术处理(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 四块即可(覆盖最关键安全点)
|
||
|
||
---
|
||
|
||
## 页脚小字(可选)
|
||
“以上安全策略均在代码中可审计、可追踪、可复现。”
|