67 lines
2.6 KiB
Markdown
67 lines
2.6 KiB
Markdown
|
|
# 审计 — 移除浏览器 RDP 功能
|
||
|
|
|
||
|
|
**Changelog**: `docs/changelog/2026-06-10-rdp-feature-removal.md`
|
||
|
|
|
||
|
|
## 变更文件
|
||
|
|
|
||
|
|
| 文件 | 说明 |
|
||
|
|
|------|------|
|
||
|
|
| `server/api/rdp.py` | 删除 WS 隧道 |
|
||
|
|
| `server/api/rdp_hosts.py` | 删除 CRUD |
|
||
|
|
| `server/api/servers.py` | 删除 `/rdp-connect` 与 rdp 字段 |
|
||
|
|
| `server/api/schemas.py` | 删除 rdp_* 请求字段 |
|
||
|
|
| `server/main.py` | 注销 rdp 路由 |
|
||
|
|
| `server/config.py` | 删除 GUACD_* |
|
||
|
|
| `server/domain/models/__init__.py` | 删除 RdpHost |
|
||
|
|
| `server/infrastructure/database/migrations.py` | DROP rdp_hosts |
|
||
|
|
| `server/infrastructure/database/rdp_host_repo.py` | 删除 |
|
||
|
|
| `server/infrastructure/guacamole/__init__.py` | 删除 |
|
||
|
|
| `server/infrastructure/guacamole/protocol.py` | 删除 |
|
||
|
|
| `server/infrastructure/guacamole/tunnel.py` | 删除 |
|
||
|
|
| `server/infrastructure/guacamole/ws_tunnel.py` | 删除 |
|
||
|
|
| `server/utils/rdp_config.py` | 删除 |
|
||
|
|
| `docker-compose.yml` | 删除 guacd 服务 |
|
||
|
|
| `docker/docker-compose.prod.yml` | 删除 guacd 侧车 |
|
||
|
|
| `frontend/src/App.vue` | 移除侧栏 3389 |
|
||
|
|
| `frontend/src/router/index.ts` | 移除 /rdp 路由 |
|
||
|
|
| `frontend/src/composables/useRoutePrefetch.ts` | 移除预载 |
|
||
|
|
| `frontend/src/pages/RdpPage.vue` | 删除 |
|
||
|
|
| `frontend/src/components/rdp/RdpHostFormDialog.vue` | 删除 |
|
||
|
|
| `frontend/src/composables/rdp/useRdpSession.ts` | 删除 |
|
||
|
|
| `frontend/src/composables/rdp/useRdpHostList.ts` | 删除 |
|
||
|
|
| `frontend/src/types/guacamole.d.ts` | 删除 |
|
||
|
|
| `frontend/src/types/api.ts` | 删除 rdp 响应字段 |
|
||
|
|
| `frontend/src/api/index.ts` | 注释更新 |
|
||
|
|
| `frontend/package.json` | 移除 guacamole-common-js |
|
||
|
|
| `frontend/package-lock.json` | 锁文件同步 |
|
||
|
|
| `frontend/e2e/helpers.mjs` | 移除侧栏项 |
|
||
|
|
| `tests/test_rdp_hosts.py` | 删除 |
|
||
|
|
| `tests/test_rdp_config.py` | 删除 |
|
||
|
|
| `tests/test_guacamole_protocol.py` | 删除 |
|
||
|
|
|
||
|
|
## Step 3(规则扫描)
|
||
|
|
|
||
|
|
| 规则 | 结论 | 说明 |
|
||
|
|
|------|------|------|
|
||
|
|
| 攻击面 | PASS | 移除 WS 隧道与 guacd 依赖,减少暴露 |
|
||
|
|
| 密钥 | PASS | rdp_hosts 表 DROP;无新增凭据路径 |
|
||
|
|
| 鉴权 | N/A | 删除端点,无新 API |
|
||
|
|
| 静默吞错 | PASS | 无新增异常处理 |
|
||
|
|
| 依赖 | PASS | 移除 guacamole-common-js |
|
||
|
|
|
||
|
|
## Closure(走读)
|
||
|
|
|
||
|
|
| 文件 | 结论 |
|
||
|
|
|------|------|
|
||
|
|
| `main.py` | SAFE — 无残留 rdp import |
|
||
|
|
| `servers.py` | SAFE — 无 rdp_config 引用 |
|
||
|
|
| `migrations.py` | SAFE — DROP IF EXISTS 幂等 |
|
||
|
|
| `App.vue` | SAFE — 菜单项已移除 |
|
||
|
|
|
||
|
|
## DoD
|
||
|
|
|
||
|
|
- [x] changelog + 本审计
|
||
|
|
- [x] `local_verify` + frontend type-check
|
||
|
|
- [ ] 生产部署与健康检查
|
||
|
|
- [ ] 侧栏无「3389远程」
|