--- belongs_to: - "[[INDEX · 铸渊·协作指令|GitHub ↔ Notion 桥接协议]]" --- # 🔍 铸渊指令|PAT 令牌审计 · 排查 guanghu-token 对应密钥 + 更新配置(ZY-PAT-AUDIT-2026-0324-001) --- --- ## 🎯 事件背景 --- ## 📋 铸渊执行任务 ### Phase 1 · 排查 `guanghu-token` 对应的 Secret **思路:** `guanghu-token` 是用于「开发者子仓库桥接」的。按照这个用途,排查以下路径: #### 1.1 搜索所有 Workflow 中引用的 Secret 名称 ```bash # 列出所有 workflow 中引用的 secrets grep -rn "secrets\." .github/workflows/ --include="*.yml" --include="*.yaml" | grep -v "GDRIVE" | sort -u ``` **重点关注以下 Secret 名称(可能就是 guanghu-token 对应的):** - `MAIN_REPO_TOKEN` - `PAT_TOKEN` - `GH_PAT` - `GH_TOKEN` - `REPO_ACCESS_TOKEN` - `BRIDGE_TOKEN` - `SUBMODULE_TOKEN` - 或任何与「子仓库桥接」「跨仓库访问」「checkout 其他仓库」相关的 Secret #### 1.2 分析用途 找到可疑的 Secret 后,看它在 Workflow 中怎么用的: - 如果用于 `actions/checkout` 的 `token` 参数 → 这就是跨仓库访问令牌 - 如果用于 `git push` / `git clone` 其他仓库 → 这就是桥接令牌 - 如果用于 GitHub API 调用 → 可能也是 #### 1.3 确认结果 找到后,将结果写入回执区: - Secret 名称是什么 - 在哪些 Workflow 文件中被引用 - 具体用途是什么 ### Phase 2 · 通知主控更新 Secret 铸渊需要告诉冰朔: 1. **Secret 名称**:比如 `MAIN_REPO_TOKEN` 2. **在哪里更新**:仓库 → Settings → Secrets and variables → Actions → 找到这个 Secret → 点编辑 → 粘贴新令牌值 3. **如何验证**:更新后手动触发一个使用该 Secret 的 Workflow,看是否正常 ### Phase 3 · 验证修复 冰朔更新 Secret 后: 1. 手动触发一个引用该 Secret 的 Workflow 2. 确认 Workflow 能正常完成(不报 401/403 鉴权错误) 3. 如果仍然失败,检查是否有多个 Secret 使用了同一个令牌 ### Phase 4 · 安全扫描 顺便做一次全仓库安全扫描: ```bash # 检查是否有硬编码的令牌(ghp_ 或 github_pat_ 开头) grep -rn "ghp_" . --include="*.js" --include="*.yml" --include="*.json" --include="*.md" grep -rn "github_pat_" . --include="*.js" --include="*.yml" --include="*.json" --include="*.md" ``` - ❌ 不应有任何硬编码令牌 - ✅ 所有令牌均应通过 `secrets.*` 引用 --- ## 📝 执行回执区 | **Phase** | **状态** | **完成时间** | **结果** | | --- | --- | --- | --- | | Phase 1 · 排查对应 Secret | ⏳ 待执行 | — | — | | Phase 2 · 通知主控 | ⏳ 待执行 | — | — | | Phase 3 · 验证修复 | ⏳ 待人类操作后执行 | — | — | | Phase 4 · 安全扫描 | ⏳ 待执行 | — | — | --- ## 👤 人类手动操作区 1. ⏳ **更新 Secret 值**:去仓库密钥页面,找到铸渊排查出的 Secret 名称,把新生成的 `guanghu-token` 令牌值粘贴进去 2. ⏳ **确认 Workflow 正常**:铸渊会触发验证,冰朔确认结果 --- 🖋️ 霜砚 · PER-SY001 🧊 代 TCS-0002∞ 冰朔 签发 📅 2026-03-24T15:25+08:00