gitadmin
|
28c37f1069
|
feat: 邮件监控 4 项改进 + POP3 地址可配置 + SSRF 加固
改进内容:
1. POP3 备用服务器/端口从硬编码改为可配置(types + settings-manager +
fetchPOP3Emails 参数化 host/port + 两处调用点传配置值 + 设置页字段),
默认 pophz.qiye.163.com:995 保持向后兼容
2. 扫描历史固定保留最近 50 条(saveScanHistory 按 id 排序自动裁剪)
3. 补齐审计缺口:test-mail、scan-history DELETE、test-wechat 失败/异常分支
4. 运行状态"错误"从历史累计(10000+)改为反映最近一次 tick 状态
安全加固:
- settings VALIDATORS 增加 isValidHost 主机名格式校验(imap/pop3/smtp 三处),
拒绝 URL/端口路径/空格等载荷,收窄 SSRF 面(纵深防御)
- 审计 entityType 命名统一(monitor_mail / monitor_wechat)
经 6 Task + 独立审查(零 CRITICAL/HIGH/MEDIUM),2 处逻辑经内存 sqlite 单测验证。
自动安全审查:SSRF 已加固,scan_history DELETE IDOR 为误报(无用户输入)。
|
2026-07-11 19:10:41 +08:00 |
gitadmin
|
c11e9fbc64
|
feat: 邮件扫描导入功能增强
- 新增 scan-emails/import API 端点,支持手动导入跳过的邮件为工单
- 前端添加'导入跳过的邮件为工单'按钮,扫描完成后可选择导入
- 添加扫描详情日志,记录无内容邮件的跳过原因
- 修复 scan_history 表 details_json 为空的问题
|
2026-07-10 13:22:55 +08:00 |
gitadmin
|
b6f0393450
|
feat: 邮件扫描功能增强与 Bug 修复
主要更新:
- 新增邮箱工单检测模块,支持扫描邮箱并自动导入工单
- 新增扫描取消机制,支持用户中途取消扫描任务
- 新增扫描历史持久化,保存到 scan_history 表
- 修复 IMAP 连接管理问题,连接失败时正确重置 client
- 修复邮件搜索范围,从今天改为最近 7 天
Bug 修复:
- B-1: 修复 getClientIP 传入 null 问题,正确获取客户端 IP
- B-2: 修复 toISOString() 违反规范,改用 formatBeijingTime
- B-3: 修复 refreshStatus/refreshErrors 缺少 .catch() 处理
- E-1: 添加 detailsTruncated 字段,超过 500 条时显示截断警告
- E-2: 添加 5 分钟整体超时控制,避免扫描长时间挂起
- E-3: 优化 refreshErrors 路径依赖,使用安全的属性合并
- E-4: scanning 状态从 scanState.status 派生,保持状态一致
- 修复超时状态被覆盖为 completed 的 Bug
新增文件:
- src/lib/monitor/scan-state.ts: 共享扫描状态管理
- src/app/api/monitor/scan-emails/route.ts: 邮件扫描 API
- src/app/api/monitor/scan-status/route.ts: 扫描状态查询 API
- src/app/api/monitor/scan-history/route.ts: 扫描历史查询 API
|
2026-07-10 11:49:16 +08:00 |
gitadmin
|
f507adfaa1
|
feat: 权限细化 tickets:edit/tickets:delete + 多 Webhook 推送组
- tickets:write 拆分为 tickets:edit(处理工单)和 tickets:delete(删除工单)
- 内置 operator 角色默认同时拥有两个权限
- 迁移脚本自动将已有角色的 tickets:write 替换为两个新权限
- 微信推送支持多个 webhook 推送组,每个可独立启用/禁用
- 每个推送组包含独立的运行参数(检查间隔、静默期)
- 旧格式 wechat.webhook_url 自动迁移为新数组格式
- worker 推送逻辑适配多 webhook(遍历所有启用的推送组)
|
2026-07-02 17:39:36 +08:00 |
gitadmin
|
b7b2b34a1f
|
feat: 审计日志 + 邮件监控 + 修复删除工单 bug
|
2026-06-24 15:43:18 +08:00 |