R21/R22: 补齐公网安全文档 试点观测与最小导入脚本
这个提交包含在:
@@ -66,3 +66,15 @@
|
||||
- [ ] 至少 1 次入职/离职/资产交接已演练
|
||||
- [ ] 全员已知晓每周周报和今日状态使用要求
|
||||
- [ ] 已建立连续 4 周观测记录方式(建议直接使用 `deploy/trialrun/observation-template.md`)
|
||||
|
||||
## R18-R22 上线补充检查项
|
||||
- [ ] `APP_ORIGIN` 已切到公网 HTTPS 域名
|
||||
- [ ] `COOKIE_SECURE=true`
|
||||
- [ ] `PUBLIC_SECURITY_HARDENING_ENABLED=true`
|
||||
- [ ] `OPENAPI_DOCS_ENABLED=false`
|
||||
- [ ] 企业微信应用已配置工作台入口和回调地址
|
||||
- [ ] 至少 1 个管理员已完成企微绑定
|
||||
- [ ] 项目模块、项目关联、合同台账已在试点环境可见
|
||||
- [ ] 涉密正文与附件未上传到 OA
|
||||
- [ ] 企业微信提醒仅包含脱敏标题 / 编号 / deeplink
|
||||
- [ ] 员工可从企业微信进入 `Portal`,并继续完成周报、待办、项目更新
|
||||
|
||||
@@ -13,6 +13,10 @@
|
||||
| 近 7 天登录人数 / 在职人数 | __ / __ | 全员每周至少登录 1 次 | __ |
|
||||
| 本周周报提交人数 / 在职人数 | __ / __ | 全员提交 | __ |
|
||||
| 今日状态更新人数 / 在职人数 | __ / __ | 全员工作日可见 | __ |
|
||||
| 近 7 天有任务更新的项目数 / 活跃项目数 | __ / __ | 项目每周持续更新 | __ |
|
||||
| 里程碑按期完成数 / 有截止里程碑数 | __ / __ | 核心项目可追踪 | __ |
|
||||
| 多平台重复录入次数 | __ | 趋近 0 | __ |
|
||||
| 表格替代率 | __% | 持续上升 | __ |
|
||||
| 在岗表是否已停止外部维护 | 是 / 否 | 是 | __ |
|
||||
| 离职交接表是否已停止外部维护 | 是 / 否 | 是 | __ |
|
||||
|
||||
|
||||
@@ -227,3 +227,45 @@ docker logs -f hyb-oa-trialrun-server
|
||||
- 建议统一使用 `deploy/trialrun/observation-template.md` 填写每周结论与阻塞。
|
||||
- 可执行 `cd server && npm run report:small-team-observation -- --out ../deploy/trialrun/observations/week-01.md` 导出当周快照,再补充人工结论。
|
||||
- 若连续两周无人使用某入口,考虑继续降级模块可见性。
|
||||
|
||||
## R18-R22 公网 + 企微 + 项目域上线补充
|
||||
|
||||
### A. 公网安全基线
|
||||
1. 为 OA 准备 HTTPS 域名并反向代理到 `server`。
|
||||
2. 在 `deploy/trialrun/.env` 中至少设置:
|
||||
- `APP_ORIGIN=https://oa.example.com`
|
||||
- `COOKIE_SECURE=true`
|
||||
- `PUBLIC_SECURITY_HARDENING_ENABLED=true`
|
||||
- `OPENAPI_DOCS_ENABLED=false`
|
||||
3. 重新执行:
|
||||
```bash
|
||||
docker compose -f deploy/trialrun/docker-compose.yml --env-file deploy/trialrun/.env up -d --build server
|
||||
```
|
||||
4. 验证浏览器和企业微信 WebView 都能正常登录、刷新 token 与退出登录。
|
||||
|
||||
### B. 企业微信工作台入口
|
||||
1. 在企业微信自建应用中配置工作台地址,默认落到:`https://oa.example.com/portal`。
|
||||
2. 在 `deploy/trialrun/.env` 中补齐:
|
||||
- `WECOM_ENABLED=true`
|
||||
- `WECOM_ENTRY_ENABLED=true`
|
||||
- `WECOM_CORP_ID`
|
||||
- `WECOM_AGENT_ID`
|
||||
- `WECOM_AGENT_SECRET`
|
||||
- `WECOM_OAUTH_ENABLED=true`
|
||||
- `WECOM_REDIRECT_URI=https://oa.example.com/api/auth/wecom/callback`
|
||||
- `WECOM_ALLOWED_RETURN_HOSTS=oa.example.com`
|
||||
3. 管理员先在个人设置页完成企微绑定,再拉试点用户验证免登。
|
||||
4. 企微消息只用于提醒与打开 OA,不新增第二套录入页面。
|
||||
|
||||
### C. 项目与合同最小导入
|
||||
1. 先整理项目台账、项目成员、里程碑、风险、合同登记 CSV。
|
||||
2. 按 `docs/migration-mapping.md` 的最小列准备字段。
|
||||
3. 先在测试环境做 dry-run,再在试点环境 apply。
|
||||
4. 涉密正文、附件、报价成本继续保留在内网资料库或离线档案。
|
||||
|
||||
### D. 试点验收新增观察点
|
||||
- 企业微信进入 OA 的成功率
|
||||
- 项目任务与里程碑更新率
|
||||
- 报销 / 差旅 / 周报挂项目覆盖率
|
||||
- 是否还存在第二套项目台账或 Excel 主表
|
||||
- 企业微信通知是否发生敏感字段泄露
|
||||
|
||||
在新工单中引用
屏蔽一个用户