78 lines
2.0 KiB
Markdown
78 lines
2.0 KiB
Markdown
|
|
# 前端 14 页深审 — Batch 2/3(Scripts / Credentials / Schedules / Retries / Commands)
|
|||
|
|
|
|||
|
|
**日期**: 2026-06-04
|
|||
|
|
**标准**: 8 步逐行
|
|||
|
|
|
|||
|
|
## 登记
|
|||
|
|
|
|||
|
|
| # | 文件 | 行数 N | Read 范围 |
|
|||
|
|
|---|------|--------|-----------|
|
|||
|
|
| 1 | `frontend/src/pages/ScriptsPage.vue` | 535 | 1–535 全文 |
|
|||
|
|
| 2 | `frontend/src/pages/CredentialsPage.vue` | 400 | 1–400 全文 |
|
|||
|
|
| 3 | `frontend/src/pages/SchedulesPage.vue` | 295 | 1–295 全文 |
|
|||
|
|
| 4 | `frontend/src/pages/RetriesPage.vue` | 191 | 1–191 全文 |
|
|||
|
|
| 5 | `frontend/src/pages/CommandsPage.vue` | 168 | 1–168 全文 |
|
|||
|
|
|
|||
|
|
## Step 3 — 逐文件 H
|
|||
|
|
|
|||
|
|
### ScriptsPage.vue (535)
|
|||
|
|
|
|||
|
|
| H | 行号 | 规则 |
|
|||
|
|
|---|------|------|
|
|||
|
|
| H1 | 358-390 | CRUD /scripts JWT |
|
|||
|
|
| H2 | 415-419 | exec script_id + server_ids |
|
|||
|
|
| H3 | 463-467 | quick command exec |
|
|||
|
|
| H4 | 527-528 | poll timer cleanup |
|
|||
|
|
|
|||
|
|
### CredentialsPage.vue (400)
|
|||
|
|
|
|||
|
|
| H | 行号 | 规则 |
|
|||
|
|
|---|------|------|
|
|||
|
|
| H5 | 253-255 | GET 列表无密码 |
|
|||
|
|
| H6 | 323-327 | encrypted_pw POST only |
|
|||
|
|
| H7 | 306,340,357 | 编辑留空不改 |
|
|||
|
|
| H8 | 346-347 | SSH 私钥提交时传输 |
|
|||
|
|
|
|||
|
|
### SchedulesPage.vue (295)
|
|||
|
|
|
|||
|
|
| H | 行号 | 规则 |
|
|||
|
|
|---|------|------|
|
|||
|
|
| H9 | 177 | cron 正则 `^[\d\s*/,\-]+$` |
|
|||
|
|
| H10 | 173-189 | buildSchedulePayload 校验 |
|
|||
|
|
| H11 | 263-267 | runNow → POST /sync/files |
|
|||
|
|
|
|||
|
|
### RetriesPage.vue (191)
|
|||
|
|
|
|||
|
|
| H | 行号 | 规则 |
|
|||
|
|
|---|------|------|
|
|||
|
|
| H12 | 129-134 | 客户端 filter(展示) |
|
|||
|
|
| H13 | 146,160 | retry/delete JWT |
|
|||
|
|
|
|||
|
|
### CommandsPage.vue (168)
|
|||
|
|
|
|||
|
|
| H | 行号 | 规则 |
|
|||
|
|
|---|------|------|
|
|||
|
|
| H14 | 139-153 | 只读 command-logs / ssh-sessions |
|
|||
|
|
| H15 | 50 | command 文本展示(后端已存) |
|
|||
|
|
|
|||
|
|
## Closure 表
|
|||
|
|
|
|||
|
|
| H | 判定 | 依据 |
|
|||
|
|
|---|------|------|
|
|||
|
|
| H1-H4 | SAFE/RISK | exec 走后端;H3 RISK 临时命令(后端 dangerous check) |
|
|||
|
|
| H5-H8 | SAFE | 无 localStorage;API 脱敏 |
|
|||
|
|
| H9-H11 | SAFE | cron/路径校验;sync JWT |
|
|||
|
|
| H12-H13 | SAFE | 只读+操作 JWT |
|
|||
|
|
| H14-H15 | SAFE | 只读审计视图 |
|
|||
|
|
|
|||
|
|
**len(H)=15, Closure=15**
|
|||
|
|
|
|||
|
|
## FINDING
|
|||
|
|
|
|||
|
|
无 P0/P1 新 FINDING。
|
|||
|
|
|
|||
|
|
## DoD
|
|||
|
|
|
|||
|
|
- [x] 5 页全文 Read
|
|||
|
|
- [x] len(H)==Closure
|